Mercurial > hg > CbC > CbC_gcc
diff gcc/testsuite/g++.dg/parse/array-size2.C @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children | 84e7813d76e9 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gcc/testsuite/g++.dg/parse/array-size2.C Fri Oct 27 22:46:09 2017 +0900 @@ -0,0 +1,20 @@ +// PR c/25682 +// { dg-do compile } +// Test whether we don't ICE on questionable constructs where offsetof +// should have been used instead. + +struct S +{ + char a[4]; + int b; +}; + +extern void bar (char *, char *); + +void +foo (void) +{ + char g[(char *) &((struct S *) 0)->b - (char *) 0]; // { dg-error "constant" } + char h[(__SIZE_TYPE__) &((struct S *) 8)->b]; // { dg-error "constant" "" { xfail *-*-* } } + bar (g, h); +}