mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-31 15:31:11 +08:00
pt.c (tsubst_decl): SET_DECL_IMPLICIT_INSTANTIATION before register_specialization.
* pt.c (tsubst_decl) [VAR_DECL]: SET_DECL_IMPLICIT_INSTANTIATION before register_specialization. From-SVN: r223461
This commit is contained in:
parent
1210105350
commit
226a93b7b7
@ -1,5 +1,8 @@
|
||||
2015-05-20 Jason Merrill <jason@redhat.com>
|
||||
|
||||
* pt.c (tsubst_decl) [VAR_DECL]: SET_DECL_IMPLICIT_INSTANTIATION
|
||||
before register_specialization.
|
||||
|
||||
* decl.c (grok_op_properties): Don't complain about size_t
|
||||
placement delete here.
|
||||
* call.c (second_parm_is_size_t): Split out from...
|
||||
|
@ -11407,9 +11407,9 @@ tsubst_decl (tree t, tree args, tsubst_flags_t complain)
|
||||
processing here. */
|
||||
DECL_EXTERNAL (r) = 1;
|
||||
|
||||
register_specialization (r, gen_tmpl, argvec, false, hash);
|
||||
DECL_TEMPLATE_INFO (r) = build_template_info (tmpl, argvec);
|
||||
SET_DECL_IMPLICIT_INSTANTIATION (r);
|
||||
register_specialization (r, gen_tmpl, argvec, false, hash);
|
||||
}
|
||||
else if (!cp_unevaluated_operand)
|
||||
register_local_specialization (r, t);
|
||||
|
9
gcc/testsuite/g++.dg/cpp1y/var-templ27.C
Normal file
9
gcc/testsuite/g++.dg/cpp1y/var-templ27.C
Normal file
@ -0,0 +1,9 @@
|
||||
// { dg-do compile { target c++14 } }
|
||||
|
||||
namespace A
|
||||
{
|
||||
template <class T> int I = 0;
|
||||
template <class T> int I<T*> = 42;
|
||||
}
|
||||
|
||||
int i = A::I<void*>;
|
Loading…
x
Reference in New Issue
Block a user