aboutsummaryrefslogtreecommitdiff
path: root/gcc/attribs.c
diff options
context:
space:
mode:
authorMartin Sebor <msebor@redhat.com>2021-02-19 11:06:06 -0700
committerMartin Sebor <msebor@redhat.com>2021-02-19 11:06:06 -0700
commit3599ecb6a0145a428def5314d2d67d2e5a88f3c4 (patch)
tree903e8efceefbc24211e6628b6e70b19fc970a41b /gcc/attribs.c
parentbfe83ae38e871a2e4205ce63fd9d3247dff412bd (diff)
downloadgcc-3599ecb6a0145a428def5314d2d67d2e5a88f3c4.zip
gcc-3599ecb6a0145a428def5314d2d67d2e5a88f3c4.tar.gz
gcc-3599ecb6a0145a428def5314d2d67d2e5a88f3c4.tar.bz2
PR c/97172 - ICE: tree code 'ssa_name' is not supported in LTO streams
gcc/ChangeLog: PR c/97172 * attribs.c (init_attr_rdwr_indices): Guard vblist use. (attr_access::free_lang_data): Remove a spurious test. gcc/testsuite/ChangeLog: PR c/97172 * gcc.dg/pr97172.c: Add test cases.
Diffstat (limited to 'gcc/attribs.c')
-rw-r--r--gcc/attribs.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/gcc/attribs.c b/gcc/attribs.c
index 81322d4..60933d2 100644
--- a/gcc/attribs.c
+++ b/gcc/attribs.c
@@ -2124,7 +2124,7 @@ init_attr_rdwr_indices (rdwr_map *rwm, tree attrs)
if (*m == '$')
{
++m;
- if (!acc.size)
+ if (!acc.size && vblist)
{
/* Extract the list of VLA bounds for the current
parameter, store it in ACC.SIZE, and advance
@@ -2252,10 +2252,6 @@ attr_access::free_lang_data (tree attrs)
if (!vblist)
continue;
- vblist = TREE_VALUE (vblist);
- if (!vblist)
- continue;
-
for (vblist = TREE_VALUE (vblist); vblist; vblist = TREE_CHAIN (vblist))
{
tree *pvbnd = &TREE_VALUE (vblist);