From: Alan Modra Date: Thu, 10 Sep 2020 14:16:11 +0000 (+0930) Subject: PR26597, FAIL: gdb.dlang/demangle.exp: _D8demangle4testFI5identZv X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=918619e5e591c492b1a67f8ce125aa8728eb4497;p=binutils-gdb.git PR26597, FAIL: gdb.dlang/demangle.exp: _D8demangle4testFI5identZv gcc commit 387d0773f3 changed the D demangler, with the following commit log: libiberty: Add support for `in' and `in ref' storage classes. The storage class `in' is now a first-class citizen with its own mangle symbol, of which also permits `in ref'. Previously, `in' was an alias to `const [scope]', which is a type constructor. The mangle symbol repurposed for this is `I', which was originally used by identifier types. However, while TypeIdentifier is part of the grammar, it must be resolved to some other entity during the semantic passes, and so shouldn't appear anywhere in the mangled name. Old tests that are now no longer valid have been removed. This patch makes the same changes to the gdb testsuite as were made to the upstream gcc libiberty testsuite. gdb/testsuite/ PR 26597 * gdb.dlang/demangle.exp: Update tests as per gcc commit 387d0773f3. --- diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 33987e469a6..5e4f28ff1a4 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2020-09-10 Alan Modra + + PR 26597 + * gdb.dlang/demangle.exp: Update tests as per gcc commit 387d0773f3. + 2020-09-08 Tom de Vries * gdb.dwarf2/frame-inlined-in-outer-frame.exp: Consume gdb prompt diff --git a/gdb/testsuite/gdb.dlang/demangle.exp b/gdb/testsuite/gdb.dlang/demangle.exp index 86259ca0b02..41cc43a4553 100644 --- a/gdb/testsuite/gdb.dlang/demangle.exp +++ b/gdb/testsuite/gdb.dlang/demangle.exp @@ -93,8 +93,6 @@ proc test_d_demangling {} { test_demangling "_D8demangle4testFNhG2dZv" "demangle.test(__vector(double\[2\]))" test_demangling "_D8demangle4testFNhG4dZv" "demangle.test(__vector(double\[4\]))" - test_demangling "_D8demangle4testFI5identZv" "demangle.test(ident)" - test_demangling "_D8demangle4testFI5ident4testZv" "demangle.test(ident.test)" test_demangling "_D8demangle4testFC5classZv" "demangle.test(class)" test_demangling "_D8demangle4testFC5class4testZv" "demangle.test(class.test)" test_demangling "_D8demangle4testFS6structZv" "demangle.test(struct)" @@ -104,6 +102,8 @@ proc test_d_demangling {} { test_demangling "_D8demangle4testFT7typedefZv" "demangle.test(typedef)" test_demangling "_D8demangle4testFT7typedef4testZv" "demangle.test(typedef.test)" + test_demangling "_D8demangle4testFIaZv" "demangle.test(in char)" + test_demangling "_D8demangle4testFIKaZv" "demangle.test(in ref char)" test_demangling "_D8demangle4testFJaZv" "demangle.test(out char)" test_demangling "_D8demangle4testFKaZv" "demangle.test(ref char)" test_demangling "_D8demangle4testFLaZv" "demangle.test(lazy char)"