aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Merrill <jason@yorick.cygnus.com>1998-05-15 20:31:52 +0000
committerJason Merrill <jason@gcc.gnu.org>1998-05-15 16:31:52 -0400
commit51bcf66114982e2322781d49d45494e26074028e (patch)
tree466b2b631c556de57fb23d1d8120100e62a73ba9
parent0b60dfe36c6247703fd2b2e228c1b334798c7624 (diff)
downloadgcc-51bcf66114982e2322781d49d45494e26074028e.zip
gcc-51bcf66114982e2322781d49d45494e26074028e.tar.gz
gcc-51bcf66114982e2322781d49d45494e26074028e.tar.bz2
decl.c (start_decl): Revert problem change.
* decl.c (start_decl): Revert problem change. * Makefile.in (CONFLICTS): Fix. From-SVN: r19785
-rw-r--r--gcc/cp/ChangeLog6
-rw-r--r--gcc/cp/Makefile.in2
-rw-r--r--gcc/cp/decl.c5
3 files changed, 11 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 4640fb8..eb6000e 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+Fri May 15 20:28:00 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * decl.c (start_decl): Revert problem change.
+
+ * Makefile.in (CONFLICTS): Fix.
+
Fri May 15 15:34:02 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
* decl.c (duplicate_decls): Clean up, add DECL_DATA_AREA bits.
diff --git a/gcc/cp/Makefile.in b/gcc/cp/Makefile.in
index 869023d..61da1ab 100644
--- a/gcc/cp/Makefile.in
+++ b/gcc/cp/Makefile.in
@@ -206,7 +206,7 @@ parse.o : $(PARSE_C) $(CONFIG_H) $(CXX_TREE_H) $(srcdir)/../flags.h lex.h \
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(BIG_SWITCHFLAG) \
`echo $(PARSE_C) | sed 's,^\./,,'`
-CONFLICTS = expect 21 shift/reduce conflicts and 49 reduce/reduce conflicts.
+CONFLICTS = expect 20 shift/reduce conflicts and 39 reduce/reduce conflicts.
$(PARSE_H) : $(PARSE_C)
$(PARSE_C) : $(srcdir)/parse.y
@echo $(CONFLICTS)
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 078b318..9d409e3 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -6217,7 +6217,10 @@ start_decl (declarator, declspecs, initialized, attributes, prefix_attributes)
comes from another scope, e.g. a static member variable.
TEM may equal DECL or it may be a previous decl of the same name. */
- if ((TREE_CODE (decl) != PARM_DECL && DECL_CONTEXT (decl) != NULL_TREE)
+ if ((TREE_CODE (decl) != PARM_DECL && DECL_CONTEXT (decl) != NULL_TREE
+ /* Definitions of namespace members outside their namespace are
+ possible. */
+ && TREE_CODE (DECL_CONTEXT (decl)) != NAMESPACE_DECL)
|| (TREE_CODE (decl) == TEMPLATE_DECL && !namespace_bindings_p ())
|| TREE_CODE (type) == LANG_TYPE
/* The declaration of template specializations does not affect