OSDN Git Service

* c-pretty-print.c (pp_c_specifier_qualifier_list) [VECTOR_TYPE]:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 22 Mar 2010 20:38:35 +0000 (20:38 +0000)
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 22 Mar 2010 20:38:35 +0000 (20:38 +0000)
Use () rather than [], and move before the element type.
* cp-demangle.c (d_print_mod): Use () rather than [] for vectors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157650 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/c-pretty-print.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/conversion/simd3.C
gcc/testsuite/g++.dg/ext/vector9.C
gcc/testsuite/g++.dg/other/error23.C
gcc/testsuite/gcc.dg/pr36997.c
libiberty/ChangeLog
libiberty/cp-demangle.c
libiberty/testsuite/demangle-expected

index 113f2a7..f8515cd 100644 (file)
@@ -1,3 +1,8 @@
+2010-03-22  Jason Merrill  <jason@redhat.com>
+
+       * c-pretty-print.c (pp_c_specifier_qualifier_list) [VECTOR_TYPE]:
+       Use () rather than [], and move before the element type.
+
 2010-03-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
 
        * doc/configfiles.texi (Configuration Files): Removed
index 2972a26..e1aabca 100644 (file)
@@ -454,16 +454,17 @@ pp_c_specifier_qualifier_list (c_pretty_printer *pp, tree t)
 
     case VECTOR_TYPE:
     case COMPLEX_TYPE:
-      pp_c_specifier_qualifier_list (pp, TREE_TYPE (t));
       if (code == COMPLEX_TYPE)
        pp_c_ws_string (pp, flag_isoc99 ? "_Complex" : "__complex__");
       else if (code == VECTOR_TYPE)
        {
          pp_c_ws_string (pp, "__vector");
-         pp_c_left_bracket (pp);
+         pp_c_left_paren (pp);
          pp_wide_integer (pp, TYPE_VECTOR_SUBPARTS (t));
-         pp_c_right_bracket (pp);
+         pp_c_right_paren (pp);
+         pp_c_whitespace (pp);
        }
+      pp_c_specifier_qualifier_list (pp, TREE_TYPE (t));
       break;
 
     default:
index e29c4c9..25cc5b9 100644 (file)
@@ -1,3 +1,10 @@
+2010-03-22  Jason Merrill  <jason@redhat.com>
+
+       * gcc.dg/pr36997.c: Adjust error message.
+       * g++.dg/ext/vector9.C: Likewise.
+       * g++.dg/conversion/simd3.C: Likewise.
+       * g++.dg/other/error23.C: Likewise.
+
 2010-03-22  Michael Matz  <matz@suse.de>
 
        PR middle-end/43475
index dd0a68a..8d96264 100644 (file)
@@ -10,6 +10,6 @@ unsigned int __attribute__((vector_size(16))) e;
 void foo()
 {
        b + d; /* { dg-error "invalid operands to binary" } */
-       d += e; /* { dg-message "use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts.*cannot convert 'unsigned int __vector.4.' to 'int __vector.4.' in assignment" } */
+       d += e; /* { dg-message "use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts.*cannot convert '__vector.4. unsigned int' to '__vector.4. int' in assignment" } */
        d2 += d;
 }
index 0b3a907..32e13b4 100644 (file)
@@ -6,5 +6,5 @@ typedef int   v4i __attribute__((vector_size(8)));
 void foo()
 {
   v4f v;
-  !(v4i)v; // { dg-error "int __vector.2|argument" }
+  !(v4i)v; // { dg-error "__vector.2. int|argument" }
 }
index 749345d..0ff1915 100644 (file)
@@ -2,4 +2,4 @@
 // { dg-do compile }
 
 int v __attribute ((vector_size (8)));
-bool b = !(v - v);     // { dg-error "could not convert .\\(int __vector.2.\\)\\{0, 0\\}. to .bool.|in argument to unary" }
+bool b = !(v - v);     // { dg-error "could not convert .\\(__vector.2. int\\)\\{0, 0\\}. to .bool.|in argument to unary" }
index 2bed933..13461b8 100644 (file)
@@ -5,5 +5,5 @@ typedef int __m64 __attribute__ ((__vector_size__ (8), __may_alias__));
 __m64 _mm_add_si64 (__m64 __m1, __m64 __m2)
 {
     return (__m64) __builtin_ia32_paddq ((long long)__m1, (long long)__m2); /* { dg-error "incompatible type" } */
-    /* { dg-message "note: expected 'long long int __vector.1.' but argument is of type 'long long int'" "" { target *-*-* } 7 } */
+    /* { dg-message "note: expected '__vector.1. long long int' but argument is of type 'long long int'" "" { target *-*-* } 7 } */
 }
index cf80e38..176dd4d 100644 (file)
@@ -1,3 +1,7 @@
+2010-03-22  Jason Merrill  <jason@redhat.com>
+
+       * cp-demangle.c (d_print_mod): Use () rather than [] for vectors.
+
 2010-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
        * Makefile.in (all): Do not use exec.
index b1319cf..98c64db 100644 (file)
@@ -4506,9 +4506,9 @@ d_print_mod (struct d_print_info *dpi,
       d_print_comp (dpi, d_left (mod));
       return;
     case DEMANGLE_COMPONENT_VECTOR_TYPE:
-      d_append_string (dpi, " vector[");
+      d_append_string (dpi, " __vector(");
       d_print_comp (dpi, d_left (mod));
-      d_append_char (dpi, ']');
+      d_append_char (dpi, ')');
       return;
 
     default:
index 010faec..672f352 100644 (file)
@@ -3928,10 +3928,10 @@ _Z1fN1SUt_E
 f(S::{unnamed type#1})
 --format=gnu-v3
 _Z1fDv32_f
-f(float vector[32])
+f(float __vector(32))
 --format=gnu-v3
 _Z1fIfLi4EEvDv_T0__T_
-void f<float, 4>(float vector[4])
+void f<float, 4>(float __vector(4))
 --format=gnu-v3
 _Z1fI1AEDTclonplfp_fp_EET_
 decltype ((operator+)({parm#1}, {parm#1})) f<A>(A)