------- Additional Comments From jsm at polyomino dot org dot uk 2004-10-27 15:39 ------- Subject: Re: New: Disable special handling of functions with --freestanding
On Wed, 27 Oct 2004, alex dot neyman at auriga dot ru wrote: > - different code is generated for function issuing the setjmp() call and any > other function call in freestanding env (actually, the code for a function > using setjmp() is the same both in hosted and freestanding env). The bug would be that special_function_p checks function names at all. We have at least three different methods of applying special properties to functions based on their names: built-in functions with attributes, special_function_f and cp/cfns.gperf. We should subsume the latter two in the first. See projects/beginner.html. The special handling may be needed to generate correct code in some cases such as setjmp, so disabling the special handling without first having an attribute allowing it to be reenabled for particular declarations is not a good solution. I would advise following the usual procedures for contributing (see contribute.html) to discuss the issues on gcc-patches and work through getting a patch for bug 14411 into GCC. That is necessary to solve the issues for bug 14411. It would be best to do a series of patches, one for each attribute (discussed and revised as necessary) followed by one replacing the special_function_p handling with use of that attribute (including fixincludes work as necessary). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18180