This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ARM and __attribute__ long_call error


Is there anything tricky that prevents an easy implementation?


Yes, internally the routine that's doing the comparison can't
distinguish declarations from definitions.  We need to diagnose

Is the routine arm_comp_type_attributes() in gcc/config/arm/arm.c by any chance?


conflicting declarations, and also where the *definition* is attributed
but the declaration was not.

How can you attribute the definition? This results in syntax error.


void pig(void) __attribute__ ((long_call)
{
}

We could relax the rules to allow your case, but only at the expense of
losing checking for the above scenarios.  I'm not convinced that is a
good trade-off.

I don't need changes to the existing rules, just to find out how attribute long_call is _supposed_ to be used :). I see something similar exists for the RS6000 back-end.
Do these not work but are added and waiting for a future implementation?


thanks
Jani


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]