diff options
author | Jason Merrill <jason@redhat.com> | 2013-03-16 22:34:03 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2013-03-16 22:34:03 -0400 |
commit | 011ce3f3c2d1a534b2671ed6d5204fec9120fff7 (patch) | |
tree | 4bc87c54703eb149d1785dc91d46c893c0a495d9 /gcc | |
parent | 98e8112376654ff5eae902ecd41a61bf0508ff73 (diff) | |
download | gcc-011ce3f3c2d1a534b2671ed6d5204fec9120fff7.zip gcc-011ce3f3c2d1a534b2671ed6d5204fec9120fff7.tar.gz gcc-011ce3f3c2d1a534b2671ed6d5204fec9120fff7.tar.bz2 |
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/cp/pt.c | 5 |
2 files changed, 6 insertions, 3 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 8aa3952..fa17a08 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,9 @@ 2013-03-16 Jason Merrill <jason@redhat.com> + 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 36175ca..6264add 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; |