diff options
author | Mark Mitchell <mark@codesourcery.com> | 2005-07-18 15:44:36 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2005-07-18 15:44:36 +0000 |
commit | eba839f9719e66195f75207b377593c025c71b82 (patch) | |
tree | 7a30e58e91902a07435d0df3f33afcd8eeeddc4e /gcc/cp/cp-tree.h | |
parent | 28356f52a9c5d00dcf7b6673a2e83309c63cee0c (diff) | |
download | gcc-eba839f9719e66195f75207b377593c025c71b82.zip gcc-eba839f9719e66195f75207b377593c025c71b82.tar.gz gcc-eba839f9719e66195f75207b377593c025c71b82.tar.bz2 |
re PR c++/22263 (explicit instantiation fails to emit symbols defined later)
PR c++/22263
* cp-tree.h (instantiate_decl): Change prototype.
* decl2.c (mark_used): Adjust accordingly.
* pt.c (do_decl_instantiation): Likewise.
(instantiate_class_member): Likewise.
(instantiate_decl): Rename undefined_ok as expl_inst_class_mem_p.
Clear DECL_INTERFACE_KNOWN for an explicitly instantiated template
that has no definition available.
(instantiate_pending_templates): Adjust call to instantiate_decl.
PR c++/22263
* g++.dg/template/explicit7.C: New test.
From-SVN: r102133
Diffstat (limited to 'gcc/cp/cp-tree.h')
-rw-r--r-- | gcc/cp/cp-tree.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 2d5e5f1..d9d053d 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -3997,7 +3997,7 @@ extern int more_specialized_fn (tree, tree, int); extern void mark_class_instantiated (tree, int); extern void do_decl_instantiation (tree, tree); extern void do_type_instantiation (tree, tree, tsubst_flags_t); -extern tree instantiate_decl (tree, int, int); +extern tree instantiate_decl (tree, int, bool); extern int push_tinst_level (tree); extern void pop_tinst_level (void); extern int more_specialized_class (tree, tree, tree); |