diff options
author | Mark Mitchell <mark@codesourcery.com> | 2005-12-12 16:29:44 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2005-12-12 16:29:44 +0000 |
commit | 36569397edc59ef5ccefbf4c0d70deff54102afd (patch) | |
tree | 11a1e2f772f139cd27e6c33fb6034becdb1dfb38 /gcc/cp/tree.c | |
parent | 74daec8cf211dc4bc322ec9ee5a6e992122ceb45 (diff) | |
download | gcc-36569397edc59ef5ccefbf4c0d70deff54102afd.zip gcc-36569397edc59ef5ccefbf4c0d70deff54102afd.tar.gz gcc-36569397edc59ef5ccefbf4c0d70deff54102afd.tar.bz2 |
re PR c++/25300 (ICE with g++.dg/template/inherit.C)
PR c++/25300
* tree.c (build_qualified_name): Return error_mark_node for
erroneous input.
PR c++/25300
* g++.dg/template/inherit.C: Do not use a generic error message.
From-SVN: r108413
Diffstat (limited to 'gcc/cp/tree.c')
-rw-r--r-- | gcc/cp/tree.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index 15ee56c..4340c69 100644 --- a/gcc/cp/tree.c +++ b/gcc/cp/tree.c @@ -817,6 +817,10 @@ tree build_qualified_name (tree type, tree scope, tree name, bool template_p) { tree t; + if (type == error_mark_node + || scope == error_mark_node + || name == error_mark_node) + return error_mark_node; t = build2 (SCOPE_REF, type, scope, name); QUALIFIED_NAME_IS_TEMPLATE (t) = template_p; return t; |