aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2000-11-13 21:22:10 +0000
committerHans-Peter Nilsson <hp@gcc.gnu.org>2000-11-13 21:22:10 +0000
commitd9068c61428f89ce1db4bae6f5adb6acbd8b5b6b (patch)
treefd2583d1bff6b5fbb21a491a9da567cce4465262 /gcc
parent51d61f8686efee2132bf91c5a89993c1cbf103c7 (diff)
downloadgcc-d9068c61428f89ce1db4bae6f5adb6acbd8b5b6b.zip
gcc-d9068c61428f89ce1db4bae6f5adb6acbd8b5b6b.tar.gz
gcc-d9068c61428f89ce1db4bae6f5adb6acbd8b5b6b.tar.bz2
c-lex.c (cb_leave_file): Harmonize conditions and order of statements to those of process_directive for...
* c-lex.c (cb_leave_file): Harmonize conditions and order of statements to those of process_directive for (action == act_pop). * collect2.c (main): Pass on -B options from COLLECT_GCC_OPTIONS. * local-alloc.c (equiv_init_movable_p): References to CC0 are not movable. From-SVN: r37438
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog10
-rw-r--r--gcc/c-lex.c44
-rw-r--r--gcc/collect2.c9
-rw-r--r--gcc/local-alloc.c1
4 files changed, 44 insertions, 20 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bf184f5..86ce5ac 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,13 @@
+2000-11-13 Hans-Peter Nilsson <hp@axis.com>
+
+ * c-lex.c (cb_leave_file): Harmonize conditions and order of
+ statements to those of process_directive for (action == act_pop).
+
+ * collect2.c (main): Pass on -B options from COLLECT_GCC_OPTIONS.
+
+ * local-alloc.c (equiv_init_movable_p): References to CC0 are not
+ movable.
+
2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
* c-parse.in (stmts_and_decls): Deprecate use of label at end of
diff --git a/gcc/c-lex.c b/gcc/c-lex.c
index 0c4fa91..7f11604 100644
--- a/gcc/c-lex.c
+++ b/gcc/c-lex.c
@@ -728,30 +728,34 @@ cb_leave_file (pfile)
{
/* Bleah, need a better interface to this. */
const char *flags = cpp_syshdr_flags (pfile, CPP_BUFFER (pfile));
-#if 0
- if (indent_level != input_file_stack->indent_level)
- {
- warning_with_file_and_line
- (input_filename, lex_lineno,
- "This file contains more '%c's than '%c's.",
- indent_level > input_file_stack->indent_level ? '{' : '}',
- indent_level > input_file_stack->indent_level ? '}' : '{');
- }
-#endif
- /* We get called for the main buffer, but we mustn't pop it. */
+
if (input_file_stack->next)
- pop_srcloc ();
- in_system_header = (flags[0] != 0);
-#ifndef NO_IMPLICIT_EXTERN_C
- if (c_header_level && --c_header_level == 0)
{
- if (flags[2] != 0)
- warning ("badly nested C headers from preprocessor");
- --pending_lang_change;
- }
+#ifndef NO_IMPLICIT_EXTERN_C
+ if (c_header_level && --c_header_level == 0)
+ {
+ if (flags[2] != 0)
+ warning ("badly nested C headers from preprocessor");
+ --pending_lang_change;
+ }
#endif
+#if 0
+ if (indent_level != input_file_stack->indent_level)
+ {
+ warning_with_file_and_line
+ (input_filename, lex_lineno,
+ "This file contains more '%c's than '%c's.",
+ indent_level > input_file_stack->indent_level ? '{' : '}',
+ indent_level > input_file_stack->indent_level ? '}' : '{');
+ }
+#endif
+ /* We get called for the main buffer, but we mustn't pop it. */
+ pop_srcloc ();
+ debug_end_source_file (input_file_stack->line);
+ }
+
+ in_system_header = (flags[0] != 0);
lex_lineno = CPP_BUFFER (pfile)->lineno;
- debug_end_source_file (input_file_stack->line);
update_header_times (input_file_stack->name);
/* Hook for C++. */
diff --git a/gcc/collect2.c b/gcc/collect2.c
index 8277723..49cb0e7 100644
--- a/gcc/collect2.c
+++ b/gcc/collect2.c
@@ -1096,6 +1096,15 @@ main (argc, argv)
*c_ptr++ = obstack_copy0 (&permanent_obstack, q, strlen (q));
if (strncmp (q, "-shared", sizeof ("-shared") - 1) == 0)
shared_obj = 1;
+ if (*q == '-' && q[1] == 'B')
+ {
+ *c_ptr++ = obstack_copy0 (&permanent_obstack, q, strlen (q));
+ if (q[2] == 0)
+ {
+ q = extract_string (&p);
+ *c_ptr++ = obstack_copy0 (&permanent_obstack, q, strlen (q));
+ }
+ }
}
obstack_free (&temporary_obstack, temporary_firstobj);
*c_ptr++ = "-fno-exceptions";
diff --git a/gcc/local-alloc.c b/gcc/local-alloc.c
index 2315338..ac2183e 100644
--- a/gcc/local-alloc.c
+++ b/gcc/local-alloc.c
@@ -589,6 +589,7 @@ equiv_init_movable_p (x, regno)
case SET:
return equiv_init_movable_p (SET_SRC (x), regno);
+ case CC0:
case CLOBBER:
return 0;