[RFC] Eliminate NESTED_ATTR_FUNC

Paolo Bonzini bonzini@gnu.org
Thu Sep 3 15:54:00 GMT 2009


>> #include<stdio.h>
>>
>> void foo (int a, int b, void (*hook) (int aa, int bb, int cc))
>> {
>>   b += a;
>>   hook (a, b, a + b);
>> }
>>
>> void qq (int a)
>> {
>>   auto void q1 (int aa, int bb, int cc);
>>   void q1 (int aa, int bb, int cc)
>>     {
>>       printf ("%d %d %d\n", a, aa + bb, cc);
>>     }
>>
>>   foo (a, a + 1, q1);
>> }
>>
>> int main()
>> {
>>   qq (10);
>> }
>>
>> Compile with:
>> gcc -m32 -mregparm=3 -Os test.c
>>
>> ./a.out
>> 10 31 -6674368

Ok, this was the only important part of the message to us GCC hackers. :-)

Can you please report a bug in bugzilla, saying which versions work and 
which fail?  Also can you write in the report what was your analysis 
with respect to regparm?

Thanks!

Paolo



More information about the Gcc mailing list