[PATCH] [gdb/testsuite] Fix gdb.python/py-mi-cmd.exp
Tom de Vries <[email protected]> Tue, 4 Aug 2026 17:31:50 +0200
| Newsgroups | gmane.comp.gdb.patches |
|---|---|
| Message-ID | <[email protected]> |
On Fedora Rawhide aarch64-linux (using Python 3.15.0b4), with test-case
gdb.python/py-mi-cmd.exp I ran into:
...
Expecting: ^(-pycmd bk3[^M
]+)?(&"TypeError.*: __repr__ returned non-string \(type BadKey\).."^M
\^error,msg="Error occurred in Python: __repr__ returned non-string \(type BadKey\)"[^M
]+[(]gdb[)] ^M
[ ]*)
-pycmd bk3^M
&"TypeError: ReallyBadKey.__repr__() must return a str, not BadKey\n"^M
^error,msg="Error occurred in Python: ReallyBadKey.__repr__() must return a str, not BadKey"^M
(gdb) ^M
FAIL: $exp: -pycmd bk3 (unexpected output)
...
Fix this by updating the regexp.
Tested with aarch64-linux (Python 3.15.0b4) and x86_64-linux (Python 3.13.14).
---
gdb/testsuite/gdb.python/py-mi-cmd.exp | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/gdb/testsuite/gdb.python/py-mi-cmd.exp b/gdb/testsuite/gdb.python/py-mi-cmd.exp
index b66a73c331f..3c57a7ae322 100644
--- a/gdb/testsuite/gdb.python/py-mi-cmd.exp
+++ b/gdb/testsuite/gdb.python/py-mi-cmd.exp
@@ -68,10 +68,19 @@ mi_gdb_test "-pycmd bk2" \
"\\^error,msg=\"Error occurred in Python: non-string object used as key: 1\"" \
"-pycmd bk2"
+set re_msg \
+ [string cat \
+ "(" \
+ [string_to_regexp {__repr__ returned non-string (type BadKey)}] \
+ "|" \
+ [string_to_regexp \
+ {ReallyBadKey.__repr__() must return a str, not BadKey}] \
+ ")"]
mi_gdb_test "-pycmd bk3" \
- [multi_line \
- "&\"TypeError.*: __repr__ returned non-string \\(type BadKey\\)..\"" \
- "\\^error,msg=\"Error occurred in Python: __repr__ returned non-string \\(type BadKey\\)\""] \
+ [subst_vars \
+ [multi_line \
+ {&"TypeError.*: $re_msg\\n"} \
+ {\^error,msg="Error occurred in Python: $re_msg"}]] \
"-pycmd bk3"
mi_gdb_test "-pycmd tpl" \
base-commit: 471130b39c03623ec6d78ece377ff4da3f6bfe7b
--
2.51.0