Commit 4e1f0f8e by Neil Booth Committed by Neil Booth

cppexp.c (eval_token): Permit true and false even if pedantic.

	* cppexp.c (eval_token): Permit true and false even if pedantic.
testsuite:
	* gcc.dg/cpp/truefalse.cpp: New test.
	* gcc.dg/cpp/cpp.exp: Update.

From-SVN: r65811
parent bf805def
2003-04-19 Neil Booth <neil@daikokuya.co.uk>
* cppexp.c (eval_token): Permit true and false even if pedantic.
2003-04-19 Neil Booth <neil@daikokuya.co.uk>
* cpplex.c (skip_whitespace): Rearrange to avoid stage1 ICE.
2003-04-19 Neil Booth <neil@daikokuya.co.uk>
......
......@@ -590,14 +590,6 @@ eval_token (pfile, token)
{
result.high = 0;
result.low = (token->val.node == pfile->spec_nodes.n_true);
/* Warn about use of true or false in #if when pedantic
and stdbool.h has not been included. */
if (CPP_PEDANTIC (pfile)
&& ! cpp_defined (pfile, DSC("__bool_true_false_are_defined")))
cpp_error (pfile, DL_PEDWARN,
"ISO C++ does not permit \"%s\" in #if",
NODE_NAME (token->val.node));
}
else
{
......
2003-04-19 Neil Booth <neil@daikokuya.co.uk>
* gcc.dg/cpp/truefalse.cpp: New test.
* gcc.dg/cpp/cpp.exp: Update.
2003-04-19 Neil Booth <neil@daikokuya.co.uk>
* gcc.dg/cpp/_Pragma4.c: Remove stray space.
* gcc.dg/cpp/trad/escaped-eof.c: Correct line number.
......
......@@ -36,7 +36,7 @@ if ![info exists DEFAULT_CFLAGS] then {
dg-init
# Main loop.
dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cCS\]]] \
dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{c,cpp,S} ]] \
"" $DEFAULT_CFLAGS
# All done.
......
/* Copyright (C) 2003 Free Software Foundation, Inc. */
/* Source: Neil Booth, 18 Apr 2003. */
/* { dg-do preprocess } */
/* { dg-options "-ansi -pedantic -Wundef" } */
/* Check that for C++ we handle true and false correctly, and do not
treat them as undefined identifiers. */
#if true /* { dg-bogus "is not defined" } */
#error foo /* { dg-error "foo" } */
#endif
#if false /* { dg-bogus "is not defined" } */
#error foo /* { dg-bogus "foo" } */
#endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment