From: Jakub Jelinek Date: Wed, 1 May 2002 20:07:36 +0000 (+0200) Subject: cppinit.c (cpp_handle_option): Don't set no_output here... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1651cc96a4bbe8c470fe913e4aa5538dd12631fa;p=gcc.git cppinit.c (cpp_handle_option): Don't set no_output here... * cppinit.c (cpp_handle_option) [-dM]: Don't set no_output here... (cpp_post_options): ...but here. Disable -dD, -dN and -dI when -M -or -MM is in effect. From-SVN: r53013 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 24811791c4c..0a2d1c5361d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-05-01 Jakub Jelinek + + * cppinit.c (cpp_handle_option) [-dM]: Don't set no_output here... + (cpp_post_options): ...but here. Disable -dD, -dN and -dI when + -M -or -MM is in effect. + 2002-05-01 Zack Weinberg * config.gcc: Correct test of --enable-obsolete. Obsolete all diff --git a/gcc/cppinit.c b/gcc/cppinit.c index c4f594234b5..cee75713447 100644 --- a/gcc/cppinit.c +++ b/gcc/cppinit.c @@ -1549,7 +1549,6 @@ cpp_handle_option (pfile, argc, argv, ignore) { case 'M': CPP_OPTION (pfile, dump_macros) = dump_only; - CPP_OPTION (pfile, no_output) = 1; break; case 'N': CPP_OPTION (pfile, dump_macros) = dump_names; @@ -1820,6 +1819,21 @@ cpp_post_options (pfile) if (CPP_OPTION (pfile, preprocessed)) pfile->state.prevent_expansion = 1; + /* -dM makes no normal output. This is set here so that -dM -dD + works as expected. */ + 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. */ + if (CPP_OPTION (pfile, no_output)) + { + if (CPP_OPTION (pfile, dump_macros) != dump_only) + CPP_OPTION (pfile, dump_macros) = dump_none; + 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. */