summaryrefslogtreecommitdiffstats
path: root/gcc/langhooks.h
diff options
context:
space:
mode:
authorneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2003-03-08 21:12:26 +0000
committerneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2003-03-08 21:12:26 +0000
commit03bde6017ce5581fcb73761fa8c5210ee12631aa (patch)
tree6dbda9aef13aa04d7c15b46cb0bda16747482b8d /gcc/langhooks.h
parent0d409008b0302a0de479fbe32900561a70bd37d5 (diff)
downloadppe42-gcc-03bde6017ce5581fcb73761fa8c5210ee12631aa.tar.gz
ppe42-gcc-03bde6017ce5581fcb73761fa8c5210ee12631aa.zip
* c-common.h (c_common_init, c_common_post_options): Update.
* c-objc-common.c (c_objc_common_init): Update for new prototype. * c-opts.c (saved_lineno): New. (c_common_post_options, c_common_init): Update prototypes, move call to cpp_read_main_file from latter to former. * c-tree.h (c_ojbc_common_init): Update. * langhooks-def.h (lhd_post_options): New. (LANG_HOOKS_INIT, LANG_HOOKS_POST_OPTIONS): Update. * langhooks.c (lhd_post_options): New. * langhooks.h (struct lang_hooks): Update post_options and init hooks. * toplev.c (no_backend): New. (process_options): Call post_options hook and set main_input_filename and input_filename here. (lang_dependent_init, do_compile): post_options hook moved to process_options. * objc/objc-act.c (objc_init): Update prototype. * objc/objc-act.h (objc_init): Update prototype. ada: * misc.c (gnat_init): Update for new prototype. cp: * cp-tree.h (cxx_init): Update prototype. * lex.c (cxx_init): Similarly. f: * com.c (ffe_init): Update prototype; move code to ffe_post_options. (ffe_post_options): New. java: * lang.c (java_init): Update prototype, move code to java_post_options. (java_post_options): Similarly. treelang: * tree1.c (in_fname): Fix type. (treelang_init): Update prototype and use of in_fname. * treelang.h (in_fname): Fix type. * treetree.c (tree_code_if_start, tree_code_if_else, tree_code_if_end, tree_code_create_function_prototype, tree_code_create_function_initial, tree_code_create_funciton_wrapup, tree_code_create_variable, tree_code_output_expression_statement) : Fix prototypes and use of filenames. * treetree.h: Similarly. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@64001 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/langhooks.h')
-rw-r--r--gcc/langhooks.h25
1 files changed, 10 insertions, 15 deletions
diff --git a/gcc/langhooks.h b/gcc/langhooks.h
index 4e2685b8146..bf9826ca44c 100644
--- a/gcc/langhooks.h
+++ b/gcc/langhooks.h
@@ -207,25 +207,20 @@ struct lang_hooks
done for this option. */
int (*decode_option) PARAMS ((int, char **));
- /* Called when all command line options have been parsed. Should do
- any required consistency checks, modifications etc. Complex
- initialization should be left to the "init" callback, since GC
- and the identifier hashes are set up between now and then.
+ /* Called when all command line options have been parsed to allow
+ further processing and initialization
- Should return zero unless the compiler back-end does not need to
- be initialized, such as with the -E option.
+ Should return true to indicate that a compiler back-end is
+ not required, such as with the -E option.
If errorcount is nonzero after this call the compiler exits
immediately and the finish hook is not called. */
- bool (*post_options) PARAMS ((void));
-
- /* Called after post_options, to initialize the front end. The main
- input filename is passed, which may be NULL; the front end should
- return the original filename (e.g. foo.i -> foo.c). Return NULL
- to indicate a serious error of some sort; in that case no
- compilation is performed, and the finish hook is called
- immediately. */
- const char * (*init) PARAMS ((const char *));
+ bool (*post_options) PARAMS ((const char **));
+
+ /* Called after post_options to initialize the front end. Return
+ false to indicate that no further compilation be performed, in
+ which case the finish hook is called immediately. */
+ bool (*init) PARAMS ((void));
/* Called at the end of compilation, as a finalizer. */
void (*finish) PARAMS ((void));
OpenPOWER on IntegriCloud