aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2010-10-12 12:25:16 +0100
committerJoseph Myers <jsm28@gcc.gnu.org>2010-10-12 12:25:16 +0100
commitf938f60cb6146e4f9b6a2e9ef8c0b8be12da56ff (patch)
tree613335312107799d45a0405c8cd02ce350389985
parentbeacce027435fb068f0edcb0a0e094ab6630ff01 (diff)
downloadgcc-f938f60cb6146e4f9b6a2e9ef8c0b8be12da56ff.zip
gcc-f938f60cb6146e4f9b6a2e9ef8c0b8be12da56ff.tar.gz
gcc-f938f60cb6146e4f9b6a2e9ef8c0b8be12da56ff.tar.bz2
flag-types.h: New.
* flag-types.h: New. * Makefile.in (TH_H): Include $(OPTIONS_H) instead of $(FLAGS_H). (FLAGS_H): Include flag-types.h. Include $(OPTIONS_H) instead of options.h. (OPTIONS_H): Define. (c-family/c-opts.o, lto-opts.o, opts.o): Use $(OPTIONS_H) instead of options.h. * configure.ac (tm_include_list): Include options.h not flags.h. * configure: Regenerate. * flags.h: Include flag-types.h. Include options.h at top of file again. (enum debug_info_type, enum debug_info_level, enum debug_info_usage, enum symbol_visibility, struct visibility_flags, enum ira_algorithm, enum ira_region, enum excess_precision, enum graph_dump_types, enum stack_check_type, enum warn_strict_overflow_code): Move to flag-types.h * opth-gen.awk: Include flag-types.h in options.h. ada: * gcc-interface/Make-lang.in (ada/misc.o): Use $(OPTIONS_H) instead of options.h. java: * Make-lang.in (java/lang.o): Use $(OPTIONS_H) instead of options.h. From-SVN: r165362
-rw-r--r--gcc/ChangeLog20
-rw-r--r--gcc/Makefile.in11
-rw-r--r--gcc/ada/ChangeLog5
-rw-r--r--gcc/ada/gcc-interface/Make-lang.in2
-rwxr-xr-xgcc/configure2
-rw-r--r--gcc/configure.ac2
-rw-r--r--gcc/flag-types.h155
-rw-r--r--gcc/flags.h134
-rw-r--r--gcc/java/ChangeLog5
-rw-r--r--gcc/java/Make-lang.in2
-rw-r--r--gcc/opth-gen.awk2
11 files changed, 199 insertions, 141 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8d8bb3a..bd5743d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,23 @@
+2010-10-12 Joseph Myers <joseph@codesourcery.com>
+
+ * flag-types.h: New.
+ * Makefile.in (TH_H): Include $(OPTIONS_H) instead of $(FLAGS_H).
+ (FLAGS_H): Include flag-types.h. Include $(OPTIONS_H) instead of
+ options.h.
+ (OPTIONS_H): Define.
+ (c-family/c-opts.o, lto-opts.o, opts.o): Use $(OPTIONS_H) instead
+ of options.h.
+ * configure.ac (tm_include_list): Include options.h not flags.h.
+ * configure: Regenerate.
+ * flags.h: Include flag-types.h. Include options.h at top of file
+ again.
+ (enum debug_info_type, enum debug_info_level, enum
+ debug_info_usage, enum symbol_visibility, struct visibility_flags,
+ enum ira_algorithm, enum ira_region, enum excess_precision, enum
+ graph_dump_types, enum stack_check_type, enum
+ warn_strict_overflow_code): Move to flag-types.h
+ * opth-gen.awk: Include flag-types.h in options.h.
+
2010-10-12 Jakub Jelinek <jakub@redhat.com>
* expr.c (store_expr): Share code for STRING_CST and
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index ddb6854..8118c06 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -823,7 +823,7 @@ CONFIG_H = config.h $(host_xm_file_list)
TCONFIG_H = tconfig.h $(xm_file_list)
TM_P_H = tm_p.h $(tm_p_file_list)
GTM_H = tm.h $(tm_file_list) insn-constants.h
-TM_H = $(GTM_H) insn-flags.h $(FLAGS_H)
+TM_H = $(GTM_H) insn-flags.h $(OPTIONS_H)
# Variables for version information.
BASEVER := $(srcdir)/BASE-VER # 4.x.y
@@ -898,7 +898,8 @@ DEMANGLE_H = $(srcdir)/../include/demangle.h
RECOG_H = recog.h
ALIAS_H = alias.h coretypes.h
EMIT_RTL_H = emit-rtl.h
-FLAGS_H = flags.h coretypes.h options.h
+FLAGS_H = flags.h coretypes.h flag-types.h $(OPTIONS_H)
+OPTIONS_H = options.h flag-types.h
FUNCTION_H = function.h $(TREE_H) $(HASHTAB_H) vecprim.h $(TM_H)
EXPR_H = expr.h insn-config.h $(FUNCTION_H) $(RTL_H) $(FLAGS_H) $(TREE_H) $(MACHMODE_H) $(EMIT_RTL_H)
OPTABS_H = optabs.h insn-codes.h
@@ -2126,7 +2127,7 @@ c-family/c-omp.o : c-family/c-omp.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
c-family/c-opts.o : c-family/c-opts.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TREE_H) $(C_PRAGMA_H) $(FLAGS_H) $(TOPLEV_H) langhooks.h \
$(DIAGNOSTIC_H) intl.h debug.h $(C_COMMON_H) \
- opts.h options.h $(MKDEPS_H) incpath.h cppdefault.h
+ opts.h $(OPTIONS_H) $(MKDEPS_H) incpath.h cppdefault.h
$(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
$< $(OUTPUT_OPTION) @TARGET_SYSTEM_ROOT_DEFINE@
@@ -2327,7 +2328,7 @@ lto-symtab.o: lto-symtab.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
toplev.h $(TREE_H) $(GIMPLE_H) $(GGC_H) $(LAMBDA_H) $(HASHTAB_H) \
$(LTO_STREAMER_H) $(LINKER_PLUGIN_API_H) gt-lto-symtab.h
lto-opts.o: lto-opts.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
- $(HASHTAB_H) $(GGC_H) $(BITMAP_H) $(FLAGS_H) opts.h options.h \
+ $(HASHTAB_H) $(GGC_H) $(BITMAP_H) $(FLAGS_H) opts.h $(OPTIONS_H) \
$(TARGET_H) $(TOPLEV_H) $(DIAGNOSTIC_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) \
@@ -2819,7 +2820,7 @@ fold-const.o : fold-const.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
$(GIMPLE_H) realmpfr.h $(TREE_FLOW_H)
diagnostic.o : diagnostic.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
version.h $(INPUT_H) intl.h $(DIAGNOSTIC_H) diagnostic.def
-opts.o : opts.c opts.h options.h $(TOPLEV_H) $(DIAGNOSTIC_CORE_H) $(CONFIG_H) $(SYSTEM_H) \
+opts.o : opts.c opts.h $(OPTIONS_H) $(TOPLEV_H) $(DIAGNOSTIC_CORE_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) \
$(FLAGS_H) $(PARAMS_H) $(TREE_PASS_H) $(DBGCNT_H) debug.h \
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index b7fe85f..1cada03 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,8 @@
+2010-10-12 Joseph Myers <joseph@codesourcery.com>
+
+ * gcc-interface/Make-lang.in (ada/misc.o): Use $(OPTIONS_H)
+ instead of options.h.
+
2010-10-12 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi: Clarify that 'Old can be used in preconditions and
diff --git a/gcc/ada/gcc-interface/Make-lang.in b/gcc/ada/gcc-interface/Make-lang.in
index 6bbeb4a..6ae31c3 100644
--- a/gcc/ada/gcc-interface/Make-lang.in
+++ b/gcc/ada/gcc-interface/Make-lang.in
@@ -1234,7 +1234,7 @@ ada/decl.o : ada/gcc-interface/decl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
ada/misc.o : ada/gcc-interface/misc.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(TM_H) $(TREE_H) $(DIAGNOSTIC_H) $(TARGET_H) $(FUNCTION_H) \
$(FLAGS_H) debug.h toplev.h langhooks.h \
- $(LANGHOOKS_DEF_H) opts.h options.h $(TREE_INLINE_H) $(PLUGIN_H) \
+ $(LANGHOOKS_DEF_H) opts.h $(OPTIONS_H) $(TREE_INLINE_H) $(PLUGIN_H) \
ada/gcc-interface/ada.h ada/adadecode.h ada/types.h ada/atree.h \
ada/elists.h ada/namet.h ada/nlists.h ada/stringt.h ada/uintp.h ada/fe.h \
ada/sinfo.h ada/einfo.h $(ADA_TREE_H) ada/gcc-interface/gigi.h \
diff --git a/gcc/configure b/gcc/configure
index 27962d5..68cb29e 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -10843,7 +10843,7 @@ tmake_file="${tmake_file_}"
out_object_file=`basename $out_file .c`.o
tm_file_list="options.h"
-tm_include_list="flags.h insn-constants.h"
+tm_include_list="options.h insn-constants.h"
for f in $tm_file; do
case $f in
./* )
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 1534f7f..9dd9c5d 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -1609,7 +1609,7 @@ tmake_file="${tmake_file_}"
out_object_file=`basename $out_file .c`.o
tm_file_list="options.h"
-tm_include_list="flags.h insn-constants.h"
+tm_include_list="options.h insn-constants.h"
for f in $tm_file; do
case $f in
./* )
diff --git a/gcc/flag-types.h b/gcc/flag-types.h
new file mode 100644
index 0000000..1a8edec
--- /dev/null
+++ b/gcc/flag-types.h
@@ -0,0 +1,155 @@
+/* Compilation switch flag type definitions for GCC.
+ Copyright (C) 1987, 1988, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002,
+ 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_FLAG_TYPES_H
+#define GCC_FLAG_TYPES_H
+
+enum debug_info_type
+{
+ NO_DEBUG, /* Write no debug info. */
+ DBX_DEBUG, /* Write BSD .stabs for DBX (using dbxout.c). */
+ SDB_DEBUG, /* Write COFF for (old) SDB (using sdbout.c). */
+ DWARF2_DEBUG, /* Write Dwarf v2 debug info (using dwarf2out.c). */
+ XCOFF_DEBUG, /* Write IBM/Xcoff debug info (using dbxout.c). */
+ VMS_DEBUG, /* Write VMS debug info (using vmsdbgout.c). */
+ VMS_AND_DWARF2_DEBUG /* Write VMS debug info (using vmsdbgout.c).
+ and DWARF v2 debug info (using dwarf2out.c). */
+};
+
+enum debug_info_level
+{
+ DINFO_LEVEL_NONE, /* Write no debugging info. */
+ DINFO_LEVEL_TERSE, /* Write minimal info to support tracebacks only. */
+ DINFO_LEVEL_NORMAL, /* Write info for all declarations (and line table). */
+ DINFO_LEVEL_VERBOSE /* Write normal info plus #define/#undef info. */
+};
+
+/* A major contribution to object and executable size is debug
+ information size. A major contribution to debug information
+ size is struct descriptions replicated in several object files.
+ The following function determines whether or not debug information
+ should be generated for a given struct. The indirect parameter
+ indicates that the struct is being handled indirectly, via
+ a pointer. See opts.c for the implementation. */
+
+enum debug_info_usage
+{
+ DINFO_USAGE_DFN, /* A struct definition. */
+ DINFO_USAGE_DIR_USE, /* A direct use, such as the type of a variable. */
+ DINFO_USAGE_IND_USE, /* An indirect use, such as through a pointer. */
+ DINFO_USAGE_NUM_ENUMS /* The number of enumerators. */
+};
+
+/* Enumerate visibility settings. This is deliberately ordered from most
+ to least visibility. */
+#ifndef SYMBOL_VISIBILITY_DEFINED
+#define SYMBOL_VISIBILITY_DEFINED
+enum symbol_visibility
+{
+ VISIBILITY_DEFAULT,
+ VISIBILITY_PROTECTED,
+ VISIBILITY_HIDDEN,
+ VISIBILITY_INTERNAL
+};
+#endif
+
+struct visibility_flags
+{
+ unsigned inpragma : 1; /* True when in #pragma GCC visibility. */
+ unsigned inlines_hidden : 1; /* True when -finlineshidden in effect. */
+};
+
+/* The algorithm used for the integrated register allocator (IRA). */
+enum ira_algorithm
+{
+ IRA_ALGORITHM_CB,
+ IRA_ALGORITHM_PRIORITY
+};
+
+/* The regions used for the integrated register allocator (IRA). */
+enum ira_region
+{
+ IRA_REGION_ONE,
+ IRA_REGION_ALL,
+ IRA_REGION_MIXED
+};
+
+/* The options for excess precision. */
+enum excess_precision
+{
+ EXCESS_PRECISION_DEFAULT,
+ EXCESS_PRECISION_FAST,
+ EXCESS_PRECISION_STANDARD
+};
+
+/* Selection of the graph form. */
+enum graph_dump_types
+{
+ no_graph = 0,
+ vcg
+};
+
+/* Type of stack check. */
+enum stack_check_type
+{
+ /* Do not check the stack. */
+ NO_STACK_CHECK = 0,
+
+ /* Check the stack generically, i.e. assume no specific support
+ from the target configuration files. */
+ GENERIC_STACK_CHECK,
+
+ /* Check the stack and rely on the target configuration files to
+ check the static frame of functions, i.e. use the generic
+ mechanism only for dynamic stack allocations. */
+ STATIC_BUILTIN_STACK_CHECK,
+
+ /* Check the stack and entirely rely on the target configuration
+ files, i.e. do not use the generic mechanism at all. */
+ FULL_BUILTIN_STACK_CHECK
+};
+
+/* Names for the different levels of -Wstrict-overflow=N. The numeric
+ values here correspond to N. */
+
+enum warn_strict_overflow_code
+{
+ /* Overflow warning that should be issued with -Wall: a questionable
+ construct that is easy to avoid even when using macros. Example:
+ folding (x + CONSTANT > x) to 1. */
+ WARN_STRICT_OVERFLOW_ALL = 1,
+ /* Overflow warning about folding a comparison to a constant because
+ of undefined signed overflow, other than cases covered by
+ WARN_STRICT_OVERFLOW_ALL. Example: folding (abs (x) >= 0) to 1
+ (this is false when x == INT_MIN). */
+ WARN_STRICT_OVERFLOW_CONDITIONAL = 2,
+ /* Overflow warning about changes to comparisons other than folding
+ them to a constant. Example: folding (x + 1 > 1) to (x > 0). */
+ WARN_STRICT_OVERFLOW_COMPARISON = 3,
+ /* Overflow warnings not covered by the above cases. Example:
+ folding ((x * 10) / 5) to (x * 2). */
+ WARN_STRICT_OVERFLOW_MISC = 4,
+ /* Overflow warnings about reducing magnitude of constants in
+ comparison. Example: folding (x + 2 > y) to (x + 1 >= y). */
+ WARN_STRICT_OVERFLOW_MAGNITUDE = 5
+};
+
+#endif /* ! GCC_FLAG_TYPES_H */
diff --git a/gcc/flags.h b/gcc/flags.h
index 99b69812e..1125440 100644
--- a/gcc/flags.h
+++ b/gcc/flags.h
@@ -23,54 +23,20 @@ along with GCC; see the file COPYING3. If not see
#define GCC_FLAGS_H
#include "coretypes.h"
+#include "flag-types.h"
+#include "options.h"
#if !defined(IN_LIBGCC2) && !defined(IN_TARGET_LIBS) && !defined(IN_RTS)
-enum debug_info_type
-{
- NO_DEBUG, /* Write no debug info. */
- DBX_DEBUG, /* Write BSD .stabs for DBX (using dbxout.c). */
- SDB_DEBUG, /* Write COFF for (old) SDB (using sdbout.c). */
- DWARF2_DEBUG, /* Write Dwarf v2 debug info (using dwarf2out.c). */
- XCOFF_DEBUG, /* Write IBM/Xcoff debug info (using dbxout.c). */
- VMS_DEBUG, /* Write VMS debug info (using vmsdbgout.c). */
- VMS_AND_DWARF2_DEBUG /* Write VMS debug info (using vmsdbgout.c).
- and DWARF v2 debug info (using dwarf2out.c). */
-};
-
/* Specify which kind of debugging info to generate. */
extern enum debug_info_type write_symbols;
/* Names of debug_info_type, for error messages. */
extern const char *const debug_type_names[];
-enum debug_info_level
-{
- DINFO_LEVEL_NONE, /* Write no debugging info. */
- DINFO_LEVEL_TERSE, /* Write minimal info to support tracebacks only. */
- DINFO_LEVEL_NORMAL, /* Write info for all declarations (and line table). */
- DINFO_LEVEL_VERBOSE /* Write normal info plus #define/#undef info. */
-};
-
/* Specify how much debugging info to generate. */
extern enum debug_info_level debug_info_level;
-/* A major contribution to object and executable size is debug
- information size. A major contribution to debug information
- size is struct descriptions replicated in several object files.
- The following function determines whether or not debug information
- should be generated for a given struct. The indirect parameter
- indicates that the struct is being handled indirectly, via
- a pointer. See opts.c for the implementation. */
-
-enum debug_info_usage
-{
- DINFO_USAGE_DFN, /* A struct definition. */
- DINFO_USAGE_DIR_USE, /* A direct use, such as the type of a variable. */
- DINFO_USAGE_IND_USE, /* An indirect use, such as through a pointer. */
- DINFO_USAGE_NUM_ENUMS /* The number of enumerators. */
-};
-
extern bool should_emit_struct_debug (tree type_decl, enum debug_info_usage);
extern void set_struct_debug_option (const char *value);
@@ -83,28 +49,9 @@ extern bool use_gnu_debug_info_extensions;
an actual variable not a macro. */
extern int flag_compare_debug;
-/* Enumerate visibility settings. This is deliberately ordered from most
- to least visibility. */
-#ifndef SYMBOL_VISIBILITY_DEFINED
-#define SYMBOL_VISIBILITY_DEFINED
-enum symbol_visibility
-{
- VISIBILITY_DEFAULT,
- VISIBILITY_PROTECTED,
- VISIBILITY_HIDDEN,
- VISIBILITY_INTERNAL
-};
-#endif
-
/* The default visibility for all symbols (unless overridden). */
extern enum symbol_visibility default_visibility;
-struct visibility_flags
-{
- unsigned inpragma : 1; /* True when in #pragma GCC visibility. */
- unsigned inlines_hidden : 1; /* True when -finlineshidden in effect. */
-};
-
/* Global visibility options. */
extern struct visibility_flags visibility_options;
@@ -189,29 +136,6 @@ extern int flag_next_runtime;
extern int flag_dump_rtl_in_asm;
-/* The algorithm used for the integrated register allocator (IRA). */
-enum ira_algorithm
-{
- IRA_ALGORITHM_CB,
- IRA_ALGORITHM_PRIORITY
-};
-
-/* The regions used for the integrated register allocator (IRA). */
-enum ira_region
-{
- IRA_REGION_ONE,
- IRA_REGION_ALL,
- IRA_REGION_MIXED
-};
-
-/* The options for excess precision. */
-enum excess_precision
-{
- EXCESS_PRECISION_DEFAULT,
- EXCESS_PRECISION_FAST,
- EXCESS_PRECISION_STANDARD
-};
-
/* The excess precision specified on the command line, or defaulted by
the front end. */
extern enum excess_precision flag_excess_precision_cmdline;
@@ -263,33 +187,8 @@ extern struct target_flag_state *this_target_flag_state;
/* Nonzero if we dump in VCG format, not plain text. */
extern int dump_for_graph;
-/* Selection of the graph form. */
-enum graph_dump_types
-{
- no_graph = 0,
- vcg
-};
extern enum graph_dump_types graph_dump_format;
-/* Type of stack check. */
-enum stack_check_type
-{
- /* Do not check the stack. */
- NO_STACK_CHECK = 0,
-
- /* Check the stack generically, i.e. assume no specific support
- from the target configuration files. */
- GENERIC_STACK_CHECK,
-
- /* Check the stack and rely on the target configuration files to
- check the static frame of functions, i.e. use the generic
- mechanism only for dynamic stack allocations. */
- STATIC_BUILTIN_STACK_CHECK,
-
- /* Check the stack and entirely rely on the target configuration
- files, i.e. do not use the generic mechanism at all. */
- FULL_BUILTIN_STACK_CHECK
-};
extern enum stack_check_type flag_stack_check;
/* Returns TRUE if generated code should match ABI version N or
@@ -326,38 +225,9 @@ extern bool flag_instrument_functions_exclude_p (tree fndecl);
/* True if pointer types have undefined overflow. */
#define POINTER_TYPE_OVERFLOW_UNDEFINED (flag_strict_overflow)
-/* Names for the different levels of -Wstrict-overflow=N. The numeric
- values here correspond to N. */
-
-enum warn_strict_overflow_code
-{
- /* Overflow warning that should be issued with -Wall: a questionable
- construct that is easy to avoid even when using macros. Example:
- folding (x + CONSTANT > x) to 1. */
- WARN_STRICT_OVERFLOW_ALL = 1,
- /* Overflow warning about folding a comparison to a constant because
- of undefined signed overflow, other than cases covered by
- WARN_STRICT_OVERFLOW_ALL. Example: folding (abs (x) >= 0) to 1
- (this is false when x == INT_MIN). */
- WARN_STRICT_OVERFLOW_CONDITIONAL = 2,
- /* Overflow warning about changes to comparisons other than folding
- them to a constant. Example: folding (x + 1 > 1) to (x > 0). */
- WARN_STRICT_OVERFLOW_COMPARISON = 3,
- /* Overflow warnings not covered by the above cases. Example:
- folding ((x * 10) / 5) to (x * 2). */
- WARN_STRICT_OVERFLOW_MISC = 4,
- /* Overflow warnings about reducing magnitude of constants in
- comparison. Example: folding (x + 2 > y) to (x + 1 >= y). */
- WARN_STRICT_OVERFLOW_MAGNITUDE = 5
-};
-
/* Whether to emit an overflow warning whose code is C. */
#define issue_strict_overflow_warning(c) (warn_strict_overflow >= (int) (c))
#endif
-/* This is included last because options may use types declared
- above. */
-#include "options.h"
-
#endif /* ! GCC_FLAGS_H */
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 9a33704..a7edd3b 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,8 @@
+2010-10-12 Joseph Myers <joseph@codesourcery.com>
+
+ * Make-lang.in (java/lang.o): Use $(OPTIONS_H) instead of
+ options.h.
+
2010-10-11 Nathan Froyd <froydnj@codesourcery.com>
* decl.c (java_init_decl_processing): Use build_function_type_list
diff --git a/gcc/java/Make-lang.in b/gcc/java/Make-lang.in
index d0d17cb..7b7ed93 100644
--- a/gcc/java/Make-lang.in
+++ b/gcc/java/Make-lang.in
@@ -302,7 +302,7 @@ java/jvgenmain.o: java/jvgenmain.c $(CONFIG_H) $(JAVA_TREE_H) $(SYSTEM_H) \
coretypes.h $(TM_H) intl.h
java/lang.o: java/lang.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h input.h \
toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(DIAGNOSTIC_H) \
- langhooks.h $(LANGHOOKS_DEF_H) gt-java-lang.h opts.h options.h \
+ langhooks.h $(LANGHOOKS_DEF_H) gt-java-lang.h opts.h $(OPTIONS_H) \
$(TARGET_H)
java/mangle.o: java/mangle.c $(CONFIG_H) java/jcf.h $(JAVA_TREE_H) $(SYSTEM_H) \
coretypes.h $(TM_H) toplev.h $(GGC_H) gt-java-mangle.h $(LANGHOOKS_DEF_H)
diff --git a/gcc/opth-gen.awk b/gcc/opth-gen.awk
index 240bc2c..677225e 100644
--- a/gcc/opth-gen.awk
+++ b/gcc/opth-gen.awk
@@ -70,6 +70,8 @@ print ""
print "#ifndef OPTIONS_H"
print "#define OPTIONS_H"
print ""
+print "#include \"flag-types.h\""
+print ""
have_save = 0;