* cp-tree.h (back_end_hook): New variable.
* decl2.c (back_end_hook): Define it.
(finish_file): If it's non-NULL, call it.
From-SVN: r28741
1999-08-17 Mark Mitchell <mark@codesourcery.com>
+ * cp-tree.h (back_end_hook): New variable.
+ * decl2.c (back_end_hook): Define it.
+ (finish_file): If it's non-NULL, call it.
+
* decl.c (add_decl_to_level): New function.
(push_local_binding): Use it.
(find_binding): Fix typo in comment.
extern int flag_access_control;
+/* If this variable is defined to a non-NULL value, it will be called
+ after the file has been completely parsed. The argument will be
+ the GLOBAL_NAMESPACE. */
+
+extern void (*back_end_hook) PROTO((tree));
+
\f
/* C++ language-specific tree codes. */
#define DEFTREECODE(SYM, NAME, TYPE, LENGTH) SYM,
int flag_permissive;
+/* If this variable is defined to a non-NULL value, it will be called
+ after the file has been completely parsed. */
+
+void (*back_end_hook) PROTO((tree));
+
/* Table of language-dependent -f options.
STRING is the option name. VARIABLE is the address of the variable.
ON_VALUE is the value to store in VARIABLE
if (flag_dump_translation_unit)
dump_node_to_file (global_namespace, flag_dump_translation_unit);
+ /* If there's some tool that wants to examine the entire translation
+ unit, let it do so now. */
+ if (back_end_hook)
+ (*back_end_hook) (global_namespace);
+
this_time = get_run_time ();
parse_time -= this_time - start_time;
varconst_time += this_time - start_time;