This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r172943 - in /trunk/gcc: ChangeLog c-family/c-c...
- From: paolo at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Mon, 25 Apr 2011 22:27:20 -0000
- Subject: r172943 - in /trunk/gcc: ChangeLog c-family/c-c...
Author: paolo
Date: Mon Apr 25 22:27:19 2011
New Revision: 172943
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=172943
Log:
/gcc
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* c-family/c-common.c (struct c_common_resword): Add
__underlying_type.
* c-family/c-common.h (enum rid): Add RID_UNDERLYING_TYPE.
/cp
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* cp-tree.def: Add a new UNDERLYING_TYPE tree code.
* cp-tree.h (enum cp_trait_kind): Add CPTK_UNDERLYING_TYPE, tidy.
(UNDERLYING_TYPE_TYPE): Add.
* cp-objcp-common.c (cp_common_init_ts): Mark UNDERLYING_TYPE
as TS_COMMON.
* parser.c (cp_lexer_next_token_is_decl_specifier_keyword,
cp_parser_simple_type_specifier): Handle UNDERLYING_TYPE.
(cp_parser_trait_expr): Deal with RID_UNDERLYING_TYPE; tidy.
* semantics.c (finish_underlying_type): New.
* typeck.c (structural_comptypes): Handle UNDERLYING_TYPE.
* error.c (dump_type, dump_type_prefix, dump_type_suffix): Likewise.
* cxx-pretty-print.c (p_cxx_type_id): Likewise.
* tree.c (cp_walk_subtrees): Likewise.
* pt.c (for_each_template_parm_r, tsubst, unify,
dependent_type_p_r): Likewise.
* mangle.c (write_type): Sorry for __underlying_type.
* doc/extend.texi: Document __underlying_type.
/testsuite
2011-04-25 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/ext/underlying_type1.C: New.
* g++.dg/ext/underlying_type2.C: Likewise.
* g++.dg/ext/underlying_type3.C: Likewise.
* g++.dg/ext/underlying_type4.C: Likewise.
* g++.dg/ext/underlying_type5.C: Likewise.
* g++.dg/ext/underlying_type6.C: Likewise.
* g++.dg/ext/underlying_type7.C: Likewise.
* g++.dg/ext/underlying_type8.C: Likewise.
* g++.dg/ext/underlying_type9.C: Likewise.
* g++.dg/ext/underlying_type10.C: Likewise.
Added:
trunk/gcc/testsuite/g++.dg/ext/underlying_type1.C
trunk/gcc/testsuite/g++.dg/ext/underlying_type10.C
trunk/gcc/testsuite/g++.dg/ext/underlying_type2.C
trunk/gcc/testsuite/g++.dg/ext/underlying_type3.C
trunk/gcc/testsuite/g++.dg/ext/underlying_type4.C
trunk/gcc/testsuite/g++.dg/ext/underlying_type5.C
trunk/gcc/testsuite/g++.dg/ext/underlying_type6.C
trunk/gcc/testsuite/g++.dg/ext/underlying_type7.C
trunk/gcc/testsuite/g++.dg/ext/underlying_type8.C
trunk/gcc/testsuite/g++.dg/ext/underlying_type9.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-family/c-common.c
trunk/gcc/c-family/c-common.h
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-objcp-common.c
trunk/gcc/cp/cp-tree.def
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/cxx-pretty-print.c
trunk/gcc/cp/error.c
trunk/gcc/cp/mangle.c
trunk/gcc/cp/parser.c
trunk/gcc/cp/pt.c
trunk/gcc/cp/semantics.c
trunk/gcc/cp/tree.c
trunk/gcc/cp/typeck.c
trunk/gcc/testsuite/ChangeLog