diff options
Diffstat (limited to 'gcc/c-decl.c')
-rw-r--r-- | gcc/c-decl.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/gcc/c-decl.c b/gcc/c-decl.c index bf5d3ac6080..74ed9075d34 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -1981,13 +1981,14 @@ duplicate_decls (newdecl, olddecl, different_binding_level) } if (different_binding_level) { - /* Don't output a duplicate symbol for this declaration. */ - TREE_ASM_WRITTEN (newdecl) = 1; + /* Don't output a duplicate symbol or debugging information for this + declaration. */ + TREE_ASM_WRITTEN (newdecl) = DECL_IGNORED_P (newdecl) = 1; return 0; } /* Copy most of the decl-specific fields of NEWDECL into OLDDECL. - But preserve OLDdECL's DECL_UID. */ + But preserve OLDDECL's DECL_UID. */ { register unsigned olddecl_uid = DECL_UID (olddecl); @@ -5163,9 +5164,6 @@ grokdeclarator (declarator, declspecs, decl_context, initialized) if (! strcmp (IDENTIFIER_POINTER (declarator), "main")) warning ("cannot inline function `main'"); - else if (last && (TYPE_MAIN_VARIANT (TREE_VALUE (last)) - != void_type_node)) - warning ("inline declaration ignored for function with `...'"); else /* Assume that otherwise the function can be inlined. */ DECL_INLINE (decl) = 1; |