diff options
author | Martin Sebor <msebor@redhat.com> | 2020-10-14 15:18:19 -0600 |
---|---|---|
committer | Martin Sebor <msebor@redhat.com> | 2020-10-14 15:18:19 -0600 |
commit | 34efa5c2a84a8c7c7beb855dec24a321eebcbd6b (patch) | |
tree | b89ec4413e427a639d87da436bb0efa97626a70d /gcc/attribs.c | |
parent | 30d06b7d30792bc621202af2099c21fc24157856 (diff) | |
download | gcc-34efa5c2a84a8c7c7beb855dec24a321eebcbd6b.zip gcc-34efa5c2a84a8c7c7beb855dec24a321eebcbd6b.tar.gz gcc-34efa5c2a84a8c7c7beb855dec24a321eebcbd6b.tar.bz2 |
PR c/97413 - bogus error on function declaration with many VLA arguments
gcc/ChangeLog:
PR c/97413
* attribs.c (init_attr_rdwr_indices): Unwrap extra list layer.
gcc/c-family/ChangeLog:
PR c/97413
* c-attribs.c (build_attr_access_from_parms): Wrap chain of VLA
bounds in an extra list.
gcc/testsuite/ChangeLog:
PR c/97413
* gcc.dg/Wvla-parameter-8.c: New test.
Diffstat (limited to 'gcc/attribs.c')
-rw-r--r-- | gcc/attribs.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/attribs.c b/gcc/attribs.c index 94b9e02..3bdb2ff 100644 --- a/gcc/attribs.c +++ b/gcc/attribs.c @@ -2049,6 +2049,8 @@ init_attr_rdwr_indices (rdwr_map *rwm, tree attrs) /* The (optional) list of VLA bounds. */ tree vblist = TREE_CHAIN (mode); + if (vblist) + vblist = TREE_VALUE (vblist); mode = TREE_VALUE (mode); if (TREE_CODE (mode) != STRING_CST) |