Maxim Kuvyrkov maxim.kuvyrkov@linaro.org writes:
| commit gdb-14-branchpoint-1356-g7737b133640 | Author: Tom Tromey tromey@adacore.com | Date: Tue Jan 9 11:47:17 2024 -0700 | | Handle DW_AT_endianity on enumeration types | | A user found that gdb would not correctly print a field from an Ada | record using the scalar storage order feature. We tracked this down | to a combination of problems. | | First, GCC did not emit DW_AT_endianity on the enumeration type. | ... 14 lines of the commit log omitted.
I see the above failure for both aarch64-linux-gnu and arm-linux-gnueabihf in our testing. The log shows ([1]):
(gdb) PASS: gdb.ada/scalar_storage.exp: print V_LE get_compiler_info: gcc-14-0-1
Any idea what can be causing this?
This failure happens in CI configurations where we track tip-of-trunk GCC.
This failure is what I would expect if your compiler does not have the fix. Can you see if your gcc includes this change?
commit 5d8b60effc7268448a94fbbbad923ab6871252cd Author: Eric Botcazou ebotcazou@adacore.com Date: Wed Jan 10 13:23:46 2024 +0100
Fix debug info for enumeration types with reverse Scalar_Storage_Order
This implements the support of DW_AT_endianity for enumeration types because they are scalar and therefore, reverse Scalar_Storage_Order is supported for them, but only when the -gstrict-dwarf switch is not passed because this is an extension.
There is an associated GDB patch to be submitted to grok the new DWARF.
thanks, Tom