From 7aab7b5a8f31ee58b6ea474c1c64559067c1e27d Mon Sep 17 00:00:00 2001 From: Neil Booth Date: Mon, 4 Dec 2000 22:54:46 +0000 Subject: [PATCH] * gcc.dg/cpp/extratokens.c: Forgotten file. From-SVN: r38014 --- gcc/testsuite/gcc.dg/cpp/extratokens.c | 38 ++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/cpp/extratokens.c diff --git a/gcc/testsuite/gcc.dg/cpp/extratokens.c b/gcc/testsuite/gcc.dg/cpp/extratokens.c new file mode 100644 index 00000000000..42090ec5281 --- /dev/null +++ b/gcc/testsuite/gcc.dg/cpp/extratokens.c @@ -0,0 +1,38 @@ +/* Copyright (C) 2000 Free Software Foundation, Inc. */ + +/* { dg-do preprocess } */ +/* { dg-options "-fno-show-column" } */ + +/* Tests all directives that do not permit excess tokens at the end of + the line. */ + +/* Source: Neil Booth, 4 Dec 2000. The combination of separate test + cases. */ + +#ifdef foo bar /* { dg-error "extra tokens" "tokens after #ifdef" } */ +#endif + +#ifndef foo bar /* { dg-error "extra tokens" "tokens after #ifndef" } */ +#endif + +#if 0 +#if 0 +#else foo /* { dg-warning "extra tokens" "tokens after #else" } */ +#endif / /* { dg-warning "extra tokens" "tokens after #endif" } */ +#endif + +#undef foo bar /* { dg-error "extra tokens" "tokens after #undef" } */ + +#assert foo(bar) bar /* { dg-error "extra tokens" "tokens after #assert" } */ + +#unassert foo(bar) b /* { dg-error "extra tokens" "tokens after #unassert" } */ + +#include "mi1c.h" bar /* { dg-error "extra tokens" "tokens after #include" } */ + +#ident "something" bar /* { dg-error "extra tokens" "tokens after #ident" } */ + +#line 36 "file.c" 3 + +/* ... but in a system header, it's acceptable. */ +#ifdef KERNEL +#endif KERNEL /* { dg-bogus "extra tokens" "bad warning" } */