Mercurial > hg > CbC > CbC_gcc
diff gcc/testsuite/c-c++-common/cpp/va-opt-error.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gcc/testsuite/c-c++-common/cpp/va-opt-error.c Thu Oct 25 07:37:49 2018 +0900 @@ -0,0 +1,28 @@ +/* { dg-do preprocess }*/ +/* { dg-options "-std=gnu99" { target c } } */ +/* { dg-options "-std=c++2a" { target c++ } } */ + +#define ERR1(x) __VA_OPT__ /* { dg-warning "__VA_OPT__ can only appear" } */ +#define ERR2(x) __VA_OPT__( /* { dg-warning "can only appear" } */ +#define ERR3(x) __VA_OPT__() /* { dg-warning "can only appear" } */ + +#define ERR4(x,...) __VA_OPT__ /* { dg-error "unterminated __VA_OPT__" } */ +#define ERR5(x,...) __VA_OPT__( /* { dg-error "unterminated" } */ +#define ERR6(x,...) __VA_OPT__(() /* { dg-error "unterminated" } */ + +#define ERR7(x,...) __VA_OPT__(__VA_OPT__) /* { dg-error "may not appear" } */ +#define ERR7(x,...) __VA_OPT__(__VA_OPT__()) /* { dg-error "may not appear" } */ + +#define ERR8(x, y,...) x __VA_OPT__(##) y /* { dg-error "either end" } */ +#define ERR9(x, y,...) x __VA_OPT__(x ##) y /* { dg-error "either end" } */ +#define ERRA(x, y,...) x x __VA_OPT__(## y) /* { dg-error "either end" } */ + +#define ERRB __VA_OPT__ /* { dg-warning "can only appear" } */ +#define ERRC(__VA_OPT__) x /* { dg-warning "can only appear" } */ + +__VA_OPT__ /* { dg-warning "can only appear" } */ + +#define ERRD(x) +ERRD(__VA_OPT__) /* { dg-warning "can only appear" } */ + +#define __VA_OPT__ /* { dg-warning "can only appear" } */