Message ID | 000101cbd997$25854090$708fc1b0$@Zhang@arm.com |
---|---|
State | New |
Headers | show |
On Thu, 2011-03-03 at 11:35 +0000, Yufeng Zhang wrote: > Hi, > > Here is a patch that fixes a problem in one g++ test case. A typo (of > using the macro ___ARM_EABI__ rather than __ARM_EABI__) has made the > original test case almost a NOP. > > Also with a few other changes that make the test work properly. > > I have already tested the updated test case that it still passes with > arm-eabi as an expected pass and passes with x86 as an unsupported test. > > OK for the trunk? > > Thanks, > Yufeng > > > 2011-03-03 Yufeng Zhang <yufeng.zhang@arm.com> > > * g++.dg/abi/arm_cxa_vec1.C: Correct the typos/errors in the > test case. > OK. R.
Index: gcc/testsuite/g++.dg/abi/arm_cxa_vec1.C =================================================================== --- gcc/testsuite/g++.dg/abi/arm_cxa_vec1.C (revision 170373) +++ gcc/testsuite/g++.dg/abi/arm_cxa_vec1.C (working copy) @@ -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 @@ 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;