diff options
author | lerdsuwa <lerdsuwa@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-25 17:05:38 +0000 |
---|---|---|
committer | lerdsuwa <lerdsuwa@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-25 17:05:38 +0000 |
commit | 352baa70189c521d2c52b11845fc93cd4ed15b36 (patch) | |
tree | 91d0a3afa8097085bb941b4f5983bfc30e4e40c2 /gcc/cp/name-lookup.h | |
parent | 1fadf2c820097b85041a933084e94a9ee64243c9 (diff) | |
download | gcc-352baa70189c521d2c52b11845fc93cd4ed15b36.tar.gz |
Friend class name lookup 3/n, PR c++/3332
* name-lookup.c (push_inner_scope, pop_inner_scope): New functions.
(lookup_type_scope): Don't deal with name from user declaration
specially.
* name-lookup.h (push_inner_scope, pop_inner_scope): Add declarations.
* parser.c (cp_parser_class_specifier): Use push_inner_scope and
pop_inner_scope.
* g++.dg/lookup/friend3.C: New test.
* g++.dg/lookup/friend4.C: Likewise.
* g++.dg/lookup/friend5.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@91300 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/name-lookup.h')
-rw-r--r-- | gcc/cp/name-lookup.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/cp/name-lookup.h b/gcc/cp/name-lookup.h index 08a9ba504b9..011c62a6f13 100644 --- a/gcc/cp/name-lookup.h +++ b/gcc/cp/name-lookup.h @@ -306,6 +306,8 @@ extern void keep_next_level (bool); extern bool is_ancestor (tree, tree); extern bool push_scope (tree); extern void pop_scope (tree); +extern tree push_inner_scope (tree); +extern void pop_inner_scope (tree, tree); extern void push_binding_level (struct cp_binding_level *); extern void push_namespace (tree); |