N3472 binary constants

N3472 binary constants
	* include/cpplib.h (struct cpp_options): Fix a typo in user_literals
	field comment.  Add binary_constants field.
	* init.c (struct lang_flags): Add binary_constants field.
	(lang_defaults): Add bin_cst column to the table.
	(cpp_set_lang): Initialize CPP_OPTION (pfile, binary_constants).
	* expr.c (cpp_classify_number): Talk about C++11 instead of C++0x
	in diagnostics.  Accept binary constants if
	CPP_OPTION (pfile, binary_constants) even when pedantic.  Adjust
	pedwarn message.

	* g++.dg/cpp/limits.C: Adjust warning wording.
	* g++.dg/system-binary-constants-1.C: Likewise.
	* g++.dg/cpp1y/system-binary-constants-1.C: New test.

From-SVN: r198380
This commit is contained in:
Jakub Jelinek 2013-04-28 23:36:57 +02:00 committed by Jakub Jelinek
parent 5e67a36916
commit 01187df097
8 changed files with 67 additions and 23 deletions

View file

@ -423,7 +423,7 @@ struct cpp_options
/* True for traditional preprocessing. */
unsigned char traditional;
/* Nonzero for C++ 2011 Standard user-defnied literals. */
/* Nonzero for C++ 2011 Standard user-defined literals. */
unsigned char user_literals;
/* Nonzero means warn when a string or character literal is followed by a
@ -434,6 +434,9 @@ struct cpp_options
literal number suffixes as user-defined literal number suffixes. */
unsigned char ext_numeric_literals;
/* Nonzero for C++ 2014 Standard binary constants. */
unsigned char binary_constants;
/* Holds the name of the target (execution) character set. */
const char *narrow_charset;