]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
c++: more modules and -M
authorJason Merrill <jason@redhat.com>
Wed, 9 Oct 2024 16:28:46 +0000 (12:28 -0400)
committerJason Merrill <jason@redhat.com>
Wed, 9 Oct 2024 21:28:35 +0000 (17:28 -0400)
In r15-4119-gc877a27f04f648 I told preprocess_file to use the
directives-only scan with modules, but it seems that I also need to set the
cpp_option so that communication between _cpp_handle_directive and
scan_translation_unit_directives_only works properly in
c-c++-common/cpp/embed-6.c.

gcc/c-family/ChangeLog:

* c-ppoutput.cc (preprocess_file): Set directives_only flag.

gcc/c-family/c-ppoutput.cc

index 374252bb4f377fd9003750e59a3cb709a986affa..e2c38cbd9ebbc76738af00c2caca24f620e91426 100644 (file)
@@ -93,8 +93,11 @@ preprocess_file (cpp_reader *pfile)
   if (flag_no_output && pfile->buffer)
     {
       if (flag_modules)
-       /* For macros from imported headers we need directives_only_cb.  */
-       scan_translation_unit_directives_only (pfile);
+       {
+         /* For macros from imported headers we need directives_only_cb.  */
+         cpp_get_options (pfile)->directives_only = true;
+         scan_translation_unit_directives_only (pfile);
+       }
       else
        {
          /* Scan -included buffers, then the main file.  */