Commit 39292e25 by Eric Botcazou Committed by Eric Botcazou

c-ada-spec.h (decl_sloc): Delete.

c-family/
	* c-ada-spec.h (decl_sloc): Delete.
	* c-ada-spec.c (decl_sloc): Make static.
c/
	* c-decl.c (collect_source_ref_cb): Delete.
	(for_each_global_decl): Rename into...
	(collect_source_refs): ...this.  Call collect_source_ref directly.
	(c_parse_final_cleanups): Always call collect_source_ref on the main
	input filename.
cp/
	* decl2.c (c_parse_final_cleanups): Always call collect_source_ref on
	the main input filename.

From-SVN: r279670
parent 02e85427
2019-12-20 Eric Botcazou <ebotcazou@adacore.com>
* c-ada-spec.h (decl_sloc): Delete.
* c-ada-spec.c (decl_sloc): Make static.
2019-12-19 Julian Brown <julian@codesourcery.com> 2019-12-19 Julian Brown <julian@codesourcery.com>
* c-common.h (c_omp_map_clause_name): Add prototype. * c-common.h (c_omp_map_clause_name): Add prototype.
......
...@@ -630,7 +630,7 @@ static const char *current_source_file; ...@@ -630,7 +630,7 @@ static const char *current_source_file;
/* Return sloc of DECL, using sloc of last field if LAST is true. */ /* Return sloc of DECL, using sloc of last field if LAST is true. */
location_t static location_t
decl_sloc (const_tree decl, bool last) decl_sloc (const_tree decl, bool last)
{ {
tree field; tree field;
......
...@@ -36,7 +36,6 @@ enum cpp_operation { ...@@ -36,7 +36,6 @@ enum cpp_operation {
IS_TRIVIAL IS_TRIVIAL
}; };
extern location_t decl_sloc (const_tree, bool);
extern void collect_ada_nodes (tree, const char *); extern void collect_ada_nodes (tree, const char *);
extern void collect_source_ref (const char *); extern void collect_source_ref (const char *);
extern void dump_ada_specs (void (*)(const char *), extern void dump_ada_specs (void (*)(const char *),
......
2019-12-20 Eric Botcazou <ebotcazou@adacore.com>
* c-decl.c (collect_source_ref_cb): Delete.
(for_each_global_decl): Rename into...
(collect_source_refs): ...this. Call collect_source_ref directly.
(c_parse_final_cleanups): Always call collect_source_ref on the main
input filename.
2019-12-19 Julian Brown <julian@codesourcery.com> 2019-12-19 Julian Brown <julian@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com> Cesar Philippidis <cesar@codesourcery.com>
......
...@@ -11787,15 +11787,6 @@ c_write_global_declarations_1 (tree globals) ...@@ -11787,15 +11787,6 @@ c_write_global_declarations_1 (tree globals)
while (reconsider); while (reconsider);
} }
/* Callback to collect a source_ref from a DECL. */
static void
collect_source_ref_cb (tree decl)
{
if (!DECL_IS_BUILTIN (decl))
collect_source_ref (LOCATION_FILE (decl_sloc (decl, false)));
}
/* Preserve the external declarations scope across a garbage collect. */ /* Preserve the external declarations scope across a garbage collect. */
static GTY(()) tree ext_block; static GTY(()) tree ext_block;
...@@ -11813,10 +11804,10 @@ collect_all_refs (const char *source_file) ...@@ -11813,10 +11804,10 @@ collect_all_refs (const char *source_file)
collect_ada_nodes (BLOCK_VARS (ext_block), source_file); collect_ada_nodes (BLOCK_VARS (ext_block), source_file);
} }
/* Iterate over all global declarations and call CALLBACK. */ /* Collect source file references at global level. */
static void static void
for_each_global_decl (void (*callback) (tree decl)) collect_source_refs (void)
{ {
tree t; tree t;
tree decls; tree decls;
...@@ -11827,11 +11818,13 @@ for_each_global_decl (void (*callback) (tree decl)) ...@@ -11827,11 +11818,13 @@ for_each_global_decl (void (*callback) (tree decl))
{ {
decls = DECL_INITIAL (t); decls = DECL_INITIAL (t);
for (decl = BLOCK_VARS (decls); decl; decl = TREE_CHAIN (decl)) for (decl = BLOCK_VARS (decls); decl; decl = TREE_CHAIN (decl))
callback (decl); if (!DECL_IS_BUILTIN (decl))
collect_source_ref (DECL_SOURCE_FILE (decl));
} }
for (decl = BLOCK_VARS (ext_block); decl; decl = TREE_CHAIN (decl)) for (decl = BLOCK_VARS (ext_block); decl; decl = TREE_CHAIN (decl))
callback (decl); if (!DECL_IS_BUILTIN (decl))
collect_source_ref (DECL_SOURCE_FILE (decl));
} }
/* Perform any final parser cleanups and generate initial debugging /* Perform any final parser cleanups and generate initial debugging
...@@ -11865,10 +11858,9 @@ c_parse_final_cleanups (void) ...@@ -11865,10 +11858,9 @@ c_parse_final_cleanups (void)
if (flag_dump_ada_spec || flag_dump_ada_spec_slim) if (flag_dump_ada_spec || flag_dump_ada_spec_slim)
{ {
/* Build a table of files to generate specs for */ /* Build a table of files to generate specs for */
if (flag_dump_ada_spec_slim) collect_source_ref (main_input_filename);
collect_source_ref (main_input_filename); if (!flag_dump_ada_spec_slim)
else collect_source_refs ();
for_each_global_decl (collect_source_ref_cb);
dump_ada_specs (collect_all_refs, NULL); dump_ada_specs (collect_all_refs, NULL);
} }
......
2019-12-20 Eric Botcazou <ebotcazou@adacore.com>
* decl2.c (c_parse_final_cleanups): Always call collect_source_ref on
the main input filename.
2019-12-19 Julian Brown <julian@codesourcery.com> 2019-12-19 Julian Brown <julian@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com> Cesar Philippidis <cesar@codesourcery.com>
......
...@@ -4816,9 +4816,8 @@ c_parse_final_cleanups (void) ...@@ -4816,9 +4816,8 @@ c_parse_final_cleanups (void)
/* Handle -fdump-ada-spec[-slim] */ /* Handle -fdump-ada-spec[-slim] */
if (flag_dump_ada_spec || flag_dump_ada_spec_slim) if (flag_dump_ada_spec || flag_dump_ada_spec_slim)
{ {
if (flag_dump_ada_spec_slim) collect_source_ref (main_input_filename);
collect_source_ref (main_input_filename); if (!flag_dump_ada_spec_slim)
else
collect_source_refs (global_namespace); collect_source_refs (global_namespace);
dump_ada_specs (collect_all_refs, cpp_check); dump_ada_specs (collect_all_refs, cpp_check);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment