diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index a2cb2fc636e..fc6ad1ec62c 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +1998-09-25 Martin von Löwis + + * decl.c (lookup_namespace_name): If the name is a namespace, + return it immediately. + Fri Sep 25 11:45:38 1998 Kaveh R. Ghazi * cp-tree.h (define_case_label): Remove unused parameter. diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 48d25d94be9..abd0808e485 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -4752,6 +4752,11 @@ lookup_namespace_name (namespace, name) tree val; my_friendly_assert (TREE_CODE (namespace) == NAMESPACE_DECL, 370); + + /* This happens for A::B when B is a namespace. */ + if (TREE_CODE (name) == NAMESPACE_DECL) + return name; + my_friendly_assert (TREE_CODE (name) == IDENTIFIER_NODE, 373); val = binding_init (&_b);