In searching around for but 80803 I discovered that pushdecl_top_level
appears unused in the C FE. grepping under the gcc directory I find
definitions and uses in the c++ FE and separate def/use in the fortran
FE. In the C FE I only find a definition.
AFAICT this is a stale function and comment about objective C, which
presumably uses the pushdecl hook these days?
bootstrapping shows no regression. (I don't think this explains the
80803 problem)
ok?
nathan
--
Nathan Sidwell
2017-05-18 Nathan Sidwell <nat...@acm.org>
* c-decl.c (pushdecl_top_level): Delete unused function.
Index: c/c-decl.c
===================================================================
--- c/c-decl.c (revision 248144)
+++ c/c-decl.c (working copy)
@@ -3088,34 +3088,6 @@ pushdecl (tree x)
}
return x;
}
-
-/* Record X as belonging to file scope.
- This is used only internally by the Objective-C front end,
- and is limited to its needs. duplicate_decls is not called;
- if there is any preexisting decl for this identifier, it is an ICE. */
-
-tree
-pushdecl_top_level (tree x)
-{
- tree name;
- bool nested = false;
- gcc_assert (VAR_P (x) || TREE_CODE (x) == CONST_DECL);
-
- name = DECL_NAME (x);
-
- gcc_assert (TREE_CODE (x) == CONST_DECL || !I_SYMBOL_BINDING (name));
-
- if (TREE_PUBLIC (x))
- {
- bind (name, x, external_scope, /*invisible=*/true, /*nested=*/false,
- UNKNOWN_LOCATION);
- nested = true;
- }
- if (file_scope)
- bind (name, x, file_scope, /*invisible=*/false, nested, UNKNOWN_LOCATION);
-
- return x;
-}
/* Issue a warning about implicit function declaration. ID is the function