PR c++/11961:
authorTom Tromey <tromey@redhat.com>
Tue, 31 Aug 2010 20:03:20 +0000 (20:03 +0000)
committerTom Tromey <tromey@redhat.com>
Tue, 31 Aug 2010 20:03:20 +0000 (20:03 +0000)
* dwarf2read.c (new_symbol_full) <DW_TAG_template_type_param>:
Don't set TYPE_NAME on the type.

gdb/ChangeLog
gdb/dwarf2read.c

index 1febb54..89d6156 100644 (file)
@@ -1,3 +1,9 @@
+2010-08-31  Tom Tromey  <tromey@redhat.com>
+
+       PR c++/11961:
+       * dwarf2read.c (new_symbol_full) <DW_TAG_template_type_param>:
+       Don't set TYPE_NAME on the type.
+
 2010-08-31  Michael Snyder  <msnyder@msnyder-server.eng.vmware.com>
 
        * infrun.c (set_exec_direction_func): Error out if target does not
index ac954e6..c531864 100644 (file)
@@ -10729,20 +10729,21 @@ new_symbol_full (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
                               && (cu->language == language_cplus
                                   || cu->language == language_java)
                               ? &global_symbols : cu->list_in_scope);
-             }
 
-           /* The semantics of C++ state that "struct foo { ... }" also
-              defines a typedef for "foo".  A Java class declaration also
-              defines a typedef for the class.  */
-           if (cu->language == language_cplus
-               || cu->language == language_java
-               || cu->language == language_ada)
-             {
-               /* The symbol's name is already allocated along with
-                  this objfile, so we don't need to duplicate it for
-                  the type.  */
-               if (TYPE_NAME (SYMBOL_TYPE (sym)) == 0)
-                 TYPE_NAME (SYMBOL_TYPE (sym)) = SYMBOL_SEARCH_NAME (sym);
+               /* The semantics of C++ state that "struct foo {
+                  ... }" also defines a typedef for "foo".  A Java
+                  class declaration also defines a typedef for the
+                  class.  */
+               if (cu->language == language_cplus
+                   || cu->language == language_java
+                   || cu->language == language_ada)
+                 {
+                   /* The symbol's name is already allocated along
+                      with this objfile, so we don't need to
+                      duplicate it for the type.  */
+                   if (TYPE_NAME (SYMBOL_TYPE (sym)) == 0)
+                     TYPE_NAME (SYMBOL_TYPE (sym)) = SYMBOL_SEARCH_NAME (sym);
+                 }
              }
          }
          break;