This commit is contained in:
Jakub Jelinek 2022-01-25 20:13:48 +01:00
parent 671fc7ba16
commit 828c757f09
5 changed files with 52 additions and 26 deletions

1
.gitignore vendored
View File

@ -54,3 +54,4 @@
/gcc-11.2.1-20211018.tar.xz
/gcc-11.2.1-20211019.tar.xz
/gcc-11.2.1-20211203.tar.xz
/gcc-11.2.1-20220125.tar.xz

View File

@ -1,10 +1,10 @@
%global DATE 20211203
%global gitrev e41308252e835ddedcabfd4a98240080c6583a43
%global DATE 20220125
%global gitrev 1003f94c7cb486aee2ec3ee37ea8b919f908f019
%global gcc_version 11.2.1
%global gcc_major 11
# Note, gcc_release must be integer, if you want to add suffixes to
# %%{release}, append them after %%{gcc_release} on Release: line.
%global gcc_release 7
%global gcc_release 8
%global nvptx_tools_gitrev 5f6f343a302d620b0868edab376c00b15741e39e
%global newlib_cygwin_gitrev 50e2a63b04bdd018484605fbb954fd1bd5147fa0
%global _unpackaged_files_terminate_build 0
@ -3148,6 +3148,31 @@ end
%endif
%changelog
* Tue Jan 25 2022 Jakub Jelinek <jakub@redhat.com> 11.2.1-8
- update from releases/gcc-11-branch
- PRs ada/103538, analyzer/101962, bootstrap/103688, c++/85846, c++/95009,
c++/98394, c++/99911, c++/100493, c++/101715, c++/102229, c++/102933,
c++/103012, c++/103198, c++/103480, c++/103703, c++/103714,
c++/103758, c++/103783, c++/103831, c++/103912, c++/104055, c/97548,
c/101289, c/101537, c/103587, c/103881, d/103604, debug/103838,
debug/103874, fortran/67804, fortran/83079, fortran/101329,
fortran/101762, fortran/102332, fortran/102717, fortran/102787,
fortran/103411, fortran/103412, fortran/103418, fortran/103473,
fortran/103505, fortran/103588, fortran/103591, fortran/103606,
fortran/103607, fortran/103609, fortran/103610, fortran/103692,
fortran/103717, fortran/103718, fortran/103719, fortran/103776,
fortran/103777, fortran/103778, fortran/103782, fortran/103789,
ipa/101354, jit/103562, libfortran/103634, libstdc++/100017,
libstdc++/102994, libstdc++/103453, libstdc++/103501,
libstdc++/103549, libstdc++/103877, libstdc++/103919,
middle-end/101751, middle-end/102860, middle-end/103813, objc/103639,
preprocessor/89971, preprocessor/102432, rtl-optimization/102478,
rtl-optimization/103837, rtl-optimization/103860,
rtl-optimization/103908, sanitizer/102911, target/102347,
target/103465, target/103661, target/104172, target/104188,
tree-optimization/101615, tree-optimization/103523,
tree-optimization/103603, tree-optimization/103995
* Fri Dec 3 2021 Jakub Jelinek <jakub@redhat.com> 11.2.1-7
- update from releases/gcc-11-branch
- PRs ada/100486, c++/70796, c++/92746, c++/93286, c++/94490, c++/102642,

View File

@ -33,7 +33,7 @@ gcc/testsuite/
--- libcpp/macro.c.jj
+++ libcpp/macro.c
@@ -295,7 +295,7 @@ static cpp_context *next_context (cpp_reader *);
@@ -295,7 +295,7 @@ static cpp_context *next_context (cpp_re
static const cpp_token *padding_token (cpp_reader *, const cpp_token *);
static const cpp_token *new_string_token (cpp_reader *, uchar *, unsigned int);
static const cpp_token *stringify_arg (cpp_reader *, const cpp_token **,
@ -42,7 +42,7 @@ gcc/testsuite/
static void paste_all_tokens (cpp_reader *, const cpp_token *);
static bool paste_tokens (cpp_reader *, location_t,
const cpp_token **, const cpp_token *);
@@ -834,8 +834,7 @@ cpp_quote_string (uchar *dest, const uchar *src, unsigned int len)
@@ -826,8 +826,7 @@ cpp_quote_string (uchar *dest, const uch
/* Convert a token sequence FIRST to FIRST+COUNT-1 to a single string token
according to the rules of the ISO C #-operator. */
static const cpp_token *
@ -52,7 +52,7 @@ gcc/testsuite/
{
unsigned char *dest;
unsigned int i, escape_it, backslash_count = 0;
@@ -852,24 +851,6 @@ stringify_arg (cpp_reader *pfile, const cpp_token **first, unsigned int count,
@@ -844,24 +843,6 @@ stringify_arg (cpp_reader *pfile, const
{
const cpp_token *token = first[i];
@ -77,7 +77,7 @@ gcc/testsuite/
if (token->type == CPP_PADDING)
{
if (source == NULL
@@ -1003,6 +984,7 @@ paste_tokens (cpp_reader *pfile, location_t location,
@@ -995,6 +976,7 @@ paste_tokens (cpp_reader *pfile, locatio
return false;
}
@ -85,7 +85,7 @@ gcc/testsuite/
*plhs = lhs;
_cpp_pop_buffer (pfile);
return true;
@@ -1945,8 +1927,7 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
@@ -1937,8 +1919,7 @@ replace_args (cpp_reader *pfile, cpp_has
if (src->flags & STRINGIFY_ARG)
{
if (!arg->stringified)
@ -95,7 +95,7 @@ gcc/testsuite/
}
else if ((src->flags & PASTE_LEFT)
|| (src != macro->exp.tokens && (src[-1].flags & PASTE_LEFT)))
@@ -2066,11 +2047,46 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
@@ -2071,11 +2052,46 @@ replace_args (cpp_reader *pfile, cpp_has
{
unsigned int count
= start ? paste_flag - start : tokens_buff_count (buff);

View File

@ -66,7 +66,7 @@ gcc/testsuite/
/* The state variable:
0 means not parsing
@@ -284,7 +294,8 @@ static _cpp_buff *collect_args (cpp_reader *, const cpp_hashnode *,
@@ -284,7 +294,8 @@ static _cpp_buff *collect_args (cpp_read
static cpp_context *next_context (cpp_reader *);
static const cpp_token *padding_token (cpp_reader *, const cpp_token *);
static const cpp_token *new_string_token (cpp_reader *, uchar *, unsigned int);
@ -76,7 +76,7 @@ gcc/testsuite/
static void paste_all_tokens (cpp_reader *, const cpp_token *);
static bool paste_tokens (cpp_reader *, location_t,
const cpp_token **, const cpp_token *);
@@ -818,10 +829,11 @@ cpp_quote_string (uchar *dest, const uchar *src, unsigned int len)
@@ -812,10 +823,11 @@ cpp_quote_string (uchar *dest, const uch
return dest;
}
@ -91,7 +91,7 @@ gcc/testsuite/
{
unsigned char *dest;
unsigned int i, escape_it, backslash_count = 0;
@@ -834,9 +846,27 @@ stringify_arg (cpp_reader *pfile, macro_arg *arg)
@@ -828,9 +840,27 @@ stringify_arg (cpp_reader *pfile, macro_
*dest++ = '"';
/* Loop, reading in the argument's tokens. */
@ -121,7 +121,7 @@ gcc/testsuite/
if (token->type == CPP_PADDING)
{
@@ -923,7 +953,7 @@ paste_tokens (cpp_reader *pfile, location_t location,
@@ -917,7 +947,7 @@ paste_tokens (cpp_reader *pfile, locatio
cpp_token *lhs;
unsigned int len;
@ -130,7 +130,7 @@ gcc/testsuite/
buf = (unsigned char *) alloca (len);
end = lhsend = cpp_spell_token (pfile, *plhs, buf, true);
@@ -949,8 +979,10 @@ paste_tokens (cpp_reader *pfile, location_t location,
@@ -943,8 +973,10 @@ paste_tokens (cpp_reader *pfile, locatio
location_t saved_loc = lhs->src_loc;
_cpp_pop_buffer (pfile);
@ -143,7 +143,7 @@ gcc/testsuite/
/* We have to remove the PASTE_LEFT flag from the old lhs, but
we want to keep the new location. */
@@ -962,8 +994,10 @@ paste_tokens (cpp_reader *pfile, location_t location,
@@ -956,8 +988,10 @@ paste_tokens (cpp_reader *pfile, locatio
/* Mandatory error for all apart from assembler. */
if (CPP_OPTION (pfile, lang) != CLK_ASM)
cpp_error_with_line (pfile, CPP_DL_ERROR, location, 0,
@ -156,7 +156,7 @@ gcc/testsuite/
return false;
}
@@ -1039,7 +1073,10 @@ paste_all_tokens (cpp_reader *pfile, const cpp_token *lhs)
@@ -1033,7 +1067,10 @@ paste_all_tokens (cpp_reader *pfile, con
abort ();
}
if (!paste_tokens (pfile, virt_loc, &lhs, rhs))
@ -168,7 +168,7 @@ gcc/testsuite/
}
while (rhs->flags & PASTE_LEFT);
@@ -1906,7 +1943,8 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
@@ -1900,7 +1937,8 @@ replace_args (cpp_reader *pfile, cpp_has
if (src->flags & STRINGIFY_ARG)
{
if (!arg->stringified)
@ -178,11 +178,11 @@ gcc/testsuite/
}
else if ((src->flags & PASTE_LEFT)
|| (src != macro->exp.tokens && (src[-1].flags & PASTE_LEFT)))
@@ -2029,7 +2067,24 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
paste_flag = tokens_buff_last_token_ptr (buff);
}
- if (src->flags & PASTE_LEFT)
@@ -2028,6 +2066,25 @@ replace_args (cpp_reader *pfile, cpp_has
is empty or because it is __VA_OPT__() ), drop PASTE_LEFT
flag from previous token. */
copy_paste_flag (pfile, start, &pfile->avoid_paste);
+
+ if (vaopt_tracker.stringify ())
+ {
+ unsigned int count
@ -199,12 +199,12 @@ gcc/testsuite/
+ tokens_buff_add_token (buff, virt_locs,
+ t, t->src_loc, t->src_loc,
+ NULL, 0);
+ continue;
+ }
+ else if (src->flags & PASTE_LEFT)
if (src->flags & PASTE_LEFT)
{
/* With a non-empty __VA_OPT__ on the LHS of ##, the last
token should be flagged PASTE_LEFT. */
@@ -3585,7 +3640,10 @@ create_iso_definition (cpp_reader *pfile)
@@ -3584,7 +3641,10 @@ create_iso_definition (cpp_reader *pfile
function-like macros when lexing the subsequent token. */
if (macro->count > 1 && token[-1].type == CPP_HASH && macro->fun_like)
{

View File

@ -1,4 +1,4 @@
SHA512 (gcc-11.2.1-20211203.tar.xz) = 3cf64d3af541b9e80a2d5dd95a1257afefda554cfa16b757a7f861701e3da2d6917dbb1f4cd74301ffaf45e92c441642b8c589a10698a9103a216620f0849626
SHA512 (gcc-11.2.1-20220125.tar.xz) = f2670bce2f207e3353c30be9f1108499b91f27bce9182f1cec3a73a754f248886a6e6e4b40c5968b74fd4409604780c9ad78b92677c27521d82f31b5b38ad269
SHA512 (isl-0.18.tar.bz2) = 85d0b40f4dbf14cb99d17aa07048cdcab2dc3eb527d2fbb1e84c41b2de5f351025370e57448b63b2b8a8cf8a0843a089c3263f9baee1542d5c2e1cb37ed39d94
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 002a48a7b689a81abbf16161bcaec001a842e67dfbe372e9e109092703bfc666675f16198f60ca429370e8850d564547dc505df81bc3aaca4ce6defbc014ad6c
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7