From e76e4a6842e855c0be437fcb1d0079e9323d8231 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Wed, 10 Jun 1998 21:12:16 +0000 Subject: [PATCH] * search.c (covariant_return_p): Complain about ambiguous base. From-SVN: r20420 --- gcc/cp/ChangeLog | 2 ++ gcc/cp/search.c | 7 ++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 5259df091ac..0b67eb5db38 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,7 @@ 1998-06-10 Jason Merrill + * search.c (covariant_return_p): Complain about ambiguous base. + * typeck.c (build_component_ref): Diagnose ref to nested type. 1998-06-10 Brendan Kehoe diff --git a/gcc/cp/search.c b/gcc/cp/search.c index 4bece8bf890..1478f23f3e2 100644 --- a/gcc/cp/search.c +++ b/gcc/cp/search.c @@ -2205,7 +2205,12 @@ covariant_return_p (brettype, drettype) if (! IS_AGGR_TYPE (drettype) || ! IS_AGGR_TYPE (brettype)) return -1; - binfo = get_binfo (brettype, drettype, 0); + binfo = get_binfo (brettype, drettype, 1); + + /* If we get an error_mark_node from get_binfo, it already complained, + so let's just succeed. */ + if (binfo == error_mark_node) + return 1; if (! BINFO_OFFSET_ZEROP (binfo) || TREE_VIA_VIRTUAL (binfo)) return 2; -- 2.30.2