aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2013-02-22 17:24:27 -0500
committerJason Merrill <jason@gcc.gnu.org>2013-02-22 17:24:27 -0500
commit82a1326b09d144a886124770e405a807f27ad4e8 (patch)
tree270a36208e36c3656e1a82dfdbc669a94e0cfd24 /gcc
parent3ced2284b437b9e5a46c165df006a5a52cb5d18c (diff)
downloadgcc-82a1326b09d144a886124770e405a807f27ad4e8.zip
gcc-82a1326b09d144a886124770e405a807f27ad4e8.tar.gz
gcc-82a1326b09d144a886124770e405a807f27ad4e8.tar.bz2
re PR c++/56377 (<missing> template args in substitution-failure diagnostics)
PR c++/56377 * pt.c (fn_type_unification): Use explicit args in template instantiation context. From-SVN: r196230
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/pt.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 6b3aa17..ed5d399 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,5 +1,9 @@
2013-02-22 Jason Merrill <jason@redhat.com>
+ PR c++/56377
+ * pt.c (fn_type_unification): Use explicit args in template
+ instantiation context.
+
PR c++/56359
* call.c (can_convert_arg): Discard access checks.
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 440df1e..a39d114 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -15008,8 +15008,10 @@ fn_type_unification (tree fn,
processing_template_decl += incomplete;
input_location = DECL_SOURCE_LOCATION (fn);
+ TREE_VALUE (tinst) = explicit_targs;
fntype = tsubst (TREE_TYPE (fn), explicit_targs,
complain | tf_partial, NULL_TREE);
+ TREE_VALUE (tinst) = targs;
input_location = loc;
processing_template_decl -= incomplete;