diff options
| author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-01-22 16:18:14 +0000 |
|---|---|---|
| committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-01-22 16:18:14 +0000 |
| commit | 06faa2fe39677577aa92f3acea77ff6e1b42a6e5 (patch) | |
| tree | 602f12254a8ed63d8e866b56a5c95b94d3673a61 | |
| parent | f8ee651eb948372701268424bef0657c6fe314ee (diff) | |
| download | ppe42-gcc-06faa2fe39677577aa92f3acea77ff6e1b42a6e5.tar.gz ppe42-gcc-06faa2fe39677577aa92f3acea77ff6e1b42a6e5.zip | |
PR c++/34917
* tree.c (build_type_attribute_qual_variant): Call
build_qualified_type if attributes are equal, but quals are not.
* g++.dg/ext/vector12.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@131726 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/testsuite/g++.dg/ext/vector12.C | 4 | ||||
| -rw-r--r-- | gcc/tree.c | 2 |
4 files changed, 17 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bc76be76da4..a720103fb85 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2008-01-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/34917 + * tree.c (build_type_attribute_qual_variant): Call + build_qualified_type if attributes are equal, but quals are not. + 2008-01-22 Manuel Lopez-Ibanez <manu@gcc.gnu.org> PR 32102 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9a6eb68daab..7f0c716a069 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-01-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/34917 + * g++.dg/ext/vector12.C: New test. + 2008-01-22 Manuel Lopez-Ibanez <manu@gcc.gnu.org> PR 32102 diff --git a/gcc/testsuite/g++.dg/ext/vector12.C b/gcc/testsuite/g++.dg/ext/vector12.C new file mode 100644 index 00000000000..e0b6d2ba632 --- /dev/null +++ b/gcc/testsuite/g++.dg/ext/vector12.C @@ -0,0 +1,4 @@ +// PR c++/34917 +// { dg-do compile } + +const int i __attribute ((vector_size (8))) = {}; diff --git a/gcc/tree.c b/gcc/tree.c index 4757cbccc13..b6b3eef26e1 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -3735,6 +3735,8 @@ build_type_attribute_qual_variant (tree ttype, tree attribute, int quals) ttype = build_qualified_type (ntype, quals); } + else if (TYPE_QUALS (ttype) != quals) + ttype = build_qualified_type (ttype, quals); return ttype; } |

