2005-08-05 James A. Morrison <phython@gcc.gnu.org>
authorphython <phython@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 6 Aug 2005 05:18:09 +0000 (05:18 +0000)
committerphython <phython@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 6 Aug 2005 05:18:09 +0000 (05:18 +0000)
        PR c++/22514
        * name-lookup.c (cp_emit_debug_info_for_using): Do nothing if
        sorrycount or errorcount are nonzero.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102799 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/cp/ChangeLog
gcc/cp/name-lookup.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/parse/pr22514.C [new file with mode: 0644]

index 6c4108f..574918b 100644 (file)
@@ -1,3 +1,9 @@
+2005-08-05  James A. Morrison  <phython@gcc.gnu.org>
+
+       PR c++/22514
+       * name-lookup.c (cp_emit_debug_info_for_using): Do nothing if
+       sorrycount or errorcount are nonzero.
+
 2005-08-05  Mark Mitchell  <mark@codesourcery.com>
 
        * name-lookup.c (pushtag): Remove accidental commit from:
index 70ecfad..a03b648 100644 (file)
@@ -4949,6 +4949,10 @@ pop_everything (void)
 void
 cp_emit_debug_info_for_using (tree t, tree context)
 {
+  /* Don't try to emit any debug information if we have errors.  */
+  if (sorrycount || errorcount)
+    return;
+
   /* Ignore this FUNCTION_DECL if it refers to a builtin declaration
      of a builtin function.  */
   if (TREE_CODE (t) == FUNCTION_DECL
index 8e512b2..d0fb7f3 100644 (file)
@@ -1,3 +1,7 @@
+2005-08-05  James A. Morrison  <phython@gcc.gnu.org>
+
+       * g++.dg/parse/pr22514.C: New test.
+
 2005-08-05  J"orn Rennecke <joern.rennecke@st.com>
 
        * gcc.dg/intmax_t-1.c: Extend dg-error to cover sh*-*-elf targets.
diff --git a/gcc/testsuite/g++.dg/parse/pr22514.C b/gcc/testsuite/g++.dg/parse/pr22514.C
new file mode 100644 (file)
index 0000000..23dc9b2
--- /dev/null
@@ -0,0 +1,13 @@
+/* { dg-do compile } */
+namespace s
+{
+  template <int> struct _List_base
+  {
+     int _M_impl;
+  };
+  template<int i> struct list : _List_base<i>
+  {
+    using _List_base<i>::_M_impl;
+  }
+}  /* { dg-error "expected unqualified-id before '\}'" } */
+s::list<1> OutputModuleListType;  /* { dg-error "expected" } */