diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 8ebe307efc9..3640ccefc80 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ 2015-07-09 Jason Merrill + * pt.c (instantiation_dependent_r) [TRAIT_EXPR]: Call + value_dependent_expression_p. + * cp-tree.h (struct cp_parameter_declarator): Rename ellipsis_p to template_parameter_pack_p. * parser.c (declarator_can_be_parameter_pack): False if diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c index 49110965212..b5f1af8b135 100644 --- a/gcc/cp/parser.c +++ b/gcc/cp/parser.c @@ -20788,7 +20788,7 @@ cp_parser_member_declaration (cp_parser* parser) decl = cp_parser_alias_declaration (parser); /* Note that if we actually see the '=' token after the identifier, cp_parser_alias_declaration commits the - tentative parse. In that case, we really expects an + tentative parse. In that case, we really expect an alias-declaration. Otherwise, we expect a using declaration. */ alias_decl_expected = diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index d3e9d3175b5..63907ce165b 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -20131,7 +20131,7 @@ template_for_substitution (tree decl) } /* Returns true if we need to instantiate this template instance even if we - know we aren't going to emit it.. */ + know we aren't going to emit it. */ bool always_instantiate_p (tree decl) @@ -21684,9 +21684,7 @@ instantiation_dependent_r (tree *tp, int *walk_subtrees, } case TRAIT_EXPR: - if (dependent_type_p (TRAIT_EXPR_TYPE1 (*tp)) - || (TRAIT_EXPR_TYPE2 (*tp) - && dependent_type_p (TRAIT_EXPR_TYPE2 (*tp)))) + if (value_dependent_expression_p (*tp)) return *tp; *walk_subtrees = false; return NULL_TREE;