summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2010-05-27 20:16:07 +0000
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2010-05-27 20:16:07 +0000
commit852f689eb9b7f6d7aafc2f72007e96129ac9bd45 (patch)
tree7e6bdfc2594989da541ce8acef151a526222f9a7 /gcc
parent15a007df5edd3e7f2c80d11b4d01d1ff66c63f3a (diff)
downloadgcc-852f689eb9b7f6d7aafc2f72007e96129ac9bd45.tar.gz
* diagnostic-core.h: New. Contents moved from diagnostic.h and
toplev.h. * diagnostic.c: Don't include toplev.h. (progname): Define. Moved from toplev.c. (seen_error): New function. * diagnostic.h: Include diagnostic-core.h. (diagnostic_t, emit_diagnostic): Don't declare here. * toplev.c (progname): Move to toplev.c. (emit_debug_global_declarations, compile_file, finalize, do_compile, toplev_main): Use seen_error. * toplev.h: Include diagnostic-core.h. (trim_filename, GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG, internal_error, warning, warning_at, error, error_n, error_at, fatal_error, pedwarn, permerror, sorry, inform, inform_n, verbatim, fnotice, progname): Move to diagnostic-core.h. * builtins.c: Include diagnostic-core.h instead of diagnostic.h. (expand_builtin_expect): Use seen_error. * c-decl.c: Include diagnostic-core.h instead of diagnostic.h. (c_make_fname_decl, c_write_global_declarations): Use seen_error. * c-format.c: Include diagnostic-core.h instead of diagnostic.h. * c-gimplify.c: Include diagnostic-core.h instead of diagnostic.h. * c-lang.c: Include diagnostic-core.h instead of diagnostic.h. * c-lex.c (c_lex_with_flags, interpret_float): Don't increment errorcount for errors. * c-opts.c (c_common_finish): Use seen_error. * cgraph.c: Include diagnostic-core.h instead of diagnostic.h. * cgraphunit.c (verify_cgraph_node, verify_cgraph, cgraph_output_pending_asms, cgraph_optimize): Use seen_error. * coverage.c: Include diagnostic-core.h instead of diagnostic.h. (get_coverage_counts): Use seen_error. * dwarf2out.c (dwarf2out_finish): Use seen_error. * gimplify.c (gimplify_var_or_parm_decl, gimple_push_cleanup, gimplify_body): Use seen_error. * ipa-inline.c (cgraph_early_inlining): Use seen_error. * ipa-pure-const.c (gate_pure_const): Use seen_error. * ipa-reference.c (gate_reference): Use seen_error. * jump.c: Include diagnostic-core.h instead of diagnostic.h. * lambda-code.c: Include diagnostic-core.h instead of diagnostic.h. * lto-cgraph.c: Include diagnostic-core.h instead of diagnostic.h. * lto-compress.c: Include diagnostic-core.h instead of diagnostic.h. * lto-section-in.c: Include diagnostic-core.h instead of diagnostic.h. * lto-streamer-out.c: Include diagnostic-core.h instead of diagnostic.h. * lto-streamer.c: Include diagnostic-core.h instead of diagnostic.h. (gate_lto_out): Use seen_error. * matrix-reorg.c: Include diagnostic-core.h instead of diagnostic.h. * omega.c: Include diagnostic-core.h instead of diagnostic.h. * omp-low.c: Include diagnostic-core.h instead of diagnostic.h. (gate_expand_omp, lower_omp_1): Use seen_error. * passes.c: Include diagnostic-core.h instead of diagnostic.h. (rest_of_decl_compilation, rest_of_type_compilation, gate_rest_of_compilation, ipa_write_summaries): Use seen_error. * tree-cfg.c (label_to_block_fn): Use seen_error. * tree-inline.c (optimize_inline_calls): Use seen_error. * tree-mudflap.c (mudflap_finish_file): Use seen_error. * tree-optimize.c (gate_all_optimizations, gate_all_early_local_passes, gate_all_early_optimizations): Use seen_error. * tree-ssa-structalias.c (gate_ipa_pta): Use seen_error. * varpool.c: Include diagnostic-core.h instead of diagnostic.h. (varpool_remove_unreferenced_decls, varpool_assemble_pending_decls): Use seen_error. * Makefile.in (DIAGNOSTIC_CORE_H): Define. (TOPLEV_H, DIAGNOSTIC_H): Update. (c-decl.o, c-lang.o, c-format.o, lto-compress.o, lto-cgraph.o, lto-streamer-out.o, lto-section-in.o, lto-streamer.o, c-gimplify.o, omp-low.o, omega.o, diagnostic.o, passes.o, builtins.o, jump.o, cgraph.o, varpool.o, matrix-reorg.o, coverage.o, lambda-code.o): Update dependencies. cp: * call.c: Include diagnostic-core.h instead of diagnostic.h. * cp-lang.c: Don't include diagnostic.h * name-lookup.c: Include diagnostic-core.h instead of diagnostic.h. (cp_emit_debug_info_for_using): Use seen_error. * optimize.c: Include diagnostic-core.h instead of diagnostic.h. * parser.c: Include diagnostic-core.h instead of diagnostic.h. * pt.c (iterative_hash_template_arg): Use seen_error. * repo.c: Include diagnostic-core.h instead of diagnostic.h. * typeck2.c: Include diagnostic-core.h instead of diagnostic.h. * Make-lang.in (cp/cp-lang.o, cp/typeck2.o, cp/call.o, cp/repo.o, cp/optimize.o, cp/parser.o, cp/name-lookup.o): Update dependencies. lto: * lto.c: Include diagnostic-core.h instead of diagnostic.h. (read_cgraph_and_symbols, lto_main): Use seen_error. * Make-lang.in (lto/lto.o): Update dependencies. objc: * objc-act.c: Include diagnostic-core.h instead of diagnostic.h. * Make-lang.in (objc/objc-act.o): Update dependencies. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159947 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog78
-rw-r--r--gcc/Makefile.in58
-rw-r--r--gcc/builtins.c4
-rw-r--r--gcc/c-decl.c6
-rw-r--r--gcc/c-format.c5
-rw-r--r--gcc/c-gimplify.c4
-rw-r--r--gcc/c-lang.c4
-rw-r--r--gcc/c-lex.c4
-rw-r--r--gcc/c-opts.c2
-rw-r--r--gcc/cgraph.c2
-rw-r--r--gcc/cgraphunit.c14
-rw-r--r--gcc/coverage.c8
-rw-r--r--gcc/cp/ChangeLog16
-rw-r--r--gcc/cp/Make-lang.in16
-rw-r--r--gcc/cp/call.c4
-rw-r--r--gcc/cp/cp-lang.c4
-rw-r--r--gcc/cp/name-lookup.c4
-rw-r--r--gcc/cp/optimize.c6
-rw-r--r--gcc/cp/parser.c2
-rw-r--r--gcc/cp/pt.c2
-rw-r--r--gcc/cp/repo.c6
-rw-r--r--gcc/cp/typeck2.c4
-rw-r--r--gcc/diagnostic-core.h87
-rw-r--r--gcc/diagnostic.c13
-rw-r--r--gcc/diagnostic.h12
-rw-r--r--gcc/dwarf2out.c2
-rw-r--r--gcc/gimplify.c6
-rw-r--r--gcc/ipa-inline.c2
-rw-r--r--gcc/ipa-pure-const.c2
-rw-r--r--gcc/ipa-reference.c2
-rw-r--r--gcc/jump.c2
-rw-r--r--gcc/lambda-code.c2
-rw-r--r--gcc/lto-cgraph.c4
-rw-r--r--gcc/lto-compress.c4
-rw-r--r--gcc/lto-section-in.c4
-rw-r--r--gcc/lto-streamer-out.c2
-rw-r--r--gcc/lto-streamer.c4
-rw-r--r--gcc/lto/ChangeLog6
-rw-r--r--gcc/lto/Make-lang.in2
-rw-r--r--gcc/lto/lto.c6
-rw-r--r--gcc/matrix-reorg.c4
-rw-r--r--gcc/objc/ChangeLog5
-rw-r--r--gcc/objc/Make-lang.in2
-rw-r--r--gcc/objc/objc-act.c2
-rw-r--r--gcc/omega.c6
-rw-r--r--gcc/omp-low.c6
-rw-r--r--gcc/passes.c10
-rw-r--r--gcc/toplev.c14
-rw-r--r--gcc/toplev.h45
-rw-r--r--gcc/tree-cfg.c2
-rw-r--r--gcc/tree-inline.c2
-rw-r--r--gcc/tree-mudflap.c4
-rw-r--r--gcc/tree-optimize.c8
-rw-r--r--gcc/tree-ssa-structalias.c2
-rw-r--r--gcc/varpool.c6
55 files changed, 340 insertions, 193 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index af844b58376..3576b0f1aaf 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,81 @@
+2010-05-27 Joseph Myers <joseph@codesourcery.com>
+
+ * diagnostic-core.h: New. Contents moved from diagnostic.h and
+ toplev.h.
+ * diagnostic.c: Don't include toplev.h.
+ (progname): Define. Moved from toplev.c.
+ (seen_error): New function.
+ * diagnostic.h: Include diagnostic-core.h.
+ (diagnostic_t, emit_diagnostic): Don't declare here.
+ * toplev.c (progname): Move to toplev.c.
+ (emit_debug_global_declarations, compile_file, finalize,
+ do_compile, toplev_main): Use seen_error.
+ * toplev.h: Include diagnostic-core.h.
+ (trim_filename, GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG,
+ internal_error, warning, warning_at, error, error_n, error_at,
+ fatal_error, pedwarn, permerror, sorry, inform, inform_n,
+ verbatim, fnotice, progname): Move to diagnostic-core.h.
+ * builtins.c: Include diagnostic-core.h instead of diagnostic.h.
+ (expand_builtin_expect): Use seen_error.
+ * c-decl.c: Include diagnostic-core.h instead of diagnostic.h.
+ (c_make_fname_decl, c_write_global_declarations): Use seen_error.
+ * c-format.c: Include diagnostic-core.h instead of diagnostic.h.
+ * c-gimplify.c: Include diagnostic-core.h instead of diagnostic.h.
+ * c-lang.c: Include diagnostic-core.h instead of diagnostic.h.
+ * c-lex.c (c_lex_with_flags, interpret_float): Don't increment
+ errorcount for errors.
+ * c-opts.c (c_common_finish): Use seen_error.
+ * cgraph.c: Include diagnostic-core.h instead of diagnostic.h.
+ * cgraphunit.c (verify_cgraph_node, verify_cgraph,
+ cgraph_output_pending_asms, cgraph_optimize): Use seen_error.
+ * coverage.c: Include diagnostic-core.h instead of diagnostic.h.
+ (get_coverage_counts): Use seen_error.
+ * dwarf2out.c (dwarf2out_finish): Use seen_error.
+ * gimplify.c (gimplify_var_or_parm_decl, gimple_push_cleanup,
+ gimplify_body): Use seen_error.
+ * ipa-inline.c (cgraph_early_inlining): Use seen_error.
+ * ipa-pure-const.c (gate_pure_const): Use seen_error.
+ * ipa-reference.c (gate_reference): Use seen_error.
+ * jump.c: Include diagnostic-core.h instead of diagnostic.h.
+ * lambda-code.c: Include diagnostic-core.h instead of
+ diagnostic.h.
+ * lto-cgraph.c: Include diagnostic-core.h instead of diagnostic.h.
+ * lto-compress.c: Include diagnostic-core.h instead of
+ diagnostic.h.
+ * lto-section-in.c: Include diagnostic-core.h instead of
+ diagnostic.h.
+ * lto-streamer-out.c: Include diagnostic-core.h instead of
+ diagnostic.h.
+ * lto-streamer.c: Include diagnostic-core.h instead of
+ diagnostic.h.
+ (gate_lto_out): Use seen_error.
+ * matrix-reorg.c: Include diagnostic-core.h instead of
+ diagnostic.h.
+ * omega.c: Include diagnostic-core.h instead of diagnostic.h.
+ * omp-low.c: Include diagnostic-core.h instead of diagnostic.h.
+ (gate_expand_omp, lower_omp_1): Use seen_error.
+ * passes.c: Include diagnostic-core.h instead of diagnostic.h.
+ (rest_of_decl_compilation, rest_of_type_compilation,
+ gate_rest_of_compilation, ipa_write_summaries): Use seen_error.
+ * tree-cfg.c (label_to_block_fn): Use seen_error.
+ * tree-inline.c (optimize_inline_calls): Use seen_error.
+ * tree-mudflap.c (mudflap_finish_file): Use
+ seen_error.
+ * tree-optimize.c (gate_all_optimizations,
+ gate_all_early_local_passes, gate_all_early_optimizations): Use
+ seen_error.
+ * tree-ssa-structalias.c (gate_ipa_pta): Use seen_error.
+ * varpool.c: Include diagnostic-core.h instead of diagnostic.h.
+ (varpool_remove_unreferenced_decls,
+ varpool_assemble_pending_decls): Use seen_error.
+ * Makefile.in (DIAGNOSTIC_CORE_H): Define.
+ (TOPLEV_H, DIAGNOSTIC_H): Update.
+ (c-decl.o, c-lang.o, c-format.o, lto-compress.o, lto-cgraph.o,
+ lto-streamer-out.o, lto-section-in.o, lto-streamer.o,
+ c-gimplify.o, omp-low.o, omega.o, diagnostic.o, passes.o,
+ builtins.o, jump.o, cgraph.o, varpool.o, matrix-reorg.o,
+ coverage.o, lambda-code.o): Update dependencies.
+
2010-05-25 Dodji Seketeli <dodji@redhat.com>
PR c++/44188
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index 677b2d07cf3..20939572287 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -859,7 +859,7 @@ endif
# Shorthand variables for dependency lists.
EXCEPT_H = except.h $(HASHTAB_H) vecprim.h vecir.h
-TOPLEV_H = toplev.h $(INPUT_H) bversion.h
+TOPLEV_H = toplev.h $(INPUT_H) bversion.h $(DIAGNOSTIC_CORE_H)
TARGET_H = $(TM_H) target.h insn-modes.h
MACHMODE_H = machmode.h mode-classes.def insn-modes.h
HOOKS_H = hooks.h $(MACHMODE_H)
@@ -942,7 +942,8 @@ TREE_SSA_LIVE_H = tree-ssa-live.h $(PARTITION_H) vecprim.h
TREE_VECTORIZER_H = tree-vectorizer.h $(TREE_DATA_REF_H)
SSAEXPAND_H = ssaexpand.h $(TREE_SSA_LIVE_H)
PRETTY_PRINT_H = pretty-print.h $(INPUT_H) $(OBSTACK_H)
-DIAGNOSTIC_H = diagnostic.h diagnostic.def $(PRETTY_PRINT_H)
+DIAGNOSTIC_CORE_H = diagnostic-core.h input.h diagnostic.def
+DIAGNOSTIC_H = diagnostic.h $(DIAGNOSTIC_CORE_H) $(PRETTY_PRINT_H)
C_PRETTY_PRINT_H = c-pretty-print.h $(PRETTY_PRINT_H) $(C_COMMON_H) $(TREE_H)
SCEV_H = tree-scalar-evolution.h $(GGC_H) tree-chrec.h $(PARAMS_H)
LAMBDA_H = lambda.h $(TREE_H) vec.h $(GGC_H)
@@ -1991,13 +1992,13 @@ c-decl.o : c-decl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
debug.h $(TOPLEV_H) intl.h $(TM_P_H) $(TREE_INLINE_H) $(TIMEVAR_H) \
opts.h $(C_PRAGMA_H) gt-c-decl.h $(CGRAPH_H) $(HASHTAB_H) libfuncs.h \
$(EXCEPT_H) $(LANGHOOKS_DEF_H) $(TREE_DUMP_H) $(C_COMMON_H) $(CPPLIB_H) \
- $(DIAGNOSTIC_H) $(INPUT_H) langhooks.h tree-mudflap.h \
+ $(DIAGNOSTIC_CORE_H) $(INPUT_H) langhooks.h tree-mudflap.h \
pointer-set.h tree-iterator.h c-lang.h $(PLUGIN_H)
c-typeck.o : c-typeck.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(TREE_H) $(C_TREE_H) $(TARGET_H) $(FLAGS_H) intl.h output.h $(EXPR_H) \
$(TOPLEV_H) langhooks.h $(TREE_FLOW_H) tree-iterator.h c-lang.h
c-lang.o : c-lang.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
- $(C_TREE_H) $(DIAGNOSTIC_H) \
+ $(C_TREE_H) $(DIAGNOSTIC_CORE_H) \
langhooks.h $(LANGHOOKS_DEF_H) $(C_COMMON_H) gtype-c.h \
c-objc-common.h $(C_PRAGMA_H) c-common.def $(TREE_INLINE_H)
stub-objc.o : stub-objc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
@@ -2091,7 +2092,7 @@ attribs.o : attribs.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
$(TARGET_H) langhooks.h $(CPPLIB_H) $(PLUGIN_H)
c-format.o : c-format.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) langhooks.h \
- $(C_COMMON_H) $(FLAGS_H) $(TOPLEV_H) intl.h $(DIAGNOSTIC_H) alloc-pool.h \
+ $(C_COMMON_H) $(FLAGS_H) $(TOPLEV_H) intl.h $(DIAGNOSTIC_CORE_H) alloc-pool.h \
c-format.h
c-semantics.o : c-semantics.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
@@ -2227,13 +2228,13 @@ double-int.o: double-int.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H)
# lto-compress.o needs $(ZLIBINC) added to the include flags.
lto-compress.o: lto-compress.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TREE_H) langhooks.h $(LTO_HEADER_H) $(LTO_SECTION_H) \
- lto-compress.h $(DIAGNOSTIC_H) $(TOPLEV_H)
+ lto-compress.h $(DIAGNOSTIC_CORE_H) $(TOPLEV_H)
$(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(ZLIBINC) $< $(OUTPUT_OPTION)
lto-cgraph.o: lto-cgraph.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(TOPLEV_H) $(EXPR_H) $(FLAGS_H) $(PARAMS_H) input.h \
$(HASHTAB_H) langhooks.h $(BASIC_BLOCK_H) \
- $(TREE_FLOW_H) $(CGRAPH_H) $(FUNCTION_H) $(GGC_H) $(DIAGNOSTIC_H) \
+ $(TREE_FLOW_H) $(CGRAPH_H) $(FUNCTION_H) $(GGC_H) $(DIAGNOSTIC_CORE_H) \
except.h $(TIMEVAR_H) output.h pointer-set.h $(LTO_STREAMER_H) $(GCOV_IO_H)
lto-streamer-in.o: lto-streamer-in.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(TOPLEV_H) $(EXPR_H) $(FLAGS_H) $(PARAMS_H) input.h \
@@ -2244,11 +2245,11 @@ lto-streamer-out.o : lto-streamer-out.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(TOPLEV_H) $(TREE_H) $(EXPR_H) $(FLAGS_H) $(PARAMS_H) input.h \
$(HASHTAB_H) $(BASIC_BLOCK_H) tree-iterator.h \
$(TREE_FLOW_H) $(TREE_PASS_H) $(CGRAPH_H) $(FUNCTION_H) $(GGC_H) \
- $(DIAGNOSTIC_H) except.h $(LTO_STREAMER_H) $(TOPLEV_H)
+ $(DIAGNOSTIC_CORE_H) except.h $(LTO_STREAMER_H) $(TOPLEV_H)
lto-section-in.o: lto-section-in.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(TOPLEV_H) $(EXPR_H) $(FLAGS_H) $(PARAMS_H) input.h \
$(HASHTAB_H) $(BASIC_BLOCK_H) $(TREE_FLOW_H) $(CGRAPH_H) $(FUNCTION_H) \
- $(GGC_H) $(DIAGNOSTIC_H) except.h $(TIMEVAR_H) output.h \
+ $(GGC_H) $(DIAGNOSTIC_CORE_H) except.h $(TIMEVAR_H) output.h \
$(LTO_STREAMER_H) lto-compress.h
lto-section-out.o : lto-section-out.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(TOPLEV_H) $(TREE_H) $(EXPR_H) $(PARAMS_H) input.h \
@@ -2263,7 +2264,7 @@ lto-opts.o: lto-opts.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
$(TARGET_H) $(TOPLEV_H) $(LTO_STREAMER_H)
lto-streamer.o: lto-streamer.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(TREE_H) $(GIMPLE_H) $(BITMAP_H) $(LTO_STREAMER_H) $(FLAGS_H) \
- $(TREE_FLOW_H) $(DIAGNOSTIC_H) $(LTO_SYMTAB_H) $(TOPLEV_H)
+ $(TREE_FLOW_H) $(DIAGNOSTIC_CORE_H) $(LTO_SYMTAB_H) $(TOPLEV_H)
langhooks.o : langhooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(TREE_H) $(TOPLEV_H) $(TREE_INLINE_H) $(RTL_H) insn-config.h $(INTEGRATE_H) \
langhooks.h $(TARGET_H) $(LANGHOOKS_DEF_H) $(FLAGS_H) $(GGC_H) $(DIAGNOSTIC_H) \
@@ -2558,7 +2559,7 @@ tree-optimize.o : tree-optimize.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
$(TREE_PASS_H) $(CFGLOOP_H) $(EXCEPT_H) $(REGSET_H)
c-gimplify.o : c-gimplify.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) \
- $(C_TREE_H) $(C_COMMON_H) $(DIAGNOSTIC_H) $(GIMPLE_H) \
+ $(C_TREE_H) $(C_COMMON_H) $(DIAGNOSTIC_CORE_H) $(GIMPLE_H) \
$(FLAGS_H) langhooks.h $(TOPLEV_H) $(RTL_H) $(TREE_FLOW_H) $(LANGHOOKS_DEF_H) \
$(TM_H) coretypes.h $(C_PRETTY_PRINT_H) $(CGRAPH_H) $(BASIC_BLOCK_H) \
hard-reg-set.h $(TREE_DUMP_H) $(TREE_INLINE_H)
@@ -2581,7 +2582,7 @@ gimple-low.o : gimple-low.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) \
$(EXCEPT_H) $(FLAGS_H) $(RTL_H) $(FUNCTION_H) $(EXPR_H) $(TREE_PASS_H) \
$(HASHTAB_H) $(TOPLEV_H) tree-iterator.h
omp-low.o : omp-low.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
- $(RTL_H) $(GIMPLE_H) $(TREE_INLINE_H) langhooks.h $(DIAGNOSTIC_H) \
+ $(RTL_H) $(GIMPLE_H) $(TREE_INLINE_H) langhooks.h $(DIAGNOSTIC_CORE_H) \
$(TREE_FLOW_H) $(TIMEVAR_H) $(FLAGS_H) $(EXPR_H) $(TOPLEV_H) \
$(TREE_PASS_H) $(GGC_H) $(EXCEPT_H) $(SPLAY_TREE_H) $(OPTABS_H) \
$(CFGLOOP_H) tree-iterator.h gt-omp-low.h
@@ -2589,7 +2590,7 @@ tree-browser.o : tree-browser.c tree-browser.def $(CONFIG_H) $(SYSTEM_H) \
$(TREE_H) $(TREE_INLINE_H) $(DIAGNOSTIC_H) $(HASHTAB_H) \
$(TM_H) coretypes.h tree-pretty-print.h
omega.o : omega.c omega.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- $(GGC_H) $(TREE_H) $(DIAGNOSTIC_H) $(TREE_PASS_H) $(PARAMS_H)
+ $(GGC_H) $(TREE_H) $(DIAGNOSTIC_CORE_H) $(TREE_PASS_H) $(PARAMS_H)
tree-chrec.o: tree-chrec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(GGC_H) $(TREE_H) $(SCEV_H) $(TREE_PASS_H) $(PARAMS_H) \
$(DIAGNOSTIC_H) $(CFGLOOP_H) $(TREE_FLOW_H) $(FLAGS_H) tree-pretty-print.h
@@ -2746,8 +2747,7 @@ fold-const.o : fold-const.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(GGC_H) $(TM_P_H) langhooks.h $(MD5_H) intl.h $(TARGET_H) \
$(GIMPLE_H) realmpfr.h
diagnostic.o : diagnostic.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
- version.h $(INPUT_H) $(TOPLEV_H) intl.h $(DIAGNOSTIC_H) \
- diagnostic.def
+ version.h $(INPUT_H) intl.h $(DIAGNOSTIC_H) diagnostic.def
opts.o : opts.c opts.h options.h $(TOPLEV_H) $(CONFIG_H) $(SYSTEM_H) \
coretypes.h $(TREE_H) $(TM_H) langhooks.h $(GGC_H) $(EXPR_H) $(RTL_H) \
output.h $(DIAGNOSTIC_H) $(TM_P_H) $(INSN_ATTR_H) intl.h $(TARGET_H) \
@@ -2787,7 +2787,7 @@ toplev.o : toplev.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
passes.o : passes.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
$(RTL_H) $(FUNCTION_H) $(FLAGS_H) xcoffout.h $(INPUT_H) $(INSN_ATTR_H) output.h \
- $(DIAGNOSTIC_H) debug.h insn-config.h intl.h $(RECOG_H) $(TOPLEV_H) \
+ $(DIAGNOSTIC_CORE_H) debug.h insn-config.h intl.h $(RECOG_H) $(TOPLEV_H) \
dwarf2out.h sdbout.h dbxout.h $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) \
graph.h $(EXCEPT_H) $(REGS_H) $(TIMEVAR_H) value-prof.h \
$(PARAMS_H) $(TM_P_H) reload.h dwarf2asm.h $(TARGET_H) \
@@ -2861,7 +2861,8 @@ builtins.o : builtins.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
$(EXPR_H) $(OPTABS_H) insn-config.h $(RECOG_H) output.h typeclass.h \
hard-reg-set.h $(TOPLEV_H) hard-reg-set.h $(EXCEPT_H) $(TM_P_H) $(PREDICT_H) \
libfuncs.h langhooks.h $(BASIC_BLOCK_H) tree-mudflap.h realmpfr.h \
- $(BUILTINS_DEF) $(MACHMODE_H) $(DIAGNOSTIC_H) $(TREE_FLOW_H) value-prof.h
+ $(BUILTINS_DEF) $(MACHMODE_H) $(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) \
+ value-prof.h
calls.o : calls.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
$(TREE_H) $(FLAGS_H) $(EXPR_H) $(OPTABS_H) langhooks.h $(TARGET_H) \
libfuncs.h $(REGS_H) $(TOPLEV_H) output.h $(FUNCTION_H) $(TIMEVAR_H) $(TM_P_H) \
@@ -2920,9 +2921,9 @@ integrate.o : integrate.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
gt-integrate.h $(GGC_H) $(TREE_PASS_H) $(DF_H)
jump.o : jump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
$(FLAGS_H) hard-reg-set.h $(REGS_H) insn-config.h $(RECOG_H) $(EXPR_H) \
- $(EXCEPT_H) $(FUNCTION_H) $(BASIC_BLOCK_H) $(TREE_PASS_H) $(DIAGNOSTIC_H) \
- $(TOPLEV_H) $(INSN_ATTR_H) $(TM_P_H) reload.h $(PREDICT_H) \
- $(TIMEVAR_H) $(TARGET_H)
+ $(EXCEPT_H) $(FUNCTION_H) $(BASIC_BLOCK_H) $(TREE_PASS_H) \
+ $(DIAGNOSTIC_CORE_H) $(TOPLEV_H) $(INSN_ATTR_H) $(TM_P_H) reload.h \
+ $(PREDICT_H) $(TIMEVAR_H) $(TARGET_H)
simplify-rtx.o : simplify-rtx.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(RTL_H) $(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h \
$(RECOG_H) $(EXPR_H) $(TOPLEV_H) output.h $(FUNCTION_H) $(GGC_H) $(TM_P_H) \
@@ -2931,7 +2932,7 @@ cgraph.o : cgraph.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
langhooks.h $(TOPLEV_H) $(FLAGS_H) $(GGC_H) $(TARGET_H) $(CGRAPH_H) \
gt-cgraph.h output.h intl.h $(BASIC_BLOCK_H) debug.h $(HASHTAB_H) \
$(TREE_INLINE_H) $(TREE_DUMP_H) $(TREE_FLOW_H) cif-code.def \
- value-prof.h $(EXCEPT_H) $(IPA_UTILS_H)
+ value-prof.h $(EXCEPT_H) $(IPA_UTILS_H) $(DIAGNOSTIC_CORE_H)
cgraphunit.o : cgraphunit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(TREE_H) langhooks.h $(TREE_INLINE_H) $(TOPLEV_H) $(FLAGS_H) $(GGC_H) \
$(TARGET_H) $(CGRAPH_H) intl.h pointer-set.h $(FUNCTION_H) $(GIMPLE_H) \
@@ -2943,7 +2944,7 @@ cgraphbuild.o : cgraphbuild.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(TREE_H) langhooks.h $(CGRAPH_H) intl.h pointer-set.h $(GIMPLE_H) \
$(TREE_FLOW_H) $(TREE_PASS_H) $(IPA_UTILS_H) $(EXCEPT_H)
varpool.o : varpool.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- $(TREE_H) $(CGRAPH_H) langhooks.h $(DIAGNOSTIC_H) $(HASHTAB_H) \
+ $(TREE_H) $(CGRAPH_H) langhooks.h $(DIAGNOSTIC_CORE_H) $(HASHTAB_H) \
$(GGC_H) $(TIMEVAR_H) debug.h $(TARGET_H) output.h $(GIMPLE_H) \
$(TREE_FLOW_H) gt-varpool.h
ipa.o : ipa.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(CGRAPH_H) \
@@ -2963,9 +2964,10 @@ ipa-cp.o : ipa-cp.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
matrix-reorg.o : matrix-reorg.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(TREE_H) $(RTL_H) $(TREE_INLINE_H) $(TREE_FLOW_H) \
tree-flow-inline.h langhooks.h $(HASHTAB_H) $(TOPLEV_H) $(FLAGS_H) $(GGC_H) \
- debug.h $(TARGET_H) $(CGRAPH_H) $(DIAGNOSTIC_H) $(TIMEVAR_H) $(PARAMS_H) \
- $(FIBHEAP_H) intl.h $(FUNCTION_H) $(BASIC_BLOCK_H) $(CFGLOOP_H) \
- tree-iterator.h $(TREE_PASS_H) opts.h $(TREE_DATA_REF_H) tree-ssa-sccvn.h
+ debug.h $(TARGET_H) $(CGRAPH_H) $(DIAGNOSTIC_CORE_H) $(TIMEVAR_H) \
+ $(PARAMS_H) $(FIBHEAP_H) intl.h $(FUNCTION_H) $(BASIC_BLOCK_H) \
+ $(CFGLOOP_H) tree-iterator.h $(TREE_PASS_H) opts.h $(TREE_DATA_REF_H) \
+ tree-ssa-sccvn.h
ipa-inline.o : ipa-inline.c gt-ipa-inline.h $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(TREE_H) langhooks.h $(TREE_INLINE_H) $(FLAGS_H) $(CGRAPH_H) intl.h \
$(DIAGNOSTIC_H) $(FIBHEAP_H) $(PARAMS_H) $(TIMEVAR_H) $(TREE_PASS_H) \
@@ -3003,7 +3005,7 @@ coverage.o : coverage.c $(GCOV_IO_H) $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(RTL_H) $(TREE_H) $(FLAGS_H) output.h $(REGS_H) $(EXPR_H) \
$(FUNCTION_H) $(BASIC_BLOCK_H) $(TOPLEV_H) $(GGC_H) langhooks.h $(COVERAGE_H) \
$(HASHTAB_H) tree-iterator.h $(CGRAPH_H) $(TREE_PASS_H) gcov-io.c $(TM_P_H) \
- $(DIAGNOSTIC_H) intl.h gt-coverage.h
+ $(DIAGNOSTIC_CORE_H) intl.h gt-coverage.h
cselib.o : cselib.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
$(REGS_H) hard-reg-set.h $(FLAGS_H) insn-config.h $(RECOG_H) \
$(EMIT_RTL_H) $(TOPLEV_H) output.h $(FUNCTION_H) $(TREE_PASS_H) \
@@ -3405,8 +3407,8 @@ lambda-trans.o: lambda-trans.c $(LAMBDA_H) $(GGC_H) $(SYSTEM_H) $(CONFIG_H) \
$(TM_H) coretypes.h $(TARGET_H) $(TREE_H) $(TREE_FLOW_H)
lambda-code.o: lambda-code.c $(LAMBDA_H) $(GGC_H) $(SYSTEM_H) $(CONFIG_H) \
$(TM_H) $(OPTABS_H) $(TREE_H) $(RTL_H) $(BASIC_BLOCK_H) \
- $(DIAGNOSTIC_H) $(TREE_FLOW_H) $(TREE_DUMP_H) $(TIMEVAR_H) $(CFGLOOP_H) \
- $(TREE_DATA_REF_H) $(EXPR_H) coretypes.h $(TARGET_H) \
+ $(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) $(TREE_DUMP_H) $(TIMEVAR_H) \
+ $(CFGLOOP_H) $(TREE_DATA_REF_H) $(EXPR_H) coretypes.h $(TARGET_H) \
$(TREE_PASS_H) vec.h vecprim.h $(OBSTACK_H) pointer-set.h
params.o : params.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(PARAMS_H) \
$(TOPLEV_H)
diff --git a/gcc/builtins.c b/gcc/builtins.c
index 871d6707812..e16240b579a 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -49,7 +49,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-mudflap.h"
#include "tree-flow.h"
#include "value-prof.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#ifndef SLOW_UNALIGNED_ACCESS
#define SLOW_UNALIGNED_ACCESS(MODE, ALIGN) STRICT_ALIGNMENT
@@ -5003,7 +5003,7 @@ expand_builtin_expect (tree exp, rtx target)
target = expand_expr (arg, target, VOIDmode, EXPAND_NORMAL);
/* When guessing was done, the hints should be already stripped away. */
gcc_assert (!flag_guess_branch_prob
- || optimize == 0 || errorcount || sorrycount);
+ || optimize == 0 || seen_error ());
return target;
}
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index 96db92d0e39..a49694007d2 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -51,7 +51,7 @@ along with GCC; see the file COPYING3. If not see
#include "langhooks.h"
#include "tree-mudflap.h"
#include "tree-iterator.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "tree-dump.h"
#include "cgraph.h"
#include "hashtab.h"
@@ -3535,7 +3535,7 @@ c_make_fname_decl (location_t loc, tree id, int type_dep)
the __FUNCTION__ is believed to appear in K&R style function
parameter declarator. In that case we still don't have
function_scope. */
- && (!errorcount || current_function_scope))
+ && (!seen_error () || current_function_scope))
{
DECL_CONTEXT (decl) = current_function_decl;
bind (id, decl, current_function_scope,
@@ -9660,7 +9660,7 @@ c_write_global_declarations (void)
/* After cgraph has had a chance to emit everything that's going to
be emitted, output debug information for globals. */
- if (errorcount == 0 && sorrycount == 0)
+ if (!seen_error ())
{
timevar_push (TV_SYMOUT);
for (t = all_translation_units; t; t = TREE_CHAIN (t))
diff --git a/gcc/c-format.c b/gcc/c-format.c
index 3d46bd2c813..0522d2925c2 100644
--- a/gcc/c-format.c
+++ b/gcc/c-format.c
@@ -1,6 +1,7 @@
/* Check calls to formatted I/O functions (-Wformat).
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
+ Free Software Foundation, Inc.
This file is part of GCC.
@@ -27,7 +28,7 @@ along with GCC; see the file COPYING3. If not see
#include "c-common.h"
#include "toplev.h"
#include "intl.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "langhooks.h"
#include "c-format.h"
#include "alloc-pool.h"
diff --git a/gcc/c-gimplify.c b/gcc/c-gimplify.c
index 58729f16ecf..2ef81c6c439 100644
--- a/gcc/c-gimplify.c
+++ b/gcc/c-gimplify.c
@@ -2,7 +2,7 @@
by the C-based front ends. The structure of gimplified, or
language-independent, trees is dictated by the grammar described in this
file.
- Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008
+ Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Lowering of expressions contributed by Sebastian Pop <s.pop@laposte.net>
Re-written to support lowering of whole function trees, documentation
@@ -35,7 +35,7 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "tree-flow.h"
#include "tree-inline.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "langhooks.h"
#include "langhooks-def.h"
#include "flags.h"
diff --git a/gcc/c-lang.c b/gcc/c-lang.c
index 31a122fba82..14d4eacf366 100644
--- a/gcc/c-lang.c
+++ b/gcc/c-lang.c
@@ -1,6 +1,6 @@
/* Language-specific hook definitions for C front end.
Copyright (C) 1991, 1995, 1997, 1998,
- 1999, 2000, 2001, 2003, 2004, 2005, 2007, 2008
+ 1999, 2000, 2001, 2003, 2004, 2005, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GCC.
@@ -30,7 +30,7 @@ along with GCC; see the file COPYING3. If not see
#include "langhooks.h"
#include "langhooks-def.h"
#include "tree-inline.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "c-objc-common.h"
#include "c-pragma.h"
diff --git a/gcc/c-lex.c b/gcc/c-lex.c
index 6deec260d95..5d77e093fb8 100644
--- a/gcc/c-lex.c
+++ b/gcc/c-lex.c
@@ -1,6 +1,6 @@
/* Mainly the interface between cpplib and the C front ends.
Copyright (C) 1987, 1988, 1989, 1992, 1994, 1995, 1996, 1997
- 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008
+ 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GCC.
@@ -322,7 +322,6 @@ c_lex_with_flags (tree *value, location_t *loc, unsigned char *cpp_flags,
case CPP_N_INVALID:
/* cpplib has issued an error. */
*value = error_mark_node;
- errorcount++;
break;
case CPP_N_INTEGER:
@@ -668,7 +667,6 @@ interpret_float (const cpp_token *token, unsigned int flags)
if (mode == VOIDmode)
{
error ("unsupported non-standard suffix on floating constant");
- errorcount++;
return error_mark_node;
}
diff --git a/gcc/c-opts.c b/gcc/c-opts.c
index d83045be48c..d1cb317c47a 100644
--- a/gcc/c-opts.c
+++ b/gcc/c-opts.c
@@ -1416,7 +1416,7 @@ c_common_finish (void)
FILE *deps_stream = NULL;
/* Don't write the deps file if there are errors. */
- if (cpp_opts->deps.style != DEPS_NONE && errorcount == 0)
+ if (cpp_opts->deps.style != DEPS_NONE && !seen_error ())
{
/* If -M or -MM was seen without -MF, default output to the
output stream. */
diff --git a/gcc/cgraph.c b/gcc/cgraph.c
index 9433301cf77..7bfb9bc3d81 100644
--- a/gcc/cgraph.c
+++ b/gcc/cgraph.c
@@ -94,7 +94,7 @@ The callgraph:
#include "tree-flow.h"
#include "value-prof.h"
#include "except.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "rtl.h"
#include "ipa-utils.h"
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index c7788763608..d4a142b2bd7 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -579,7 +579,7 @@ verify_cgraph_node (struct cgraph_node *node)
gimple_stmt_iterator gsi;
bool error_found = false;
- if (errorcount || sorrycount)
+ if (seen_error ())
return;
timevar_push (TV_CGRAPH_VERIFY);
@@ -883,7 +883,7 @@ verify_cgraph (void)
{
struct cgraph_node *node;
- if (sorrycount || errorcount)
+ if (seen_error ())
return;
for (node = cgraph_nodes; node; node = node->next)
@@ -897,7 +897,7 @@ cgraph_output_pending_asms (void)
{
struct cgraph_asm_node *can;
- if (errorcount || sorrycount)
+ if (seen_error ())
return;
for (can = cgraph_asm_nodes; can; can = can->next)
@@ -1895,7 +1895,7 @@ ipa_passes (void)
void
cgraph_optimize (void)
{
- if (errorcount || sorrycount)
+ if (seen_error ())
return;
#ifdef ENABLE_CHECKING
@@ -1917,11 +1917,11 @@ cgraph_optimize (void)
cgraph_state = CGRAPH_STATE_IPA;
/* Don't run the IPA passes if there was any error or sorry messages. */
- if (errorcount == 0 && sorrycount == 0)
+ if (!seen_error ())
ipa_passes ();
/* Do nothing else if any IPA pass found errors. */
- if (errorcount || sorrycount)
+ if (seen_error ())
{
timevar_pop (TV_CGRAPHOPT);
return;
@@ -1979,7 +1979,7 @@ cgraph_optimize (void)
verify_cgraph ();
/* Double check that all inline clones are gone and that all
function bodies have been released from memory. */
- if (!(sorrycount || errorcount))
+ if (!seen_error ())
{
struct cgraph_node *node;
bool error_found = false;
diff --git a/gcc/coverage.c b/gcc/coverage.c
index 065c87cd364..9b8a6900e6b 100644
--- a/gcc/coverage.c
+++ b/gcc/coverage.c
@@ -1,7 +1,7 @@
/* Read and write coverage files, and associated functionality.
Copyright (C) 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, 1999,
- 2000, 2001, 2003, 2004, 2005, 2007, 2008 Free Software Foundation,
- Inc.
+ 2000, 2001, 2003, 2004, 2005, 2007, 2008, 2009, 2010
+ Free Software Foundation, Inc.
Contributed by James E. Wilson, UC Berkeley/Cygnus Support;
based on some ideas from Dain Samples of UC Berkeley.
Further mangling by Bob Manson, Cygnus Support.
@@ -47,7 +47,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-iterator.h"
#include "cgraph.h"
#include "tree-pass.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "intl.h"
#include "gcov-io.c"
@@ -376,7 +376,7 @@ get_coverage_counts (unsigned counter, unsigned expected,
inform (input_location, "number of counters is %d instead of %d",
entry->summary.num, expected);
- if (!(errorcount || sorrycount)
+ if (!seen_error ()
&& !warned++)
{
inform (input_location, "coverage mismatch ignored");
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index f359b213d07..80d86c8e139 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,19 @@
+2010-05-27 Joseph Myers <joseph@codesourcery.com>
+
+ * call.c: Include diagnostic-core.h instead of diagnostic.h.
+ * cp-lang.c: Don't include diagnostic.h
+ * name-lookup.c: Include diagnostic-core.h instead of
+ diagnostic.h.
+ (cp_emit_debug_info_for_using): Use seen_error.
+ * optimize.c: Include diagnostic-core.h instead of diagnostic.h.
+ * parser.c: Include diagnostic-core.h instead of diagnostic.h.
+ * pt.c (iterative_hash_template_arg): Use seen_error.
+ * repo.c: Include diagnostic-core.h instead of diagnostic.h.
+ * typeck2.c: Include diagnostic-core.h instead of diagnostic.h.
+ * Make-lang.in (cp/cp-lang.o, cp/typeck2.o, cp/call.o, cp/repo.o,
+ cp/optimize.o, cp/parser.o, cp/name-lookup.o): Update
+ dependencies.
+
2010-05-25 Dodji Seketeli <dodji@redhat.com>
PR c++/44188
diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
index 7a8521218d4..222988dff36 100644
--- a/gcc/cp/Make-lang.in
+++ b/gcc/cp/Make-lang.in
@@ -251,7 +251,7 @@ cp/lex.o: cp/lex.c $(CXX_TREE_H) $(TM_H) $(FLAGS_H) \
$(C_PRAGMA_H) toplev.h output.h input.h cp/operators.def $(TM_P_H)
cp/cp-lang.o: cp/cp-lang.c $(CXX_TREE_H) $(TM_H) toplev.h debug.h langhooks.h \
$(LANGHOOKS_DEF_H) $(C_COMMON_H) gtype-cp.h gt-cp-cp-lang.h \
- $(DIAGNOSTIC_H) cp/cp-objcp-common.h $(EXPR_H) $(EXCEPT_H)
+ cp/cp-objcp-common.h $(EXPR_H) $(EXCEPT_H)
cp/decl.o: cp/decl.c $(CXX_TREE_H) $(TM_H) $(FLAGS_H) cp/decl.h \
output.h $(EXCEPT_H) toplev.h $(HASHTAB_H) $(RTL_H) \
cp/operators.def $(TM_P_H) $(TREE_INLINE_H) $(DIAGNOSTIC_H) $(C_PRAGMA_H) \
@@ -266,7 +266,7 @@ cp/cp-objcp-common.o : cp/cp-objcp-common.c $(CONFIG_H) $(SYSTEM_H) \
langhooks.h $(LANGHOOKS_DEF_H) $(DIAGNOSTIC_H) debug.h \
$(CXX_PRETTY_PRINT_H) cp/cp-objcp-common.h gt-cp-cp-objcp-common.h
cp/typeck2.o: cp/typeck2.c $(CXX_TREE_H) $(TM_H) $(FLAGS_H) toplev.h output.h \
- $(TM_P_H) $(DIAGNOSTIC_H) gt-cp-typeck2.h $(REAL_H) intl.h
+ $(TM_P_H) $(DIAGNOSTIC_CORE_H) gt-cp-typeck2.h $(REAL_H) intl.h
cp/typeck.o: cp/typeck.c $(CXX_TREE_H) $(TM_H) $(FLAGS_H) \
toplev.h $(DIAGNOSTIC_H) convert.h $(C_COMMON_H) $(TARGET_H) \
output.h toplev.h
@@ -274,7 +274,7 @@ cp/class.o: cp/class.c $(CXX_TREE_H) $(TM_H) $(FLAGS_H) toplev.h \
$(TARGET_H) convert.h $(CGRAPH_H) $(TREE_DUMP_H) gt-cp-class.h \
$(SPLAY_TREE_H)
cp/call.o: cp/call.c $(CXX_TREE_H) $(TM_H) $(FLAGS_H) toplev.h \
- $(DIAGNOSTIC_H) intl.h gt-cp-call.h convert.h $(TARGET_H) langhooks.h
+ $(DIAGNOSTIC_CORE_H) intl.h gt-cp-call.h convert.h $(TARGET_H) langhooks.h
cp/friend.o: cp/friend.c $(CXX_TREE_H) $(TM_H) $(FLAGS_H) toplev.h
cp/init.o: cp/init.c $(CXX_TREE_H) $(TM_H) $(FLAGS_H) \
toplev.h $(EXCEPT_H) $(TARGET_H)
@@ -300,7 +300,7 @@ cp/pt.o: cp/pt.c $(CXX_TREE_H) $(TM_H) cp/decl.h cp/cp-objcp-common.h \
cp/error.o: cp/error.c $(CXX_TREE_H) $(TM_H) toplev.h $(DIAGNOSTIC_H) \
$(FLAGS_H) $(REAL_H) $(LANGHOOKS_DEF_H) $(CXX_PRETTY_PRINT_H) \
tree-diagnostic.h tree-pretty-print.h
-cp/repo.o: cp/repo.c $(CXX_TREE_H) $(TM_H) toplev.h $(DIAGNOSTIC_H) \
+cp/repo.o: cp/repo.c $(CXX_TREE_H) $(TM_H) toplev.h $(DIAGNOSTIC_CORE_H) \
gt-cp-repo.h
cp/semantics.o: cp/semantics.c $(CXX_TREE_H) $(TM_H) $(EXCEPT_H) toplev.h \
$(FLAGS_H) output.h $(RTL_H) $(TIMEVAR_H) \
@@ -309,17 +309,17 @@ cp/semantics.o: cp/semantics.c $(CXX_TREE_H) $(TM_H) $(EXCEPT_H) toplev.h \
cp/dump.o: cp/dump.c $(CXX_TREE_H) $(TM_H) $(TREE_DUMP_H)
cp/optimize.o: cp/optimize.c $(CXX_TREE_H) $(TM_H) \
input.h $(PARAMS_H) debug.h $(TREE_INLINE_H) $(GIMPLE_H) \
- $(TARGET_H) tree-iterator.h $(CGRAPH_H)
+ $(TARGET_H) tree-iterator.h $(CGRAPH_H) $(DIAGNOSTIC_CORE_H)
cp/mangle.o: cp/mangle.c $(CXX_TREE_H) $(TM_H) toplev.h $(REAL_H) \
gt-cp-mangle.h $(TARGET_H) $(TM_P_H) $(CGRAPH_H)
-cp/parser.o: cp/parser.c $(CXX_TREE_H) $(TM_H) $(DIAGNOSTIC_H) gt-cp-parser.h \
- output.h $(TARGET_H) $(PLUGIN_H) intl.h
+cp/parser.o: cp/parser.c $(CXX_TREE_H) $(TM_H) $(DIAGNOSTIC_CORE_H) \
+ gt-cp-parser.h output.h $(TARGET_H) $(PLUGIN_H) intl.h
cp/cp-gimplify.o: cp/cp-gimplify.c $(CXX_TREE_H) toplev.h $(C_COMMON_H) \
$(TM_H) coretypes.h pointer-set.h tree-iterator.h
cp/name-lookup.o: cp/name-lookup.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(CXX_TREE_H) $(TIMEVAR_H) gt-cp-name-lookup.h toplev.h \
- $(DIAGNOSTIC_H) $(FLAGS_H) debug.h
+ $(DIAGNOSTIC_CORE_H) $(FLAGS_H) debug.h
cp/cxx-pretty-print.o: cp/cxx-pretty-print.c $(CXX_PRETTY_PRINT_H) \
$(CONFIG_H) $(SYSTEM_H) $(TM_H) coretypes.h $(CXX_TREE_H) tree-pretty-print.h
diff --git a/gcc/cp/call.c b/gcc/cp/call.c
index 76fec59c353..64e2e502787 100644
--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -1,6 +1,6 @@
/* Functions related to invoking methods and overloaded functions.
Copyright (C) 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com) and
modified by Brendan Kehoe (brendan@cygnus.com).
@@ -33,7 +33,7 @@ along with GCC; see the file COPYING3. If not see
#include "output.h"
#include "flags.h"
#include "toplev.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "intl.h"
#include "target.h"
#include "convert.h"
diff --git a/gcc/cp/cp-lang.c b/gcc/cp/cp-lang.c
index d19e20ff891..a08f0dd71d0 100644
--- a/gcc/cp/cp-lang.c
+++ b/gcc/cp/cp-lang.c
@@ -1,5 +1,6 @@
/* Language-dependent hooks for C++.
- Copyright 2001, 2002, 2004, 2007, 2008, 2009 Free Software Foundation, Inc.
+ Copyright 2001, 2002, 2004, 2007, 2008, 2009, 2010
+ Free Software Foundation, Inc.
Contributed by Alexandre Oliva <aoliva@redhat.com>
This file is part of GCC.
@@ -28,7 +29,6 @@ along with GCC; see the file COPYING3. If not see
#include "toplev.h"
#include "langhooks.h"
#include "langhooks-def.h"
-#include "diagnostic.h"
#include "debug.h"
#include "cp-objcp-common.h"
#include "hashtab.h"
diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c
index 405bf164c92..051d3c5416a 100644
--- a/gcc/cp/name-lookup.c
+++ b/gcc/cp/name-lookup.c
@@ -29,7 +29,7 @@ along with GCC; see the file COPYING3. If not see
#include "name-lookup.h"
#include "timevar.h"
#include "toplev.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "debug.h"
#include "c-pragma.h"
@@ -5505,7 +5505,7 @@ void
cp_emit_debug_info_for_using (tree t, tree context)
{
/* Don't try to emit any debug information if we have errors. */
- if (sorrycount || errorcount)
+ if (seen_error ())
return;
/* Ignore this FUNCTION_DECL if it refers to a builtin declaration
diff --git a/gcc/cp/optimize.c b/gcc/cp/optimize.c
index f512570a317..0196eaeb8b1 100644
--- a/gcc/cp/optimize.c
+++ b/gcc/cp/optimize.c
@@ -1,6 +1,6 @@
/* Perform optimizations on tree structure.
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2007, 2008, 2009
- Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2007, 2008, 2009,
+ 2010 Free Software Foundation, Inc.
Written by Mark Michell (mark@codesourcery.com).
This file is part of GCC.
@@ -34,7 +34,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-inline.h"
#include "flags.h"
#include "langhooks.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "tree-dump.h"
#include "gimple.h"
#include "tree-iterator.h"
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 36d7eae5883..4a50b556f46 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -30,7 +30,7 @@ along with GCC; see the file COPYING3. If not see
#include "c-pragma.h"
#include "decl.h"
#include "flags.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "toplev.h"
#include "output.h"
#include "target.h"
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index fd34d9fca70..9eeba8a1415 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -1564,7 +1564,7 @@ iterative_hash_template_arg (tree arg, hashval_t val)
case LAMBDA_EXPR:
/* A lambda can't appear in a template arg, but don't crash on
erroneous input. */
- gcc_assert (errorcount > 0);
+ gcc_assert (seen_error ());
return val;
default:
diff --git a/gcc/cp/repo.c b/gcc/cp/repo.c
index aa970785ca3..08a4d623d40 100644
--- a/gcc/cp/repo.c
+++ b/gcc/cp/repo.c
@@ -1,6 +1,6 @@
/* Code to maintain a C++ template repository.
Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005,
- 2006, 2007, 2008 Free Software Foundation, Inc.
+ 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
Contributed by Jason Merrill (jason@cygnus.com)
This file is part of GCC.
@@ -34,7 +34,7 @@ along with GCC; see the file COPYING3. If not see
#include "input.h"
#include "obstack.h"
#include "toplev.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "flags.h"
static const char *extract_string (const char **);
@@ -243,7 +243,7 @@ finish_repo (void)
if (!flag_use_repository || flag_compare_debug)
return;
- if (errorcount || sorrycount)
+ if (seen_error ())
return;
repo_file = reopen_repo_file_for_write ();
diff --git a/gcc/cp/typeck2.c b/gcc/cp/typeck2.c
index b1336bf0a7f..e512272abb7 100644
--- a/gcc/cp/typeck2.c
+++ b/gcc/cp/typeck2.c
@@ -1,7 +1,7 @@
/* Report error messages, build initializers, and perform
some front-end optimizations for C++ compiler.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007, 2008, 2009
+ 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Hacked by Michael Tiemann (tiemann@cygnus.com)
@@ -37,7 +37,7 @@ along with GCC; see the file COPYING3. If not see
#include "flags.h"
#include "toplev.h"
#include "output.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
static tree
process_init_constructor (tree type, tree init);
diff --git a/gcc/diagnostic-core.h b/gcc/diagnostic-core.h
new file mode 100644
index 00000000000..b5047164002
--- /dev/null
+++ b/gcc/diagnostic-core.h
@@ -0,0 +1,87 @@
+/* Declarations of core diagnostic functionality for code that does
+ not need to deal with diagnostic contexts or diagnostic info
+ structures.
+ Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007,
+ 2008, 2009, 2010
+ Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation; either version 3, or (at your option) any later
+version.
+
+GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING3. If not see
+<http://www.gnu.org/licenses/>. */
+
+#ifndef GCC_DIAGNOSTIC_CORE_H
+#define GCC_DIAGNOSTIC_CORE_H
+
+#include "input.h"
+
+/* Constants used to discriminate diagnostics. */
+typedef enum
+{
+#define DEFINE_DIAGNOSTIC_KIND(K, msgid) K,
+#include "diagnostic.def"
+#undef DEFINE_DIAGNOSTIC_KIND
+ DK_LAST_DIAGNOSTIC_KIND
+} diagnostic_t;
+
+extern const char *progname;
+
+extern const char *trim_filename (const char *);
+
+/* If we haven't already defined a front-end-specific diagnostics
+ style, use the generic one. */
+#ifndef GCC_DIAG_STYLE
+#define GCC_DIAG_STYLE __gcc_tdiag__
+#endif
+/* None of these functions are suitable for ATTRIBUTE_PRINTF, because
+ each language front end can extend them with its own set of format
+ specifiers. We must use custom format checks. */
+#if (ENABLE_CHECKING && GCC_VERSION >= 4001) || GCC_VERSION == BUILDING_GCC_VERSION
+#define ATTRIBUTE_GCC_DIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m, n))) ATTRIBUTE_NONNULL(m)
+#else
+#define ATTRIBUTE_GCC_DIAG(m, n) ATTRIBUTE_NONNULL(m)
+#endif
+extern void internal_error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2)
+ ATTRIBUTE_NORETURN;
+/* Pass one of the OPT_W* from options.h as the first parameter. */
+extern bool warning (int, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3);
+extern bool warning_at (location_t, int, const char *, ...)
+ ATTRIBUTE_GCC_DIAG(3,4);
+extern void error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2);
+extern void error_n (location_t, int, const char *, const char *, ...)
+ ATTRIBUTE_GCC_DIAG(3,5) ATTRIBUTE_GCC_DIAG(4,5);
+extern void error_at (location_t, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3);
+extern void fatal_error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2)
+ ATTRIBUTE_NORETURN;
+/* Pass one of the OPT_W* from options.h as the second parameter. */
+extern bool pedwarn (location_t, int, const char *, ...)
+ ATTRIBUTE_GCC_DIAG(3,4);
+extern bool permerror (location_t, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3);
+extern void sorry (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2);
+extern void inform (location_t, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3);
+extern void inform_n (location_t, int, const char *, const char *, ...)
+ ATTRIBUTE_GCC_DIAG(3,5) ATTRIBUTE_GCC_DIAG(4,5);
+extern void verbatim (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2);
+extern bool emit_diagnostic (diagnostic_t, location_t, int,
+ const char *, ...) ATTRIBUTE_GCC_DIAG(4,5);
+extern bool seen_error (void);
+
+#ifdef BUFSIZ
+ /* N.B. Unlike all the others, fnotice is just gettext+fprintf, and
+ therefore it can have ATTRIBUTE_PRINTF. */
+extern void fnotice (FILE *, const char *, ...)
+ ATTRIBUTE_PRINTF_2;
+#endif
+
+#endif /* ! GCC_DIAGNOSTIC_CORE_H */
diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c
index 0fbf58fa928..61401e62a80 100644
--- a/gcc/diagnostic.c
+++ b/gcc/diagnostic.c
@@ -28,7 +28,6 @@ along with GCC; see the file COPYING3. If not see
#include "coretypes.h"
#include "version.h"
#include "input.h"
-#include "toplev.h"
#include "intl.h"
#include "diagnostic.h"
@@ -46,6 +45,10 @@ static void diagnostic_action_after_output (diagnostic_context *,
diagnostic_info *);
static void real_abort (void) ATTRIBUTE_NORETURN;
+/* Name of program invoked, sans directories. */
+
+const char *progname;
+
/* A diagnostic_context surrogate for stderr. */
static diagnostic_context global_diagnostic_context;
diagnostic_context *global_dc = &global_diagnostic_context;
@@ -697,6 +700,14 @@ sorry (const char *gmsgid, ...)
va_end (ap);
}
+/* Return true if an error or a "sorry" has been seen. Various
+ processing is disabled after errors. */
+bool
+seen_error (void)
+{
+ return errorcount || sorrycount;
+}
+
/* An error which is severe enough that we make no attempt to
continue. Do not use this for internal consistency checks; that's
internal_error. Use of this function should be rare. */
diff --git a/gcc/diagnostic.h b/gcc/diagnostic.h
index 7aa053188d4..062402fa3f9 100644
--- a/gcc/diagnostic.h
+++ b/gcc/diagnostic.h
@@ -23,15 +23,7 @@ along with GCC; see the file COPYING3. If not see
#define GCC_DIAGNOSTIC_H
#include "pretty-print.h"
-
-/* Constants used to discriminate diagnostics. */
-typedef enum
-{
-#define DEFINE_DIAGNOSTIC_KIND(K, msgid) K,
-#include "diagnostic.def"
-#undef DEFINE_DIAGNOSTIC_KIND
- DK_LAST_DIAGNOSTIC_KIND
-} diagnostic_t;
+#include "diagnostic-core.h"
/* A diagnostic is described by the MESSAGE to send, the FILE and LINE of
its context and its KIND (ice, error, warning, note, ...) See complete
@@ -246,8 +238,6 @@ extern void diagnostic_set_info_translated (diagnostic_info *, const char *,
va_list *, location_t,
diagnostic_t)
ATTRIBUTE_GCC_DIAG(2,0);
-extern bool emit_diagnostic (diagnostic_t, location_t, int,
- const char *, ...) ATTRIBUTE_GCC_DIAG(4,5);
#endif
extern char *diagnostic_build_prefix (diagnostic_context *, diagnostic_info *);
void default_diagnostic_starter (diagnostic_context *, diagnostic_info *);
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index a0de6551e19..8cdb7aaaff6 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -21887,7 +21887,7 @@ dwarf2out_finish (const char *filename)
add_child_die (origin->die_parent, die);
else if (die == comp_unit_die)
;
- else if (errorcount > 0 || sorrycount > 0)
+ else if (seen_error ())
/* It's OK to be confused by errors in the input. */
add_child_die (comp_unit_die, die);
else
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 66b6b520853..855098f5af5 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -1876,7 +1876,7 @@ gimplify_var_or_parm_decl (tree *expr_p)
&& !TREE_STATIC (decl) && !DECL_EXTERNAL (decl)
&& decl_function_context (decl) == current_function_decl)
{
- gcc_assert (errorcount || sorrycount);
+ gcc_assert (seen_error ());
return GS_ERROR;
}
@@ -5197,7 +5197,7 @@ gimple_push_cleanup (tree var, tree cleanup, bool eh_only, gimple_seq *pre_p)
/* Errors can result in improperly nested cleanups. Which results in
confusion when trying to resolve the GIMPLE_WITH_CLEANUP_EXPR. */
- if (errorcount || sorrycount)
+ if (seen_error ())
return;
if (gimple_conditional_context ())
@@ -7673,7 +7673,7 @@ gimplify_body (tree *body_p, tree fndecl, bool do_parms)
gcc_assert (gimplify_ctxp == NULL);
#ifdef ENABLE_TYPES_CHECKING
- if (!errorcount && !sorrycount)
+ if (!seen_error ())
verify_types_in_gimple_seq (gimple_bind_body (outer_bind));
#endif
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index aaae6393e15..46bce87b16f 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -1701,7 +1701,7 @@ cgraph_early_inlining (void)
unsigned int todo = 0;
int iterations = 0;
- if (sorrycount || errorcount)
+ if (seen_error ())
return 0;
if (!optimize
diff --git a/gcc/ipa-pure-const.c b/gcc/ipa-pure-const.c
index c33b2d3f18b..02a1e0386ab 100644
--- a/gcc/ipa-pure-const.c
+++ b/gcc/ipa-pure-const.c
@@ -1163,7 +1163,7 @@ gate_pure_const (void)
{
return (flag_ipa_pure_const
/* Don't bother doing anything if the program has errors. */
- && !(errorcount || sorrycount));
+ && !seen_error ());
}
struct ipa_opt_pass_d pass_ipa_pure_const =
diff --git a/gcc/ipa-reference.c b/gcc/ipa-reference.c
index a66e6279e16..bee05651de0 100644
--- a/gcc/ipa-reference.c
+++ b/gcc/ipa-reference.c
@@ -1096,7 +1096,7 @@ gate_reference (void)
{
return (flag_ipa_reference
/* Don't bother doing anything if the program has errors. */
- && !(errorcount || sorrycount));
+ && !seen_error ());
}
struct ipa_opt_pass_d pass_ipa_reference =
diff --git a/gcc/jump.c b/gcc/jump.c
index 6c3263c01a0..23cd0cf1215 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -50,7 +50,7 @@ along with GCC; see the file COPYING3. If not see
#include "basic-block.h"
#include "expr.h"
#include "except.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "toplev.h"
#include "reload.h"
#include "predict.h"
diff --git a/gcc/lambda-code.c b/gcc/lambda-code.c
index fff6ff800f3..2b287a184d7 100644
--- a/gcc/lambda-code.c
+++ b/gcc/lambda-code.c
@@ -28,7 +28,7 @@
#include "target.h"
#include "rtl.h"
#include "basic-block.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "obstack.h"
#include "tree-flow.h"
#include "tree-dump.h"
diff --git a/gcc/lto-cgraph.c b/gcc/lto-cgraph.c
index f911c3ac104..67a847e63dc 100644
--- a/gcc/lto-cgraph.c
+++ b/gcc/lto-cgraph.c
@@ -1,7 +1,7 @@
/* Write and read the cgraph to the memory mapped representation of a
.o file.
- Copyright 2009 Free Software Foundation, Inc.
+ Copyright 2009, 2010 Free Software Foundation, Inc.
Contributed by Kenneth Zadeck <zadeck@naturalbridge.com>
This file is part of GCC.
@@ -37,7 +37,7 @@ along with GCC; see the file COPYING3. If not see
#include "cgraph.h"
#include "function.h"
#include "ggc.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "except.h"
#include "vec.h"
#include "timevar.h"
diff --git a/gcc/lto-compress.c b/gcc/lto-compress.c
index 8849d57c814..c87c42c2b34 100644
--- a/gcc/lto-compress.c
+++ b/gcc/lto-compress.c
@@ -1,6 +1,6 @@
/* LTO IL compression streams.
- Copyright 2009 Free Software Foundation, Inc.
+ Copyright 2009, 2010 Free Software Foundation, Inc.
Contributed by Simon Baldwin <simonb@google.com>
This file is part of GCC.
@@ -28,7 +28,7 @@ along with GCC; see the file COPYING3. If not see
#include <zlib.h>
#include "coretypes.h"
#include "tree.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "toplev.h"
#include "langhooks.h"
#include "lto-streamer.h"
diff --git a/gcc/lto-section-in.c b/gcc/lto-section-in.c
index 6d081d8c197..9d6d8a36029 100644
--- a/gcc/lto-section-in.c
+++ b/gcc/lto-section-in.c
@@ -1,6 +1,6 @@
/* Input functions for reading LTO sections.
- Copyright 2009 Free Software Foundation, Inc.
+ Copyright 2009, 2010 Free Software Foundation, Inc.
Contributed by Kenneth Zadeck <zadeck@naturalbridge.com>
This file is part of GCC.
@@ -35,7 +35,7 @@ along with GCC; see the file COPYING3. If not see
#include "cgraph.h"
#include "function.h"
#include "ggc.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "except.h"
#include "vec.h"
#include "timevar.h"
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c
index b7b1bddfb5e..58fe70e3018 100644
--- a/gcc/lto-streamer-out.c
+++ b/gcc/lto-streamer-out.c
@@ -37,7 +37,7 @@ along with GCC; see the file COPYING3. If not see
#include "cgraph.h"
#include "function.h"
#include "ggc.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "except.h"
#include "vec.h"
#include "lto-symtab.h"
diff --git a/gcc/lto-streamer.c b/gcc/lto-streamer.c
index 20ce0751d3d..561ecbc1a7e 100644
--- a/gcc/lto-streamer.c
+++ b/gcc/lto-streamer.c
@@ -29,7 +29,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "gimple.h"
#include "tree-flow.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "bitmap.h"
#include "vec.h"
#include "lto-streamer.h"
@@ -848,7 +848,7 @@ gate_lto_out (void)
{
return ((flag_generate_lto || in_lto_p)
/* Don't bother doing anything if the program has errors. */
- && !(errorcount || sorrycount));
+ && !seen_error ());
}
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index 2922c80a775..b11097f9c82 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,3 +1,9 @@
+2010-05-27 Joseph Myers <joseph@codesourcery.com>
+
+ * lto.c: Include diagnostic-core.h instead of diagnostic.h.
+ (read_cgraph_and_symbols, lto_main): Use seen_error.
+ * Make-lang.in (lto/lto.o): Update dependencies.
+
2010-05-27 Eric Botcazou <ebotcazou@adacore.com>
PR lto/44230
diff --git a/gcc/lto/Make-lang.in b/gcc/lto/Make-lang.in
index b18747e76bb..637d07caec1 100644
--- a/gcc/lto/Make-lang.in
+++ b/gcc/lto/Make-lang.in
@@ -81,7 +81,7 @@ lto/lto-lang.o: lto/lto-lang.c $(CONFIG_H) coretypes.h debug.h \
$(TARGET_H) $(LTO_H) $(GIMPLE_H) gtype-lto.h gt-lto-lto-lang.h \
$(EXPR_H)
lto/lto.o: lto/lto.c $(CONFIG_H) $(SYSTEM_H) coretypes.h opts.h \
- toplev.h $(TREE_H) $(DIAGNOSTIC_H) $(TM_H) $(LIBIBERTY_H) \
+ toplev.h $(TREE_H) $(DIAGNOSTIC_CORE_H) $(TM_H) $(LIBIBERTY_H) \
$(CGRAPH_H) $(GGC_H) tree-ssa-operands.h $(TREE_PASS_H) \
langhooks.h vec.h $(BITMAP_H) pointer-set.h $(IPA_PROP_H) \
$(COMMON_H) debug.h $(TIMEVAR_H) $(GIMPLE_H) $(LTO_H) $(LTO_TREE_H) \
diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c
index 52ef9edbafd..d69fba3f000 100644
--- a/gcc/lto/lto.c
+++ b/gcc/lto/lto.c
@@ -24,7 +24,7 @@ along with GCC; see the file COPYING3. If not see
#include "opts.h"
#include "toplev.h"
#include "tree.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "tm.h"
#include "libiberty.h"
#include "cgraph.h"
@@ -1710,7 +1710,7 @@ read_cgraph_and_symbols (unsigned nfiles, const char **fnames)
/* FIXME lto. This loop needs to be changed to use the pass manager to
call the ipa passes directly. */
- if (!errorcount)
+ if (!seen_error ())
for (i = 0; i < last_file_ix; i++)
{
struct lto_file_decl_data *file_data = all_file_decl_data [i];
@@ -1901,7 +1901,7 @@ lto_main (int debug_p ATTRIBUTE_UNUSED)
command line. */
read_cgraph_and_symbols (num_in_fnames, in_fnames);
- if (!errorcount)
+ if (!seen_error ())
{
/* If WPA is enabled analyze the whole call graph and create an
optimization plan. Otherwise, read in all the function
diff --git a/gcc/matrix-reorg.c b/gcc/matrix-reorg.c
index c4579edb94a..4958762169f 100644
--- a/gcc/matrix-reorg.c
+++ b/gcc/matrix-reorg.c
@@ -1,5 +1,5 @@
/* Matrix layout transformations.
- Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
Contributed by Razya Ladelsky <razya@il.ibm.com>
Originally written by Revital Eres and Mustafa Hagog.
@@ -126,7 +126,7 @@ along with GCC; see the file COPYING3. If not see
#include "debug.h"
#include "target.h"
#include "cgraph.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "timevar.h"
#include "params.h"
#include "fibheap.h"
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog
index d48ff16c9e9..6bb319af8c1 100644
--- a/gcc/objc/ChangeLog
+++ b/gcc/objc/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-27 Joseph Myers <joseph@codesourcery.com>
+
+ * objc-act.c: Include diagnostic-core.h instead of diagnostic.h.
+ * Make-lang.in (objc/objc-act.o): Update dependencies.
+
2010-05-25 Steven Bosscher <steven@gcc.gnu.org>
* objc-act.h: Do not include gimple.h.
diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in
index 144d01a5185..67644bbb08a 100644
--- a/gcc/objc/Make-lang.in
+++ b/gcc/objc/Make-lang.in
@@ -75,7 +75,7 @@ objc/objc-lang.o : objc/objc-lang.c \
objc/objc-act.o : objc/objc-act.c \
$(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
- $(TARGET_H) $(C_TREE_H) $(DIAGNOSTIC_H) toplev.h $(FLAGS_H) \
+ $(TARGET_H) $(C_TREE_H) $(DIAGNOSTIC_CORE_H) toplev.h $(FLAGS_H) \
objc/objc-act.h input.h $(FUNCTION_H) output.h debug.h langhooks.h \
$(LANGHOOKS_DEF_H) $(HASHTAB_H) $(C_PRAGMA_H) gt-objc-objc-act.h \
$(GIMPLE_H) c-lang.h
diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c
index b1ca2e4249c..32e71b1afa3 100644
--- a/gcc/objc/objc-act.c
+++ b/gcc/objc/objc-act.c
@@ -66,7 +66,7 @@ along with GCC; see the file COPYING3. If not see
#include "ggc.h"
#include "debug.h"
#include "target.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "intl.h"
#include "cgraph.h"
#include "tree-iterator.h"
diff --git a/gcc/omega.c b/gcc/omega.c
index 35b20431346..e1c1adfbc48 100644
--- a/gcc/omega.c
+++ b/gcc/omega.c
@@ -5,8 +5,8 @@
This code has no license restrictions, and is considered public
domain.
- Changes copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
- Inc.
+ Changes copyright (C) 2005, 2006, 2007, 2008, 2009,
+ 2010 Free Software Foundation, Inc.
Contributed by Sebastian Pop <sebastian.pop@inria.fr>
This file is part of GCC.
@@ -37,7 +37,7 @@ along with GCC; see the file COPYING3. If not see
#include "tm.h"
#include "ggc.h"
#include "tree.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "tree-pass.h"
#include "omega.h"
diff --git a/gcc/omp-low.c b/gcc/omp-low.c
index cc36cb51bc5..74797b8aa0c 100644
--- a/gcc/omp-low.c
+++ b/gcc/omp-low.c
@@ -32,7 +32,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-iterator.h"
#include "tree-inline.h"
#include "langhooks.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "tree-flow.h"
#include "timevar.h"
#include "flags.h"
@@ -5512,7 +5512,7 @@ execute_expand_omp (void)
static bool
gate_expand_omp (void)
{
- return (flag_openmp != 0 && errorcount == 0);
+ return (flag_openmp != 0 && !seen_error ());
}
struct gimple_opt_pass pass_expand_omp =
@@ -6561,7 +6561,7 @@ lower_omp_1 (gimple_stmt_iterator *gsi_p, omp_context *ctx)
/* If we have issued syntax errors, avoid doing any heavy lifting.
Just replace the OpenMP directives with a NOP to avoid
confusing RTL expansion. */
- if (errorcount && is_gimple_omp (stmt))
+ if (seen_error () && is_gimple_omp (stmt))
{
gsi_replace (gsi_p, gimple_build_nop (), true);
return;
diff --git a/gcc/passes.c b/gcc/passes.c
index 7f097f8e70b..7ae4787d211 100644
--- a/gcc/passes.c
+++ b/gcc/passes.c
@@ -60,7 +60,7 @@ along with GCC; see the file COPYING3. If not see
#include "graph.h"
#include "regs.h"
#include "timevar.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "params.h"
#include "reload.h"
#include "dwarf2asm.h"
@@ -211,7 +211,7 @@ rest_of_decl_compilation (tree decl,
else if (TREE_CODE (decl) == TYPE_DECL
/* Like in rest_of_type_compilation, avoid confusing the debug
information machinery when there are errors. */
- && !(sorrycount || errorcount))
+ && !seen_error ())
{
timevar_push (TV_SYMOUT);
debug_hooks->type_decl (decl, !top_level);
@@ -232,7 +232,7 @@ rest_of_type_compilation (tree type, int toplev)
{
/* Avoid confusing the debug information machinery when there are
errors. */
- if (errorcount != 0 || sorrycount != 0)
+ if (seen_error ())
return;
timevar_push (TV_SYMOUT);
@@ -287,7 +287,7 @@ gate_rest_of_compilation (void)
{
/* Early return if there were errors. We can run afoul of our
consistency checks, and there's not really much point in fixing them. */
- return !(rtl_dump_and_exit || flag_syntax_only || errorcount || sorrycount);
+ return !(rtl_dump_and_exit || flag_syntax_only || seen_error ());
}
struct gimple_opt_pass pass_rest_of_compilation =
@@ -1716,7 +1716,7 @@ ipa_write_summaries (void)
struct varpool_node *vnode;
int i, order_pos;
- if (!flag_generate_lto || errorcount || sorrycount)
+ if (!flag_generate_lto || seen_error ())
return;
set = cgraph_node_set_new ();
diff --git a/gcc/toplev.c b/gcc/toplev.c
index a5e620387ac..6c20b3ca642 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -126,10 +126,6 @@ static bool no_backend;
/* Length of line when printing switch values. */
#define MAX_LINE 75
-/* Name of program invoked, sans directories. */
-
-const char *progname;
-
/* Copy of argument vector to toplev_main. */
static const char **save_argv;
@@ -907,7 +903,7 @@ emit_debug_global_declarations (tree *vec, int len)
int i;
/* Avoid confusing the debug information machinery when there are errors. */
- if (errorcount != 0 || sorrycount != 0)
+ if (seen_error ())
return;
timevar_push (TV_SYMOUT);
@@ -1055,7 +1051,7 @@ compile_file (void)
/* This must also call cgraph_finalize_compilation_unit. */
lang_hooks.decls.final_write_globals ();
- if (errorcount || sorrycount)
+ if (seen_error ())
return;
/* Ensure that emulated TLS control vars are finalized and build
@@ -2350,7 +2346,7 @@ finalize (void)
if (flag_gen_aux_info)
{
fclose (aux_info_file);
- if (errorcount)
+ if (seen_error ())
unlink (aux_info_file_name);
}
@@ -2393,7 +2389,7 @@ do_compile (void)
process_options ();
/* Don't do any more if an error has already occurred. */
- if (!errorcount)
+ if (!seen_error ())
{
/* This must be run always, because it is needed to compute the FP
predefined macros, such as __LDBL_MAX__, for targets using non
@@ -2458,7 +2454,7 @@ toplev_main (int argc, char **argv)
invoke_plugin_callbacks (PLUGIN_FINISH, NULL);
finalize_plugins ();
- if (errorcount || sorrycount)
+ if (seen_error ())
return (FATAL_EXIT_CODE);
return (SUCCESS_EXIT_CODE);
diff --git a/gcc/toplev.h b/gcc/toplev.h
index 033c6dcdae6..b7152f7b9e1 100644
--- a/gcc/toplev.h
+++ b/gcc/toplev.h
@@ -23,6 +23,7 @@ along with GCC; see the file COPYING3. If not see
#define GCC_TOPLEV_H
#include "input.h"
#include "bversion.h"
+#include "diagnostic-core.h"
/* If non-NULL, return one past-the-end of the matching SUBPART of
the WHOLE string. */
@@ -32,7 +33,6 @@ along with GCC; see the file COPYING3. If not see
extern int toplev_main (int, char **);
extern int read_integral_parameter (const char *, const char *, const int);
extern void strip_off_ending (char *, int);
-extern const char *trim_filename (const char *);
extern void _fatal_insn_not_found (const_rtx, const char *, int, const char *)
ATTRIBUTE_NORETURN;
extern void _fatal_insn (const char *, const_rtx, const char *, int, const char *)
@@ -43,41 +43,6 @@ extern void _fatal_insn (const char *, const_rtx, const char *, int, const char
#define fatal_insn_not_found(insn) \
_fatal_insn_not_found (insn, __FILE__, __LINE__, __FUNCTION__)
-/* If we haven't already defined a frontend specific diagnostics
- style, use the generic one. */
-#ifndef GCC_DIAG_STYLE
-#define GCC_DIAG_STYLE __gcc_tdiag__
-#endif
-/* None of these functions are suitable for ATTRIBUTE_PRINTF, because
- each language front end can extend them with its own set of format
- specifiers. We must use custom format checks. */
-#if (ENABLE_CHECKING && GCC_VERSION >= 4001) || GCC_VERSION == BUILDING_GCC_VERSION
-#define ATTRIBUTE_GCC_DIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m, n))) ATTRIBUTE_NONNULL(m)
-#else
-#define ATTRIBUTE_GCC_DIAG(m, n) ATTRIBUTE_NONNULL(m)
-#endif
-extern void internal_error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2)
- ATTRIBUTE_NORETURN;
-/* Pass one of the OPT_W* from options.h as the first parameter. */
-extern bool warning (int, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3);
-extern bool warning_at (location_t, int, const char *, ...)
- ATTRIBUTE_GCC_DIAG(3,4);
-extern void error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2);
-extern void error_n (location_t, int, const char *, const char *, ...)
- ATTRIBUTE_GCC_DIAG(3,5) ATTRIBUTE_GCC_DIAG(4,5);
-extern void error_at (location_t, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3);
-extern void fatal_error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2)
- ATTRIBUTE_NORETURN;
-/* Pass one of the OPT_W* from options.h as the second parameter. */
-extern bool pedwarn (location_t, int, const char *, ...)
- ATTRIBUTE_GCC_DIAG(3,4);
-extern bool permerror (location_t, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3);
-extern void sorry (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2);
-extern void inform (location_t, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3);
-extern void inform_n (location_t, int, const char *, const char *, ...)
- ATTRIBUTE_GCC_DIAG(3,5) ATTRIBUTE_GCC_DIAG(4,5);
-extern void verbatim (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2);
-
extern void rest_of_decl_compilation (tree, int, int);
extern void rest_of_type_compilation (tree, int);
extern void tree_rest_of_compilation (tree);
@@ -97,13 +62,6 @@ extern void output_quoted_string (FILE *, const char *);
extern void output_file_directive (FILE *, const char *);
#endif
-#ifdef BUFSIZ
- /* N.B. Unlike all the others, fnotice is just gettext+fprintf, and
- therefore it can have ATTRIBUTE_PRINTF. */
-extern void fnotice (FILE *, const char *, ...)
- ATTRIBUTE_PRINTF_2;
-#endif
-
extern void wrapup_global_declaration_1 (tree);
extern bool wrapup_global_declaration_2 (tree);
extern bool wrapup_global_declarations (tree *, int);
@@ -122,7 +80,6 @@ extern unsigned local_tick;
/* Top-level source file. */
extern const char *main_input_filename;
-extern const char *progname;
extern const char *dump_base_name;
extern const char *dump_dir_name;
extern const char *aux_base_name;
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index ec69dd89070..43c30e008c1 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -964,7 +964,7 @@ label_to_block_fn (struct function *ifun, tree dest)
/* We would die hard when faced by an undefined label. Emit a label to
the very first basic block. This will hopefully make even the dataflow
and undefined variable warnings quite right. */
- if ((errorcount || sorrycount) && uid < 0)
+ if (seen_error () && uid < 0)
{
gimple_stmt_iterator gsi = gsi_start_bb (BASIC_BLOCK (NUM_FIXED_BLOCKS));
gimple stmt;
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index 697c6bc269a..a70c09fb3f5 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -4060,7 +4060,7 @@ optimize_inline_calls (tree fn)
/* There is no point in performing inlining if errors have already
occurred -- and we might crash if we try to inline invalid
code. */
- if (errorcount || sorrycount)
+ if (seen_error ())
return 0;
/* Clear out ID. */
diff --git a/gcc/tree-mudflap.c b/gcc/tree-mudflap.c
index d1dad3abd0c..2437bc48470 100644
--- a/gcc/tree-mudflap.c
+++ b/gcc/tree-mudflap.c
@@ -1,5 +1,5 @@
/* Mudflap: narrow-pointer bounds-checking by tree rewriting.
- Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Contributed by Frank Ch. Eigler <fche@redhat.com>
and Graydon Hoare <graydon@redhat.com>
@@ -1292,7 +1292,7 @@ mudflap_finish_file (void)
tree ctor_statements = NULL_TREE;
/* No need to continue when there were errors. */
- if (errorcount != 0 || sorrycount != 0)
+ if (seen_error ())
return;
/* Insert a call to __mf_init. */
diff --git a/gcc/tree-optimize.c b/gcc/tree-optimize.c
index 76918f1cfd6..ed4676996dd 100644
--- a/gcc/tree-optimize.c
+++ b/gcc/tree-optimize.c
@@ -1,5 +1,5 @@
/* Top-level control of tree optimizations.
- Copyright 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009
+ Copyright 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
Contributed by Diego Novillo <dnovillo@redhat.com>
@@ -57,7 +57,7 @@ gate_all_optimizations (void)
return (optimize >= 1
/* Don't bother doing anything if the program has errors.
We have to pass down the queue if we already went into SSA */
- && (!(errorcount || sorrycount) || gimple_in_ssa_p (cfun)));
+ && (!seen_error () || gimple_in_ssa_p (cfun)));
}
struct gimple_opt_pass pass_all_optimizations =
@@ -85,7 +85,7 @@ static bool
gate_all_early_local_passes (void)
{
/* Don't bother doing anything if the program has errors. */
- return (!errorcount && !sorrycount && !in_lto_p);
+ return (!seen_error () && !in_lto_p);
}
struct simple_ipa_opt_pass pass_early_local_passes =
@@ -126,7 +126,7 @@ gate_all_early_optimizations (void)
{
return (optimize >= 1
/* Don't bother doing anything if the program has errors. */
- && !(errorcount || sorrycount));
+ && !seen_error ());
}
struct gimple_opt_pass pass_all_early_optimizations =
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index a5a9634ae9c..23e52d65950 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -6626,7 +6626,7 @@ gate_ipa_pta (void)
return (optimize
&& flag_ipa_pta
/* Don't bother doing anything if the program has errors. */
- && !(errorcount || sorrycount));
+ && !seen_error ());
}
/* IPA PTA solutions for ESCAPED. */
diff --git a/gcc/varpool.c b/gcc/varpool.c
index 73d39f33901..180e21e86ec 100644
--- a/gcc/varpool.c
+++ b/gcc/varpool.c
@@ -26,7 +26,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree.h"
#include "cgraph.h"
#include "langhooks.h"
-#include "diagnostic.h"
+#include "diagnostic-core.h"
#include "hashtab.h"
#include "ggc.h"
#include "timevar.h"
@@ -517,7 +517,7 @@ varpool_remove_unreferenced_decls (void)
varpool_reset_queue ();
- if (errorcount || sorrycount)
+ if (seen_error ())
return;
while (node)
@@ -549,7 +549,7 @@ varpool_assemble_pending_decls (void)
{
bool changed = false;
- if (errorcount || sorrycount)
+ if (seen_error ())
return false;
timevar_push (TV_VAROUT);