diff options
author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-02-28 15:32:38 +0000 |
---|---|---|
committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-02-28 15:32:38 +0000 |
commit | 4a268c25f73e1ccfc8e3e86507f62149e882994b (patch) | |
tree | 1fca790a59ac55c84f2791b592dd172e3f0ece9f /gcc | |
parent | fdd6a2057eb2b807860ec3829520858d32d0ee19 (diff) | |
download | gcc-4a268c25f73e1ccfc8e3e86507f62149e882994b.tar.gz |
* search.c (lookup_base_r): Don't clear is_non_public just because
we found a friendly scope.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50140 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/search.c | 3 |
2 files changed, 6 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 3ca4e5b3c0a..85f254704ec 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ 2002-02-28 Jason Merrill <jason@redhat.com> + * search.c (lookup_base_r): Don't clear is_non_public just because + we found a friendly scope. + * decl.c (finish_function): Only warn about missing return statement with -Wreturn-type. @@ -1182,7 +1185,7 @@ Tue Nov 27 09:03:47 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> * search.c (get_vbase_1): Remove. (get_vbase): Remove. (convert_pointer_to_vbase): Remove. - (lookup_base_recursive): New function. + (lookup_base_r): New function. (lookup_base): New function. * typeck.c (require_complete_type): Use lookup_base & build_base_path instead of convert_pointer_to. diff --git a/gcc/cp/search.c b/gcc/cp/search.c index 10ebc739f07..018dfaaec57 100644 --- a/gcc/cp/search.c +++ b/gcc/cp/search.c @@ -201,8 +201,9 @@ lookup_base_r (binfo, base, access, within_current_scope, && !within_current_scope && is_friend (BINFO_TYPE (binfo), current_scope ())) { + /* Do not clear is_non_public here. If A is a private base of B, A + is not allowed to convert a B* to an A*. */ within_current_scope = 1; - is_non_public = 0; } if (same_type_p (BINFO_TYPE (binfo), base)) |