diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-10-01 17:25:05 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 1999-10-01 17:25:05 +0000 |
commit | b3da7bb1cfd62e0ad61e661e428f0af2124ee5e1 (patch) | |
tree | 694d7ced2e4915115bb5bcf49f7941a944c10e7e /gcc/cp | |
parent | 2816d1644f17de74f9065f2a2f2af48555e13b11 (diff) | |
download | gcc-b3da7bb1cfd62e0ad61e661e428f0af2124ee5e1.zip gcc-b3da7bb1cfd62e0ad61e661e428f0af2124ee5e1.tar.gz gcc-b3da7bb1cfd62e0ad61e661e428f0af2124ee5e1.tar.bz2 |
pt.c (tsubst_decl): If the type of a template instantiation is bogus, so is the whole instantiation.
* pt.c (tsubst_decl): If the type of a template instantiation is
bogus, so is the whole instantiation.
From-SVN: r29757
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/pt.c | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index a97890d..bef91e9 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +1999-10-01 Mark Mitchell <mark@codesourcery.com> + + * pt.c (tsubst_decl): If the type of a template instantiation is + bogus, so is the whole instantiation. + 1999-09-30 Mark Mitchell <mark@codesourcery.com> * decl.c (initialize_local_var): Handle static variables here. diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 5b7c181..fca18cc 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -5778,6 +5778,8 @@ tsubst_decl (t, args, type, in_decl) ctx = NULL_TREE; } type = tsubst (type, args, /*complain=*/1, in_decl); + if (type == error_mark_node) + return error_mark_node; /* We do NOT check for matching decls pushed separately at this point, as they may not represent instantiations of this |