diff options
Diffstat (limited to 'gcc-4.8/gcc/testsuite/gcc.dg/cpp/sysmac1.c')
-rw-r--r-- | gcc-4.8/gcc/testsuite/gcc.dg/cpp/sysmac1.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc-4.8/gcc/testsuite/gcc.dg/cpp/sysmac1.c b/gcc-4.8/gcc/testsuite/gcc.dg/cpp/sysmac1.c new file mode 100644 index 000000000..cc8469e18 --- /dev/null +++ b/gcc-4.8/gcc/testsuite/gcc.dg/cpp/sysmac1.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2001 Free Software Foundation, Inc. */ + +/* { dg-do preprocess } */ +/* { dg-options "-std=gnu99 -pedantic -Wtraditional -ftrack-macro-expansion=0" } */ + +/* Tests diagnostics are suppressed for some macros defined in system + headers. */ + +/* Source: Neil Booth, 15 Jan 2001. */ + +#include "syshdr.h" + +#define uint 1U +#define str(x) x +#define foo(x, y...) bar(x, ##y) /* { dg-warning "named variadic macros" } */ + +#if uint /* { dg-warning "traditional C rejects" } */ +#endif +#if sys_uint /* { dg-bogus "traditional C rejects" } */ +#endif + +(str); /* { dg-warning "used with arguments" } */ +(sys_str); /* { dg-bogus "used with arguments" } */ + +foo (one_arg); /* { dg-warning "requires rest arguments" } */ +sys_foo (one_arg); /* { dg-bogus "requires rest arguments" } */ |