/usr/src/gcc-6/debian/patches/pr72813.diff is in gcc-6-source 6.4.0-17ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | # DP: Fix PR c++/72813, taken from the trunk.
gcc/c/
2017-01-11 Jakub Jelinek <jakub@redhat.com>
PR c++/72813
* c-decl.c (pop_file_scope): Set flag_syntax_only to 1 after writing
PCH file.
gcc/
2017-01-11 Jakub Jelinek <jakub@redhat.com>
PR c++/72813
* gcc.c (default_compilers): Don't add -o %g.s for -S -save-temps
of c-header.
gcc/cp/
2017-01-11 Jakub Jelinek <jakub@redhat.com>
PR c++/72813
* decl2.c (c_parse_final_cleanups): Set flag_syntax_only to 1 after
writing PCH file.
Index: b/src/gcc/c/c-decl.c
===================================================================
--- a/src/gcc/c/c-decl.c
+++ b/src/gcc/c/c-decl.c
@@ -1418,6 +1418,8 @@ pop_file_scope (void)
if (pch_file)
{
c_common_write_pch ();
+ /* Ensure even the callers don't try to finalize the CU. */
+ flag_syntax_only = 1;
return;
}
Index: b/src/gcc/gcc.c
===================================================================
--- a/src/gcc/gcc.c
+++ b/src/gcc/gcc.c
@@ -1317,7 +1317,7 @@ static const struct compiler default_com
%(cpp_options) -o %{save-temps*:%b.i} %{!save-temps*:%g.i} \n\
cc1 -fpreprocessed %{save-temps*:%b.i} %{!save-temps*:%g.i} \
%(cc1_options)\
- %{!fsyntax-only:-o %g.s \
+ %{!fsyntax-only:%{!S:-o %g.s} \
%{!fdump-ada-spec*:%{!o*:--output-pch=%i.gch}\
%W{o*:--output-pch=%*}}%V}}\
%{!save-temps*:%{!traditional-cpp:%{!no-integrated-cpp:\
Index: b/src/gcc/cp/decl2.c
===================================================================
--- a/src/gcc/cp/decl2.c
+++ b/src/gcc/cp/decl2.c
@@ -4558,6 +4558,8 @@ c_parse_final_cleanups (void)
DECL_ASSEMBLER_NAME (node->decl);
c_common_write_pch ();
dump_tu ();
+ /* Ensure even the callers don't try to finalize the CU. */
+ flag_syntax_only = 1;
return;
}
|