could you do a language-c release that uses 7.8 compat happy and alex?

Anthony Cowley acowley at seas.upenn.edu
Tue Apr 15 01:35:23 BST 2014


(Responses in-line)


On Mon, Apr 14, 2014 at 1:48 PM, Benedikt Huber
<benedikt.huber at gmail.com> wrote:
> Hi Anthony,
>
> I looked at your changes for Apple's attribute syntax using diff:
>
> - The value assigned to the attribute is silently discarded, right? As the
> result of the attribute parser is a CExpr, it seems more natural to return a
> CAssign statement that keeps both the left- and right-hand-side.

That is all correct, I just throw the value away because c2hs doesn't
use it at all. Your suggestion is definitely the right thing to do.
I'm not certain if returning a CAssign will cause any trouble to
downstream users, but I'm really not in any position to guess.

>
> - We should reference the specific extension addressed. A look at the clang
> parser shows that they use different special-purpose parsers for different
> attributes - in this case the "availability attribute", see
> http://llvm.org/releases/3.1/tools/clang/docs/LanguageExtensions.html#availability.
>
> - I think it is a ok to avoid custom attribute parsers and simply extend the
> grammar to allow assignments, as you did, although parsing versions as
> floating-point numbers is probably not 100% future proof ;)

Agreed.

>
> Would you mind preparing a patch, either against the darcs repo or the
> github mirror (http://github.com/visq/language-c forked from Carter's
> import)?

I'll try to get a PR together on github.

Anthony



>
> cheers, benedikt
>
>> Anthony Cowley <mailto:acowley at gmail.com>
>> 10 Apr 2014 20:54
>>
>> I encountered the problem in c2hs, at which point I discovered this issue
>> thread: https://github.com/haskell/c2hs/issues/57
>>
>> So it was a "won't fix" from c2hs due to language-c being unmaintained. It
>> looks like these sorts of conversations happened without looping Benedikt
>> in.
>>
>> It will be great to see this resolved, and though nobody asked, consider
>> this a preemptive +1 for giving the project some official presence on
>> github.
>>
>> Anthony
>>
>> On Apr 10, 2014, at 2:27 PM, Carter Schonwald <carter.schonwald at gmail.com
>> <mailto:carter.schonwald at gmail.com>> wrote:
>>
>> Carter Schonwald <mailto:carter.schonwald at gmail.com>
>> 10 Apr 2014 20:27
>>
>> huh, maybe anthony reached out the wrong way, i'll cc him now
>>
>>
>>
>> Benedikt Huber <mailto:benedikt.huber at gmail.com>
>> 10 Apr 2014 20:15
>>
>>
>>
>>> Carter Tazio Schonwald <mailto:carter.schonwald at gmail.com>
>>> 10 Apr 2014 19:31
>>> its looking like you didn't do it correctly, the happy and alex updates
>>> weren't in your path!,
>>
>> That was indeed the case, my bad. Apparently the instructions weren't 100%
>> foolproof ;)
>>>
>>> Anthony Cowley has been defacto making sure language-c works on OS X 10.9
>>> / modern clang for a while now with his wee branch, have you merged in his
>>> patches as yet? If not, why not?
>>
>> I did not know about the "wee" branch, because I was not aware of it. If I
>> remember correctly, Anthony Cowley neither notified me, nor the language-c
>> mailing list.
>> What do you mean by "make sure language-c works"? Patches for dealing with
>> Apple extensions used in the system headers? That would be great, I recently
>> switched to OS X 10.9 as well, and noticed the problem with non-standard
>> attribute syntax, for example.
>>>
>>> either way, 0.4.5 is needed :/
>>
>> Sure, I'll take care of updating, and look at the patches if I can find
>> them.
>> Again, thanks a lot for taking care of this issue.
>>
>> cheers, benedikt
>>>
>>>
>>>
>>> -Carter
>>>
>>>
>>> On Thursday, April 10, 2014 at 1:28 AM, Benedikt Huber wrote:
>>>
>>>
>>> Benedikt Huber <mailto:benedikt.huber at gmail.com>
>>> 10 Apr 2014 07:28
>>> Dear Carter,
>>> thanks for the notification! I followed your instructions and uploaded
>>> language-c-0.4.4.
>>> cheers, benedikt
>>> Carter Tazio Schonwald <mailto:carter.schonwald at gmail.com>
>>> 10 Apr 2014 02:58
>>> Hello!
>>> language-c on hackage wasn't prepped with the most recent happy and alex,
>>> so it can't build with 7.8
>>>
>>> if you do
>>> > cd language-c-directory
>>> > rm dist
>>> > cabal update ; cabal install happy alex
>>> >  #bump minor version in cabal file here
>>> > cabal sdist # to prep with new alex and happy
>>> > cabal upload
>>> > #happy times
>>>
>>> please let me know if ya'll can do that in the next few days, if not, i
>>> have admin acls on ahckage and can do it myself
>>> (but i'd rather not)
>>>
>>> -Carter
>>>
>>>
>> Carter Tazio Schonwald <mailto:carter.schonwald at gmail.com>
>> 10 Apr 2014 19:31
>> its looking like you didn't do it correctly, the happy and alex updates
>> weren't in your path!
>> I bet you dont have ~/.cabal/bin in your path.
>>
>> (ie the 0.4.4 version wasn't generated with the current happy / alex, i
>> had to cabal get language-c ; cd langauge-c-0.4.4 ; rm -rf dist ; cabal
>> build, to get it to build).
>>
>> tl;dr -- wasnt fresh happy and alex in your path .
>> if you do --version, you should get
>>
>> $ alex --version
>> Alex version 3.1.3, (c) 2003 Chris Dornan and Simon Marlow
>> $ happy --version
>> Happy Version 1.19.3 Copyright (c) 1993-1996 Andy Gill, Simon Marlow (c)
>> 1997-2005 Simon Marlow
>>
>> if they're properly up to date that should be the versions emmitted
>>
>>
>> Anthony Cowley has been defacto making sure language-c works on OS X 10.9
>> / modern clang for a while now with his wee branch, have you merged in his
>> patches as yet? If not, why not?
>>
>> either way, 0.4.5 is needed :/
>>
>>
>> -Carter
>>
>>
>> On Thursday, April 10, 2014 at 1:28 AM, Benedikt Huber wrote:
>>
>>
>> Benedikt Huber <mailto:benedikt.huber at gmail.com>
>> 10 Apr 2014 07:28
>> Dear Carter,
>> thanks for the notification! I followed your instructions and uploaded
>> language-c-0.4.4.
>> cheers, benedikt



More information about the Language-c mailing list