diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/pt.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.pt/spec33.C | 2 |
4 files changed, 16 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 166d0c1c573..e846ca0b4f3 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2001-01-23 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> + + * pt.c (check_explicit_specialization): Clone constructors and + destructors. + 2001-01-23 Nathan Sidwell <nathan@codesourcery.com> * decl.c (grokdeclarator): Don't presume DECL_LANG_SPECIFIC diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 184edf846f9..0bed46ec854 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -1688,6 +1688,11 @@ check_explicit_specialization (declarator, decl, template_count, flags) It's just the name of an instantiation. But, it's not a request for an instantiation, either. */ SET_DECL_IMPLICIT_INSTANTIATION (decl); + else if (DECL_CONSTRUCTOR_P (decl) || DECL_DESTRUCTOR_P (decl)) + /* This is indeed a specialization. In case of constructors + and destructors, we need in-charge and not-in-charge + versions in V3 ABI. */ + clone_function_decl (decl, /*update_method_vec_p=*/0); /* Register this specialization so that we can find it again. */ diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6a963b4a0f8..a97e893c90f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2001-01-23 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> + + * g++.old-deja/g++.pt/spec33.C: Change from "Build don't link" to + "Build don't run". + 2001-01-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * gcc.c-torture/execute/20010123-1.c: New test. diff --git a/gcc/testsuite/g++.old-deja/g++.pt/spec33.C b/gcc/testsuite/g++.old-deja/g++.pt/spec33.C index a458c1dc417..c7959587926 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/spec33.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/spec33.C @@ -1,4 +1,4 @@ -// Build don't link: +// Build don't run: // Origin: James McKelvey <mckelvey@fafnir.com> class A |