Fix PR 67665: ICE when passing two empty files directly to cc1 with -g

Andrew Pinski pinskia@gmail.com
Wed Jan 13 08:27:00 GMT 2016


Hi,
  The support -combine was removed a while back but cc1 still accepts
more than one file if directly invoked.  The support for multiple
files has bit-rotten inside the C front-end now too.  This patch now
errors out when invoked with more than one file instead of crashing
later.

OK?  Bootstrapped and tested on aarch64-linux-gnu with no regressions.

Thanks,
Andrew Pinski

c-family/ChangeLog:
* c-opts.c (c_common_post_options): Move the error message about "two
or more source files" such that it is unconditional.
-------------- next part --------------
Index: c-family/c-opts.c
===================================================================
--- c-family/c-opts.c	(revision 232313)
+++ c-family/c-opts.c	(working copy)
@@ -928,6 +928,10 @@ c_common_post_options (const char **pfil
 #endif
     }
 
+  if (num_in_fnames > 1)
+    error ("too many filenames given.  Type %s --help for usage",
+	   progname);
+
   if (flag_preprocess_only)
     {
       /* Open the output now.  We must do so even if flag_no_output is
@@ -944,10 +948,6 @@ c_common_post_options (const char **pfil
 	  return false;
 	}
 
-      if (num_in_fnames > 1)
-	error ("too many filenames given.  Type %s --help for usage",
-	       progname);
-
       init_pp_output (out_stream);
     }
   else


More information about the Gcc-patches mailing list