[cfe-dev] Parser Stmt/Expr Owning Pointer
Chris Lattner
clattner at apple.com
Tue Dec 9 11:03:13 PST 2008
On Dec 9, 2008, at 11:01 AM, Sebastian Redl wrote:
> Chris Lattner wrote:
>> On Dec 9, 2008, at 1:53 AM, Sebastian Redl wrote:
>>>> widely deployed in vendor compilers. :( It sucks to have to
>>>> write portable code.
>>> Fortunately, rvalue references are the first thing any compiler
>>> implements from C++0x, apparently. GCC 4.3+ supports them,
>>> CodeWarrior supports them, Visual Studio 2010 supports them. They
>>> will definitely be the first thing that can be used portably.
>>
>> Excellent, they are one of my favorite features of '0x.
> Yes, mine too. So deceptively simple, so far-reaching in consequence.
>>> I'm on a Linux system. Surely there must be some huge system
>>> headers out there. But in my search, I can't find anything. A
>>> combination of gtk.h, ncurses.h and WINE's windows.h merely yields
>>> 2.6 MB.
>>
>> Gosh you guys have anemic headers :). Here's a dump of carbon.h on
>> a leopard system with -E -P, it should work for you as a C parser
>> test:
>>
>> http://nondot.org/sabre/carbon.i.gz
>> and here's cocoa.h, an objc testcase:
>> http://nondot.org/sabre/Cocoa.mi.gz
> Thanks, but I get several errors like this:
>
> carbon.i:965:33: error: typedef redefinition with different types
> ('typeof(sizeof(int))' vs '__darwin_size_t')
> typedef __typeof__(sizeof(int)) size_t;
> ^
> carbon.i:157:25: note: previous definition is here
> typedef __darwin_size_t size_t;
> ^
>
> Both with default arch (-triple=x86_64-linux-gnu) and forcing 32-bit
> (-triple=i686-linux-gnu).
Try building with -triple=i686-apple-darwin9. This is the problem
with stripping out macro expansions :(
-Chris
More information about the cfe-dev
mailing list