cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X for experimental C++0x mode.

2006-11-01	Douglas Gregor <doug.gregor@gmail.com>

	* include/cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X
	for experimental C++0x mode.
	* init.c (lang_defaults): Add defaults for C++0x modes. C++0x has
	adopted the preprocessor changes introduced in C99.

From-SVN: r118385
This commit is contained in:
Douglas Gregor 2006-11-01 16:27:23 +00:00 committed by Doug Gregor
parent b4d24eaad4
commit dfafdaa655
3 changed files with 22 additions and 13 deletions

View File

@ -1,3 +1,10 @@
2006-11-01 Douglas Gregor <doug.gregor@gmail.com>
* include/cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X
for experimental C++0x mode.
* init.c (lang_defaults): Add defaults for C++0x modes. C++0x has
adopted the preprocessor changes introduced in C99.
2006-10-29 Joseph Myers <joseph@codesourcery.com>
* configure.ac (need_64bit_hwint): Set for i[34567]86-*-linux*

View File

@ -155,7 +155,7 @@ enum cpp_ttype
/* C language kind, used when calling cpp_create_reader. */
enum c_lang {CLK_GNUC89 = 0, CLK_GNUC99, CLK_STDC89, CLK_STDC94, CLK_STDC99,
CLK_GNUCXX, CLK_CXX98, CLK_ASM};
CLK_GNUCXX, CLK_CXX98, CLK_GNUCXX0X, CLK_CXX0X, CLK_ASM};
/* Payload of a NUMBER, STRING, CHAR or COMMENT token. */
struct cpp_string GTY(())

View File

@ -80,18 +80,20 @@ struct lang_flags
static const struct lang_flags lang_defaults[] =
{ /* c99 c++ xnum xid std // digr */
/* GNUC89 */ { 0, 0, 1, 0, 0, 1, 1 },
/* GNUC99 */ { 1, 0, 1, 0, 0, 1, 1 },
/* STDC89 */ { 0, 0, 0, 0, 1, 0, 0 },
/* STDC94 */ { 0, 0, 0, 0, 1, 0, 1 },
/* STDC99 */ { 1, 0, 1, 0, 1, 1, 1 },
/* GNUCXX */ { 0, 1, 1, 0, 0, 1, 1 },
/* CXX98 */ { 0, 1, 1, 0, 1, 1, 1 },
/* ASM */ { 0, 0, 1, 0, 0, 1, 0 }
/* xid should be 1 for GNUC99, STDC99, GNUCXX and CXX98 when no
longer experimental (when all uses of identifiers in the compiler
have been audited for correct handling of extended
identifiers). */
/* GNUC89 */ { 0, 0, 1, 0, 0, 1, 1 },
/* GNUC99 */ { 1, 0, 1, 0, 0, 1, 1 },
/* STDC89 */ { 0, 0, 0, 0, 1, 0, 0 },
/* STDC94 */ { 0, 0, 0, 0, 1, 0, 1 },
/* STDC99 */ { 1, 0, 1, 0, 1, 1, 1 },
/* GNUCXX */ { 0, 1, 1, 0, 0, 1, 1 },
/* CXX98 */ { 0, 1, 1, 0, 1, 1, 1 },
/* GNUCXX0X */ { 1, 1, 1, 0, 0, 1, 1 },
/* CXX0X */ { 1, 1, 1, 0, 1, 1, 1 },
/* ASM */ { 0, 0, 1, 0, 0, 1, 0 }
/* xid should be 1 for GNUC99, STDC99, GNUCXX, CXX98, GNUCXX0X, and
CXX0X when no longer experimental (when all uses of identifiers
in the compiler have been audited for correct handling of
extended identifiers). */
};
/* Sets internal flags correctly for a given language. */