diff options
author | neil <neil@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-07-02 22:28:18 +0000 |
---|---|---|
committer | neil <neil@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-07-02 22:28:18 +0000 |
commit | ed9cd839cd3c91ce9d733716865bf9cb471faaec (patch) | |
tree | 50a56a3007a634eb2f3f9e7037c166db420209e6 /gcc/cppinit.c | |
parent | 779c7d58f738f23c3bcbc24d69e405c20a7fe439 (diff) | |
download | gcc-ed9cd839cd3c91ce9d733716865bf9cb471faaec.tar.gz |
* cppinit.c (cpp_handle_option): Suppress warnings with an
implicit "-w" for "-M" and "-MM".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@55195 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cppinit.c')
-rw-r--r-- | gcc/cppinit.c | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/gcc/cppinit.c b/gcc/cppinit.c index 1df4bacb12b..db1314dd8f3 100644 --- a/gcc/cppinit.c +++ b/gcc/cppinit.c @@ -1532,10 +1532,12 @@ cpp_handle_option (pfile, argc, argv) or environment var dependency generation is used. */ CPP_OPTION (pfile, print_deps) = 2; CPP_OPTION (pfile, no_output) = 1; + CPP_OPTION (pfile, inhibit_warnings) = 1; break; case OPT_MM: CPP_OPTION (pfile, print_deps) = 1; CPP_OPTION (pfile, no_output) = 1; + CPP_OPTION (pfile, inhibit_warnings) = 1; break; case OPT_MF: CPP_OPTION (pfile, deps_file) = arg; @@ -1794,14 +1796,13 @@ cpp_post_options (pfile) if (CPP_OPTION (pfile, traditional)) CPP_OPTION (pfile, show_column) = 0; - /* -dM makes no normal output. This is set here so that -dM -dD - works as expected. */ + /* -dM and dependencies suppress normal output; do it here so that + the last -d[MDN] switch overrides earlier ones. */ if (CPP_OPTION (pfile, dump_macros) == dump_only) CPP_OPTION (pfile, no_output) = 1; - /* Disable -dD, -dN and -dI if we should make no normal output - (such as with -M). Allow -M -dM since some software relies on - this. */ + /* Disable -dD, -dN and -dI if normal output is suppressed. Allow + -dM since at least glibc relies on -M -dM to work. */ if (CPP_OPTION (pfile, no_output)) { if (CPP_OPTION (pfile, dump_macros) != dump_only) @@ -1809,17 +1810,16 @@ cpp_post_options (pfile) CPP_OPTION (pfile, dump_includes) = 0; } - /* We need to do this after option processing and before - cpp_start_read, as cppmain.c relies on the options->no_output to - set its callbacks correctly before calling cpp_start_read. */ + /* Intialize, and check environment variables for, dependency + output. */ init_dependency_output (pfile); - /* After checking the environment variables, check if -M or -MM has - not been specified, but other -M options have. */ - if (CPP_OPTION (pfile, print_deps) == 0 && - (CPP_OPTION (pfile, print_deps_missing_files) - || CPP_OPTION (pfile, deps_file) - || CPP_OPTION (pfile, deps_phony_targets))) + /* If we're not outputting dependencies, complain if other -M + options have been given. */ + if (!CPP_OPTION (pfile, print_deps) + && (CPP_OPTION (pfile, print_deps_missing_files) + || CPP_OPTION (pfile, deps_file) + || CPP_OPTION (pfile, deps_phony_targets))) cpp_error (pfile, DL_ERROR, "you must additionally specify either -M or -MM"); } |