re PR preprocessor/6517 (gcc hangs on C compile with multiple "-I-")
PR preprocessor/6517 * Makefile.in: Update. * c-common.c (c_common_post_options): Add preprocessor errors to the error count. * c-lang.c (c_post_options): Kill. (LANG_HOOKS_POST_OPTIONS): Use c_common_post_options. * hooks.h: Add header guards. * langhooks-def.h: Include hooks.h. (LANG_HOOKS_POST_OPTIONS): Update. * langhooks.h (struct lang_hooks): Update post_options. * toplev.c (parse_options_and_default_flags): Update. cp: * cp-lang.c (LANG_HOOKS_POST_OPTIONS): Use c_common_post_options. * cp-tree.h (cxx_post_options): Kill. * cp-lex.c (cxx_post_options): Kill. objc: * objc-lang.c (objc_post_options): Kill. (LANG_HOOKS_POST_OPTIONS): Use c_common_post_options. From-SVN: r53724
This commit is contained in:
parent
fd0a39154f
commit
e5f3b786ed
@ -1,3 +1,20 @@
|
||||
2002-05-22 Neil Booth <neil@daikokuya.demon.co.uk>
|
||||
|
||||
PR preprocessor/6517
|
||||
* Makefile.in: Update.
|
||||
* c-common.c (c_common_post_options): Add preprocessor
|
||||
errors to the error count.
|
||||
* c-lang.c (c_post_options): Kill.
|
||||
(LANG_HOOKS_POST_OPTIONS): Use c_common_post_options.
|
||||
* hooks.h: Add header guards.
|
||||
* langhooks-def.h: Include hooks.h.
|
||||
(LANG_HOOKS_POST_OPTIONS): Update.
|
||||
* langhooks.h (struct lang_hooks): Update post_options.
|
||||
* toplev.c (parse_options_and_default_flags): Update.
|
||||
objc:
|
||||
* objc-lang.c (objc_post_options): Kill.
|
||||
(LANG_HOOKS_POST_OPTIONS): Use c_common_post_options.
|
||||
|
||||
2002-05-21 Bruce Korb <bkorb@gnu.org>
|
||||
|
||||
* fixinc/tests/base/pthread.h(THREAD_KEYWORD_CHECK): add fix check
|
||||
|
@ -547,6 +547,7 @@ CONFIG_H = $(GCONFIG_H) insn-constants.h insn-flags.h
|
||||
TCONFIG_H = tconfig.h $(xm_file_list)
|
||||
TARGET_H = target.h
|
||||
HOOKS_H = hooks.h
|
||||
LANGHOOKS_DEF_H = langhooks.h $(HOOKS_H)
|
||||
TARGET_DEF_H = target-def.h $(HOOKS_H)
|
||||
TM_P_H = tm_p.h $(tm_p_file_list) tm-preds.h
|
||||
|
||||
@ -1161,7 +1162,7 @@ c-decl.o : c-decl.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(RTL_H) $(C_TREE_H) \
|
||||
c-typeck.o : c-typeck.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(C_TREE_H) \
|
||||
$(TARGET_H) flags.h intl.h output.h $(EXPR_H) $(RTL_H) toplev.h $(TM_P_H)
|
||||
c-lang.o : c-lang.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(C_TREE_H) \
|
||||
langhooks.h langhooks-def.h c-common.h
|
||||
langhooks.h $(LANGHOOKS_DEF_H) c-common.h
|
||||
c-lex.o : c-lex.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(RTL_H) c-lex.h \
|
||||
debug.h $(C_TREE_H) c-common.h \
|
||||
c-pragma.h input.h intl.h flags.h toplev.h output.h \
|
||||
@ -1336,7 +1337,7 @@ convert.o: convert.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) flags.h convert.h \
|
||||
|
||||
langhooks.o : langhooks.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) toplev.h \
|
||||
tree-inline.h $(RTL_H) insn-config.h integrate.h langhooks.h \
|
||||
langhooks-def.h flags.h
|
||||
$(LANGHOOKS_DEF_H) flags.h
|
||||
tree.o : tree.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) flags.h function.h toplev.h \
|
||||
$(GGC_H) $(HASHTAB_H) $(TARGET_H) output.h $(TM_P_H) langhooks.h
|
||||
tree-dump.o: tree-dump.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(C_TREE_H) \
|
||||
@ -1355,7 +1356,7 @@ fold-const.o : fold-const.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) flags.h \
|
||||
toplev.h $(HASHTAB_H) $(EXPR_H) $(RTL_H) $(GGC_H) $(TM_P_H) langhooks.h
|
||||
diagnostic.o : diagnostic.c diagnostic.h real.h diagnostic.def \
|
||||
$(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(TM_P_H) flags.h $(GGC_H) \
|
||||
input.h toplev.h intl.h langhooks.h langhooks-def.h
|
||||
input.h toplev.h intl.h langhooks.h $(LANGHOOKS_DEF_H)
|
||||
toplev.o : toplev.c $(CONFIG_H) $(SYSTEM_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) Makefile toplev.h \
|
||||
|
@ -4319,6 +4319,10 @@ c_common_post_options ()
|
||||
warning ("-Wformat-security ignored without -Wformat");
|
||||
if (warn_missing_format_attribute && !warn_format)
|
||||
warning ("-Wmissing-format-attribute ignored without -Wformat");
|
||||
|
||||
/* If an error has occurred in cpplib, note it so we fail
|
||||
immediately. */
|
||||
errorcount += cpp_errors (parse_in);
|
||||
}
|
||||
|
||||
/* Hook that registers front end and target-specific built-ins. */
|
||||
|
10
gcc/c-lang.c
10
gcc/c-lang.c
@ -30,7 +30,6 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
|
||||
|
||||
static const char *c_init PARAMS ((const char *));
|
||||
static void c_init_options PARAMS ((void));
|
||||
static void c_post_options PARAMS ((void));
|
||||
|
||||
/* ### When changing hooks, consider if ObjC needs changing too!! ### */
|
||||
|
||||
@ -45,7 +44,7 @@ static void c_post_options PARAMS ((void));
|
||||
#undef LANG_HOOKS_DECODE_OPTION
|
||||
#define LANG_HOOKS_DECODE_OPTION c_decode_option
|
||||
#undef LANG_HOOKS_POST_OPTIONS
|
||||
#define LANG_HOOKS_POST_OPTIONS c_post_options
|
||||
#define LANG_HOOKS_POST_OPTIONS c_common_post_options
|
||||
#undef LANG_HOOKS_GET_ALIAS_SET
|
||||
#define LANG_HOOKS_GET_ALIAS_SET c_common_get_alias_set
|
||||
#undef LANG_HOOKS_SAFE_FROM_P
|
||||
@ -155,13 +154,6 @@ const char *const tree_code_name[] = {
|
||||
};
|
||||
#undef DEFTREECODE
|
||||
|
||||
/* Post-switch processing. */
|
||||
static void
|
||||
c_post_options ()
|
||||
{
|
||||
c_common_post_options ();
|
||||
}
|
||||
|
||||
static void
|
||||
c_init_options ()
|
||||
{
|
||||
|
@ -1,3 +1,9 @@
|
||||
2002-05-22 Neil Booth <neil@daikokuya.demon.co.uk>
|
||||
|
||||
* cp-lang.c (LANG_HOOKS_POST_OPTIONS): Use c_common_post_options.
|
||||
* cp-tree.h (cxx_post_options): Kill.
|
||||
* cp-lex.c (cxx_post_options): Kill.
|
||||
|
||||
2002-05-21 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* lex.c (rid_to_yy): Add RID_THREAD.
|
||||
|
@ -251,7 +251,7 @@ cp/spew.o: cp/spew.c $(CXX_TREE_H) cp/parse.h flags.h cp/lex.h toplev.h
|
||||
cp/lex.o: cp/lex.c $(CXX_TREE_H) cp/parse.h flags.h cp/lex.h c-pragma.h \
|
||||
toplev.h output.h mbchar.h $(GGC_H) input.h diagnostic.h cp/operators.def \
|
||||
$(TM_P_H)
|
||||
cp/cp-lang.o: cp/cp-lang.c $(CXX_TREE_H) toplev.h langhooks.h langhooks-def.h \
|
||||
cp/cp-lang.o: cp/cp-lang.c $(CXX_TREE_H) toplev.h langhooks.h $(LANGHOOKS_DEF_H) \
|
||||
c-common.h
|
||||
cp/decl.o: cp/decl.c $(CXX_TREE_H) flags.h cp/lex.h cp/decl.h stack.h \
|
||||
output.h $(EXPR_H) except.h toplev.h hash.h $(GGC_H) $(RTL_H) \
|
||||
@ -283,7 +283,7 @@ cp/expr.o: cp/expr.c $(CXX_TREE_H) $(RTL_H) flags.h $(EXPR_H) toplev.h \
|
||||
cp/pt.o: cp/pt.c $(CXX_TREE_H) cp/decl.h cp/parse.h cp/lex.h toplev.h \
|
||||
$(GGC_H) $(RTL_H) except.h tree-inline.h
|
||||
cp/error.o: cp/error.c $(CXX_TREE_H) toplev.h diagnostic.h flags.h real.h \
|
||||
langhooks-def.h
|
||||
$(LANGHOOKS_DEF_H)
|
||||
cp/repo.o: cp/repo.c $(CXX_TREE_H) toplev.h $(GGC_H) diagnostic.h
|
||||
cp/semantics.o: cp/semantics.c $(CXX_TREE_H) cp/lex.h except.h toplev.h \
|
||||
flags.h $(GGC_H) debug.h output.h $(RTL_H) $(TIMEVAR_H) $(EXPR_H) \
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Language-dependent hooks for C++.
|
||||
Copyright 2001 Free Software Foundation, Inc.
|
||||
Copyright 2001, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
This file is part of GNU CC.
|
||||
@ -45,7 +45,7 @@ static bool cxx_warn_unused_global_decl PARAMS ((tree));
|
||||
#undef LANG_HOOKS_DECODE_OPTION
|
||||
#define LANG_HOOKS_DECODE_OPTION cxx_decode_option
|
||||
#undef LANG_HOOKS_POST_OPTIONS
|
||||
#define LANG_HOOKS_POST_OPTIONS cxx_post_options
|
||||
#define LANG_HOOKS_POST_OPTIONS c_common_post_options
|
||||
#undef LANG_HOOKS_GET_ALIAS_SET
|
||||
#define LANG_HOOKS_GET_ALIAS_SET cxx_get_alias_set
|
||||
#undef LANG_HOOKS_EXPAND_CONSTANT
|
||||
|
@ -3974,7 +3974,6 @@ extern int cp_type_qual_from_rid PARAMS ((tree));
|
||||
extern const char *cxx_init PARAMS ((const char *));
|
||||
extern void cxx_finish PARAMS ((void));
|
||||
extern void cxx_init_options PARAMS ((void));
|
||||
extern void cxx_post_options PARAMS ((void));
|
||||
|
||||
/* in method.c */
|
||||
extern void init_method PARAMS ((void));
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Separate lexical analyzer for GNU C++.
|
||||
Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
|
||||
1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Hacked by Michael Tiemann (tiemann@cygnus.com)
|
||||
|
||||
This file is part of GNU CC.
|
||||
@ -203,13 +203,6 @@ int interface_unknown; /* whether or not we know this class
|
||||
to behave according to #pragma interface. */
|
||||
|
||||
|
||||
/* Post-switch processing. */
|
||||
void
|
||||
cxx_post_options ()
|
||||
{
|
||||
c_common_post_options ();
|
||||
}
|
||||
|
||||
/* Initialization before switch parsing. */
|
||||
void
|
||||
cxx_init_options ()
|
||||
|
@ -26,6 +26,12 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#include "system.h"
|
||||
#include "hooks.h"
|
||||
|
||||
/* Generic hook that does absolutely zappo. */
|
||||
void
|
||||
hook_void_void ()
|
||||
{
|
||||
}
|
||||
|
||||
/* Generic hook that takes no arguments and returns false. */
|
||||
bool
|
||||
hook_void_bool_false ()
|
||||
|
@ -19,6 +19,12 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
You are forbidden to forbid anyone else to use, share and improve
|
||||
what you give them. Help stamp out software-hoarding! */
|
||||
|
||||
#ifndef GCC_HOOKS_H
|
||||
#define GCC_HOOKS_H
|
||||
|
||||
bool hook_void_bool_false PARAMS ((void));
|
||||
bool hook_tree_bool_false PARAMS ((tree));
|
||||
void hook_tree_int_void PARAMS ((tree, int));
|
||||
void hook_void_void PARAMS ((void));
|
||||
|
||||
#endif
|
||||
|
@ -22,6 +22,8 @@ Boston, MA 02111-1307, USA. */
|
||||
#ifndef GCC_LANG_HOOKS_DEF_H
|
||||
#define GCC_LANG_HOOKS_DEF_H
|
||||
|
||||
#include "hooks.h"
|
||||
|
||||
struct diagnostic_context;
|
||||
|
||||
/* Provide a hook routine for alias sets that always returns 1. This is
|
||||
@ -86,7 +88,7 @@ tree lhd_tree_inlining_convert_parm_for_inlining PARAMS ((tree, tree, tree));
|
||||
#define LANG_HOOKS_CLEAR_BINDING_STACK lhd_clear_binding_stack
|
||||
#define LANG_HOOKS_INIT_OPTIONS lhd_do_nothing
|
||||
#define LANG_HOOKS_DECODE_OPTION lhd_decode_option
|
||||
#define LANG_HOOKS_POST_OPTIONS lhd_do_nothing
|
||||
#define LANG_HOOKS_POST_OPTIONS hook_void_void
|
||||
#define LANG_HOOKS_GET_ALIAS_SET lhd_get_alias_set
|
||||
#define LANG_HOOKS_EXPAND_CONSTANT lhd_return_tree
|
||||
#define LANG_HOOKS_EXPAND_EXPR lhd_expand_expr
|
||||
|
@ -199,7 +199,10 @@ struct lang_hooks
|
||||
/* 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. */
|
||||
and the identifier hashes are set up between now and then.
|
||||
|
||||
If errorcount is non-zero after this call the compiler exits
|
||||
immediately and the finish hook is not called. */
|
||||
void (*post_options) PARAMS ((void));
|
||||
|
||||
/* Called after post_options, to initialize the front end. The main
|
||||
|
@ -93,7 +93,7 @@ objc-act.o : $(srcdir)/objc/objc-act.c \
|
||||
$(srcdir)/c-tree.h $(srcdir)/c-common.h $(srcdir)/c-lex.h \
|
||||
$(srcdir)/toplev.h $(srcdir)/flags.h $(srcdir)/objc/objc-act.h \
|
||||
$(srcdir)/input.h $(srcdir)/function.h $(srcdir)/output.h $(srcdir)/debug.h \
|
||||
$(srcdir)/langhooks.h $(srcdir)/langhooks-def.h
|
||||
$(srcdir)/langhooks.h $(LANGHOOKS_DEF_H)
|
||||
$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -I$(srcdir)/objc \
|
||||
-c $(srcdir)/objc/objc-act.c
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Language-dependent hooks for Objective-C.
|
||||
Copyright 2001 Free Software Foundation, Inc.
|
||||
Copyright 2001, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Ziemowit Laski <zlaski@apple.com>
|
||||
|
||||
This file is part of GNU CC.
|
||||
@ -30,7 +30,6 @@ Boston, MA 02111-1307, USA. */
|
||||
#include "langhooks-def.h"
|
||||
|
||||
static void objc_init_options PARAMS ((void));
|
||||
static void objc_post_options PARAMS ((void));
|
||||
|
||||
#undef LANG_HOOKS_NAME
|
||||
#define LANG_HOOKS_NAME "GNU Objective-C"
|
||||
@ -43,7 +42,7 @@ static void objc_post_options PARAMS ((void));
|
||||
#undef LANG_HOOKS_DECODE_OPTION
|
||||
#define LANG_HOOKS_DECODE_OPTION objc_decode_option
|
||||
#undef LANG_HOOKS_POST_OPTIONS
|
||||
#define LANG_HOOKS_POST_OPTIONS objc_post_options
|
||||
#define LANG_HOOKS_POST_OPTIONS c_common_post_options
|
||||
#undef LANG_HOOKS_PARSE_FILE
|
||||
#define LANG_HOOKS_PARSE_FILE c_common_parse_file
|
||||
#undef LANG_HOOKS_MARK_TREE
|
||||
@ -165,13 +164,3 @@ objc_init_options ()
|
||||
{
|
||||
c_common_init_options (clk_objective_c);
|
||||
}
|
||||
|
||||
/* Post-switch processing. */
|
||||
|
||||
static void
|
||||
objc_post_options ()
|
||||
{
|
||||
c_common_post_options ();
|
||||
}
|
||||
|
||||
|
||||
|
@ -5190,7 +5190,7 @@ toplev_main (argc, argv)
|
||||
parse_options_and_default_flags (argc, argv);
|
||||
|
||||
/* Exit early if we can (e.g. -help). */
|
||||
if (!exit_after_options)
|
||||
if (!errorcount && !exit_after_options)
|
||||
do_compile ();
|
||||
|
||||
if (errorcount || sorrycount)
|
||||
|
Loading…
Reference in New Issue
Block a user