Fix gdb.dwarf2/dw2-double-set-die-type.exp with Clang
authorGary Benson <gbenson@redhat.com>
Wed, 30 Sep 2020 09:51:58 +0000 (10:51 +0100)
committerGary Benson <gbenson@redhat.com>
Wed, 30 Sep 2020 09:51:58 +0000 (10:51 +0100)
gdb.dwarf2/dw2-double-set-die-type.exp failed to build with Clang,
because of the following issues:

- One .uleb128 directive was specified with an uppercase U,
  causing Clang to fail with the message:
    error: unknown directive
  This commit converts that directive to all-lowercase.

- The label ".Labbrev1_begin" was referenced but not defined,
  causing Clang to fail with the message:
    <unknown>:0: error: Undefined temporary symbol
  This commit adds the label in the appropriate place.

- The label ".Ldebug_line0" was referenced but not defined,
  causing Clang to fail with the message:
    <unknown>:0: error: Undefined temporary symbol
  This commit removes the reference.

gdb/testsuite/ChangeLog:

* gdb.dwarf2/dw2-double-set-die-type.S (.Ldie_3e0):
Convert directive to lowercase.
(.Labbrev1_begin): Add missing label.
(abbrev code 0x1): Remove DW_AT_stmt_list.
(.Ldie_b): Likewise.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.dwarf2/dw2-double-set-die-type.S

index db0bdc6d3246b397523edb51773b21305a38128b..2046c9b8e6c2a817e80a7cd11cbab827346b96c3 100644 (file)
@@ -1,3 +1,11 @@
+2020-09-30  Gary Benson <gbenson@redhat.com>
+
+       * gdb.dwarf2/dw2-double-set-die-type.S (.Ldie_3e0):
+       Convert directive to lowercase.
+       (.Labbrev1_begin): Add missing label.
+       (abbrev code 0x1): Remove DW_AT_stmt_list.
+       (.Ldie_b): Likewise.
+
 2020-09-27  Tom Tromey  <tom@tromey.com>
 
        * gdb.tui/new-layout.exp: Use with_test_prefix.
index 3a31e0352163b3f991a420a370e785f54d0fc03d..d09a77b88da90101b65f4d0614747259eb6259bc 100644 (file)
@@ -50,7 +50,6 @@
        .ascii  "GNU C++ 4.4.3 20100127 (Red Hat 4.4.3-4)\0"    /* DW_AT_producer */
        .byte   0x4     /* DW_AT_language */
        .ascii  "duplicate-type.cc\0"   /* DW_AT_name */
-       .4byte  .Ldebug_line0   /* DW_AT_stmt_list */
 
 .Ldie_38:
        .uleb128 0x3    /* (DIE (0x38) DW_TAG_typedef) */
        .4byte  OFFSET (3d5)    /* DW_AT_type */
 
 .Ldie_3e0:
-       .Uleb128 0x20   /* (DIE (0x3e0) DW_TAG_class_type) */
+       .uleb128 0x20   /* (DIE (0x3e0) DW_TAG_class_type) */
        .4byte  OFFSET (70)     /* DW_AT_specification */
        .byte   0x1     /* DW_AT_byte_size */
        .4byte  OFFSET (44e)    /* DW_AT_sibling */
 
 /* Abbrev table */
        .section        .debug_abbrev
+.Labbrev1_begin:
        .uleb128 0x1    /* (abbrev code) */
        .uleb128 0x11   /* (TAG: DW_TAG_compile_unit) */
        .byte   0x1     /* DW_children_yes */
        .uleb128 0xb    /* (DW_FORM_data1) */
        .uleb128 0x3    /* (DW_AT_name) */
        .uleb128 0x8    /* (DW_FORM_sting) */
-       .uleb128 0x10   /* (DW_AT_stmt_list) */
-       .uleb128 0x6    /* (DW_FORM_data4) */
        .byte   0x0
        .byte   0x0