[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pcc-list
Subject:    Re: Memory ops support added to i386.
From:       Thorsten Glaser <tg () mirbsd ! de>
Date:       2008-10-25 21:43:29
Message-ID: Pine.BSM.4.64L.0810252141410.25238 () herc ! mirbsd ! org
[Download RAW message or body]

Anders Magnusson dixit:

>>   745 #if HAVE_EXPSTMT 
>>   746 #define utf_backch(c)   (!Flag(FUTFHACK) ? (c) - 1 : ({         \
>>   747         unsigned char *utf_backch_cp = (unsigned char *)(c);    \
>>   748         --utf_backch_cp;                                        \
>>   749         while ((*utf_backch_cp >= 0x80) &&                      \
>>   750             (*utf_backch_cp < 0xC0))                            \
>>   751                 --utf_backch_cp;                                \
>>   752         (__typeof__ (c))utf_backch_cp;                          \

>You're using typeof.  Don't do that.  ({ }) is supported, typeof not.

Ah, okay. But then, this one needs typeof… probably have to check…
hm this makes SUNWcc explode too, maybe it IS the typeof here…
I'll probably scan the code and change it so that typeof will be
no longer needed.

>(but while looking at it I realized that the evaluation order may be broken
>in ugly expressions like this, so I will give it another look).

☺ All to save a function call… or rather, several. This macro is
called in loops.

bye,
//mirabilos
-- 
Sometimes they [people] care too much: pretty printers [and syntax highligh-
ting, d.A.] mechanically produce pretty output that accentuates irrelevant
detail in the program, which is as sensible as putting all the prepositions
in English text in bold font.	-- Rob Pike in "Notes on Programming in C"

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic