From: Jason Merrill Date: Sun, 17 Mar 2013 02:34:03 +0000 (-0400) Subject: re PR c++/56238 (ICE in tree check: expected record_type or union_type or qual_union_... X-Git-Tag: releases/gcc-4.9.0~7042 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=011ce3f3c2d1a534b2671ed6d5204fec9120fff7;p=thirdparty%2Fgcc.git re PR c++/56238 (ICE in tree check: expected record_type or union_type or qual_union_type, have template_type_parm in lookup_conversions, at cp/search.c:2515) PR c++/56238 * pt.c (fold_non_dependent_expr_sfinae): Check instantiation_dependent_expression_p. From-SVN: r196724 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 8aa39524b56e..fa17a08c9958 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,9 @@ 2013-03-16 Jason Merrill + PR c++/56238 + * pt.c (fold_non_dependent_expr_sfinae): Check + instantiation_dependent_expression_p. + PR c++/56095 * class.c (resolve_address_of_overloaded_function): Accept a reference to function for target_type. diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 36175ca7022c..6264add0947c 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -5044,9 +5044,8 @@ fold_non_dependent_expr_sfinae (tree expr, tsubst_flags_t complain) as two declarations of the same function, for example. */ if (processing_template_decl - && !type_dependent_expression_p (expr) - && potential_constant_expression (expr) - && !value_dependent_expression_p (expr)) + && !instantiation_dependent_expression_p (expr) + && potential_constant_expression (expr)) { HOST_WIDE_INT saved_processing_template_decl;