X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;ds=sidebyside;f=gcc%2Ftestsuite%2Fgcc.dg%2Fc90-const-expr-2.c;h=ee57d5503725a678b16c7e65315fb1d79bc92fc3;hb=cf95b05b99e654234040272fc4095ec0a455d7e0;hp=940a718979559af9a891d0cfa32de9524385d2a8;hpb=0090b1e540804e3bc2cb5e7993c814e8bb1ac734;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/testsuite/gcc.dg/c90-const-expr-2.c b/gcc/testsuite/gcc.dg/c90-const-expr-2.c index 940a7189795..ee57d550372 100644 --- a/gcc/testsuite/gcc.dg/c90-const-expr-2.c +++ b/gcc/testsuite/gcc.dg/c90-const-expr-2.c @@ -14,12 +14,20 @@ int *a; int b; long *c; +#if defined(_LP64) +#define ZERO 0L +#elif defined(_WIN64) +#define ZERO 0LL +#else +#define ZERO 0 +#endif + /* Assertion that n is a null pointer constant: so the conditional expression has type 'int *' instead of 'void *'. */ #define ASSERT_NPC(n) (b = *(1 ? a : (n))) /* Assertion that n is not a null pointer constant: so the conditional - expresions has type 'void *' instead of 'int *'. + expressions has type 'void *' instead of 'int *'. */ #define ASSERT_NOT_NPC(n) (c = (1 ? a : (n))) @@ -28,9 +36,10 @@ foo (void) { ASSERT_NPC (0); ASSERT_NPC ((void *)0); - ASSERT_NOT_NPC ((void *)(void *)0); /* { dg-bogus "incompatible" "bogus null pointer constant" { xfail *-*-* } } */ - ASSERT_NOT_NPC ((void *)(char *)0); /* { dg-bogus "incompatible" "bogus null pointer constant" { xfail *-*-* } } */ - ASSERT_NOT_NPC ((void *)(0, 0)); /* { dg-bogus "incompatible" "bogus null pointer constant" { xfail *-*-* } } */ + ASSERT_NOT_NPC ((void *)(void *)0); /* { dg-bogus "incompatible" "bogus null pointer constant" } */ + ASSERT_NOT_NPC ((void *)(char *)0); /* { dg-bogus "incompatible" "bogus null pointer constant" } */ + ASSERT_NOT_NPC ((void *)(0, ZERO)); /* { dg-bogus "incompatible" "bogus null pointer constant" } */ + ASSERT_NOT_NPC ((void *)(&"Foobar"[0] - &"Foobar"[0])); /* { dg-bogus "incompatible" "bogus null pointer constant" } */ /* This last one is a null pointer constant in C99 only. */ - ASSERT_NOT_NPC ((void *)(1 ? 0 : (0, 0))); /* { dg-bogus "incompatible" "bogus null pointer constant" { xfail *-*-* } } */ + ASSERT_NOT_NPC ((void *)(1 ? ZERO : (0, ZERO))); /* { dg-bogus "incompatible" "bogus null pointer constant" } */ }