http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60002
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2014-01-31 Ever confirmed|0 |1 --- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> --- So, either we do something like: --- gcc/cgraphclones.c.jj 2014-01-03 11:40:46.000000000 +0100 +++ gcc/cgraphclones.c 2014-01-31 14:34:59.734148380 +0100 @@ -390,6 +390,9 @@ build_function_decl_skip_args (tree orig DECL_BUILT_IN_CLASS (new_decl) = NOT_BUILT_IN; DECL_FUNCTION_CODE (new_decl) = (enum built_in_function) 0; } + /* The FE might have information and assumptions about the other + arguments. */ + DECL_LANG_SPECIFIC (new_decl) = NULL; return new_decl; } (works on the testcase, otherwise untested), or add some language hook where the FE will have a chance to adjust it's DECL_LANG_SPECIFIC based on which arguments are being removed.