For Yufeng Zhang - Fix typos and errors in testcase.
authorYufeng Zhang <yufeng.zhang@arm.com>
Mon, 4 Apr 2011 23:15:55 +0000 (23:15 +0000)
committerRamana Radhakrishnan <ramana@gcc.gnu.org>
Mon, 4 Apr 2011 23:15:55 +0000 (23:15 +0000)
From-SVN: r171958

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/abi/arm_cxa_vec1.C

index 6d723f237cf8da0a068ae398d2ace357a6ecdb63..84e7d7ef6e200a25ff00652fe3ef41bb78b1c442 100644 (file)
@@ -1,3 +1,9 @@
+2011-04-04  Yufeng Zhang  <yufeng.zhang@arm.com>
+
+        * g++.dg/abi/arm_cxa_vec1.C (__ARM_EABI__): Fix typo.
+       (cctor): Actually return the value.
+       (main): Cast return values.
+
 2010-04-04  Thomas Koenig  <tkoenig@gcc.gnu.org>
 
        * gfortran.dg/character_comparison_8.f90:  New test.
index b681a1fcbd9f35ef192868f52353d1c6c369448d..4c462d5f3a4d237ae90b5202ab3cd4338c8474a2 100644 (file)
@@ -3,10 +3,12 @@
 
 #include <cxxabi.h>
 
-#ifdef ___ARM_EABI__
-static void cctor (void * a, void * b)
+#ifdef __ARM_EABI__
+using namespace __cxxabiv1;
+static __cxa_cdtor_return_type cctor (void * a, void * b)
 {
-  *(char *) a = *(char *) b
+  *(char *) a = *(char *) b;
+  return a;
 }
 
 int main()
@@ -15,10 +17,10 @@ int main()
   char data2;
   char *p;
 
-  p = __cxa_vec_ctor (&data, 1, 1, NULL, NULL);
+  p = (char *) __cxa_vec_ctor (&data, 1, 1, NULL, NULL);
   if (p != &data)
     return 1;
-  p = __cxa_vec_cctor (&data2, &data, 1, 1, cctor, NULL);
+  p = (char *) __cxa_vec_cctor (&data2, &data, 1, 1, cctor, NULL);
   if (p != &data2)
     return 1;