Do not error when -E provided (PR pch/78970).
authorMartin Liska <mliska@suse.cz>
Mon, 9 Jan 2017 15:24:35 +0000 (16:24 +0100)
committerMartin Liska <marxin@gcc.gnu.org>
Mon, 9 Jan 2017 15:24:35 +0000 (15:24 +0000)
2017-01-09  Martin Liska  <mliska@suse.cz>

PR pch/78970
* gcc.c (driver_handle_option): Handle OPT_E and set
have_E.
(lookup_compiler): Do not show error message with have_E.

From-SVN: r244227

gcc/ChangeLog
gcc/gcc.c

index 860d7c3..3201210 100644 (file)
@@ -1,3 +1,10 @@
+2017-01-09  Martin Liska  <mliska@suse.cz>
+
+       PR pch/78970
+       * gcc.c (driver_handle_option): Handle OPT_E and set
+       have_E.
+       (lookup_compiler): Do not show error message with have_E.
+
 2017-01-09  Jakub Jelinek  <jakub@redhat.com>
 
        PR tree-optimization/78938
index 1d2ed99..98568bc 100644 (file)
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1931,6 +1931,9 @@ static int have_c = 0;
 /* Was the option -o passed.  */
 static int have_o = 0;
 
+/* Was the option -E passed.  */
+static int have_E = 0;
+
 /* Pointer to output file name passed in with -o. */
 static const char *output_file = 0;
 
@@ -4067,6 +4070,10 @@ driver_handle_option (struct gcc_options *opts,
       validated = true;
       break;
 
+    case OPT_E:
+      have_E = true;
+      break;
+
     case OPT_x:
       spec_lang = arg;
       if (!strcmp (spec_lang, "none"))
@@ -8328,7 +8335,8 @@ lookup_compiler (const char *name, size_t length, const char *language)
          {
            if (name != NULL && strcmp (name, "-") == 0
                && (strcmp (cp->suffix, "@c-header") == 0
-                   || strcmp (cp->suffix, "@c++-header") == 0))
+                   || strcmp (cp->suffix, "@c++-header") == 0)
+               && !have_E)
              fatal_error (input_location,
                           "cannot use %<-%> as input filename for a "
                           "precompiled header");