http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46926
--- Comment #6 from Richard Guenther <rguenth at gcc dot gnu.org> 2010-12-16 15:24:23 UTC --- (In reply to comment #5) > That is what the built_in_decls vs. implicit_built_in_decls distinction is > for. > Except that for sincos, being a POSIX but not C function, > implicit_built_in_decls[BUILT_IN_SINCOS] is always NULL. Which is why we have TARGET_HAS_SINCOS ... I don't see an existing way to pass the requested information from the C frontend. We also can't avoid the transformation based on the function name as that function might be called by a user function named sincos. Maybe the _EXT builtins shouldn't be in built_in_decls as well unless -std=gnuXX is used. I suppose -fno-builtin-sincos does work as a workaround though.