As can be seen in the second testcase, -fno-debug-cpp is actually
implemented the same as -fdebug-cpp and so doesn't turn the debugging
off.
The following patch fixes that.
2023-12-07 Andrew Pinski <pinskia@gmail.com>
Jakub Jelinek <jakub@redhat.com>
PR preprocessor/111965
gcc/c-family/
* c-opts.cc (c_common_handle_option) <case OPT_fdebug_cpp>: Set
cpp_opts->debug to value rather than 1.
gcc/testsuite/
* gcc.dg/cpp/pr111965-1.c: New test.
* gcc.dg/cpp/pr111965-2.c: New test.
break;
case OPT_fdebug_cpp:
- cpp_opts->debug = 1;
+ cpp_opts->debug = value;
break;
case OPT_ftrack_macro_expansion:
--- /dev/null
+/* PR preprocessor/111965
+ { dg-do preprocess }
+ { dg-options "-fdebug-cpp" }
+ { dg-final { scan-file pr111965-1.i "P:<built-in>;F:<NULL>;" } } */
+int x;
--- /dev/null
+/* PR preprocessor/111965
+ { dg-do preprocess }
+ { dg-options "-fdebug-cpp -fno-debug-cpp" }
+ { dg-final { scan-file-not pr111965-2.i "P:<built-in>;F:<NULL>;" } } */
+int x;