aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/cxx-pretty-print.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2017-03-31 08:40:39 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2017-03-31 08:40:39 +0200
commitaf88f55707d3373b94c02237af2863d2ad700063 (patch)
treecdd1f27aaae10888509d5ce06f0f1ca486071e92 /gcc/cp/cxx-pretty-print.c
parent7d790165457c7c6912ed98da4a64d9b020c6f483 (diff)
downloadgcc-af88f55707d3373b94c02237af2863d2ad700063.zip
gcc-af88f55707d3373b94c02237af2863d2ad700063.tar.gz
gcc-af88f55707d3373b94c02237af2863d2ad700063.tar.bz2
re PR libstdc++/80251 (Is the is_aggregate meta function missing?)
PR libstdc++/80251 c-family/ * c-common.h (enum rid): Add RID_IS_AGGREGATE. * c-common.c (c_common_reswords): Add __is_aggregate trait. cp/ * cp-tree.h (enum cp_trait_kind): Add CPTK_IS_AGGREGATE. * cxx-pretty-print.c (pp_cxx_trait_expression): Handle CPTK_IS_AGGREGATE. * semantics.c (trait_expr_value): Handle CPTK_IS_AGGREGATE. Remove extraneous parens. (finish_trait_expr): Handle CPTK_IS_AGGREGATE. * parser.c (cp_parser_primary_expression): Handle RID_IS_AGGREGATE. (cp_parser_trait_expr): Likewise. testsuite/ * g++.dg/ext/is_aggregate.C: New test. From-SVN: r246609
Diffstat (limited to 'gcc/cp/cxx-pretty-print.c')
-rw-r--r--gcc/cp/cxx-pretty-print.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cp/cxx-pretty-print.c b/gcc/cp/cxx-pretty-print.c
index 150b603..470d124 100644
--- a/gcc/cp/cxx-pretty-print.c
+++ b/gcc/cp/cxx-pretty-print.c
@@ -2585,6 +2585,9 @@ pp_cxx_trait_expression (cxx_pretty_printer *pp, tree t)
case CPTK_IS_ABSTRACT:
pp_cxx_ws_string (pp, "__is_abstract");
break;
+ case CPTK_IS_AGGREGATE:
+ pp_cxx_ws_string (pp, "__is_aggregate");
+ break;
case CPTK_IS_BASE_OF:
pp_cxx_ws_string (pp, "__is_base_of");
break;