diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index e83908ae61eb..b4e0fc921ad5 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ Fri Sep 26 00:22:56 1997 Jason Merrill + * search.c (get_matching_virtual): Notice virtual bases when sorrying + about covariant returns. + * parse.y (member_init): Also imply typename here. Remove ancient extension for initializing base members. diff --git a/gcc/cp/search.c b/gcc/cp/search.c index c8e08064630e..6da3f81713a8 100644 --- a/gcc/cp/search.c +++ b/gcc/cp/search.c @@ -2197,7 +2197,8 @@ get_matching_virtual (binfo, fndecl, dtorp) { tree binfo = get_binfo (b, d, 1); if (binfo != error_mark_node - && ! BINFO_OFFSET_ZEROP (binfo)) + && (! BINFO_OFFSET_ZEROP (binfo) + || TREE_VIA_VIRTUAL (binfo))) sorry ("adjusting pointers for covariant returns"); } if (TYPE_READONLY (d) > TYPE_READONLY (b))