aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2010-02-03 15:42:35 -0500
committerJason Merrill <jason@gcc.gnu.org>2010-02-03 15:42:35 -0500
commitabfe01cec91fae69bb05700bf6a53f41a64fd15c (patch)
treef8b4a568a621bd1d216e238d04ed36cb854f1bc4 /gcc/cp
parent07738b87c4273fcfd97bf40940fe4f26ea555292 (diff)
downloadgcc-abfe01cec91fae69bb05700bf6a53f41a64fd15c.zip
gcc-abfe01cec91fae69bb05700bf6a53f41a64fd15c.tar.gz
gcc-abfe01cec91fae69bb05700bf6a53f41a64fd15c.tar.bz2
re PR c++/12909 (ambiguity in mangling vector types)
PR c++/12909 * mangle.c (write_type) [VECTOR_TYPE]: Change mangling. From-SVN: r156481
Diffstat (limited to 'gcc/cp')
-rw-r--r--gcc/cp/ChangeLog6
-rw-r--r--gcc/cp/mangle.c11
2 files changed, 16 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index b122aec..c3b1bdc 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+2010-02-03 Jason Merrill <jason@redhat.com>
+
+ PR c++/12909
+ * mangle.c (write_type) [VECTOR_TYPE]: Change mangling with
+ -fabi-version=4.
+
2010-02-02 Jason Merrill <jason@redhat.com>
PR c++/41090
diff --git a/gcc/cp/mangle.c b/gcc/cp/mangle.c
index c14f5b7..37293f1 100644
--- a/gcc/cp/mangle.c
+++ b/gcc/cp/mangle.c
@@ -1850,7 +1850,16 @@ write_type (tree type)
break;
case VECTOR_TYPE:
- write_string ("U8__vector");
+ if (abi_version_at_least (4))
+ {
+ write_string ("Dv");
+ /* Non-constant vector size would be encoded with
+ _ expression, but we don't support that yet. */
+ write_unsigned_number (TYPE_VECTOR_SUBPARTS (type));
+ write_char ('_');
+ }
+ else
+ write_string ("U8__vector");
write_type (TREE_TYPE (type));
break;