From: Tom de Vries Date: Tue, 13 Jun 2023 10:21:45 +0000 (+0200) Subject: [gdb/testsuite] Fix gdb.dap/type_check.exp with older python X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=40bea10383b36fbe451d91ed0513792c399de1a6;p=binutils-gdb.git [gdb/testsuite] Fix gdb.dap/type_check.exp with older python On openSUSE Leap 15.4 with system python 3.6, I run into: ... (gdb) python check_everything()^M (gdb) FAIL: gdb.dap/type_check.exp: type checker ... In check_everything, the hasattr test fails silently: ... def check_everything(): # Older versions of Python can't really implement this. if hasattr(typing, "get_origin"): ... and that makes the gdb_test in the test-case fail. Fix this by emitting UNSUPPORTED instead in check_everything, and detecting this in the test-case. Tested on x86_64-linux. --- diff --git a/gdb/testsuite/gdb.dap/type_check.exp b/gdb/testsuite/gdb.dap/type_check.exp index 346b4ba75b1..441588e5b1e 100644 --- a/gdb/testsuite/gdb.dap/type_check.exp +++ b/gdb/testsuite/gdb.dap/type_check.exp @@ -26,4 +26,11 @@ set remote_python_file \ [gdb_remote_download host ${srcdir}/${subdir}/${gdb_test_file_name}.py] gdb_test_no_output "source ${remote_python_file}" "load python file" -gdb_test "python check_everything()" OK "type checker" +gdb_test_multiple "python check_everything()" "type checker" { + -re -wrap "OK" { + pass $gdb_test_name + } + -re -wrap "UNSUPPORTED" { + unsupported $gdb_test_name + } +} diff --git a/gdb/testsuite/gdb.dap/type_check.py b/gdb/testsuite/gdb.dap/type_check.py index 1fdb595f3c6..ec4982c2932 100644 --- a/gdb/testsuite/gdb.dap/type_check.py +++ b/gdb/testsuite/gdb.dap/type_check.py @@ -94,3 +94,5 @@ def check_everything(): check_map() check_opt() print("OK") + else: + print("UNSUPPORTED")