diff options
author | Tom de Vries <tdevries@suse.de> | 2024-08-01 09:23:24 +0200 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2024-08-01 09:23:24 +0200 |
commit | 1d4ed5907570ef4901f2bbf383e563dc0854bf15 (patch) | |
tree | b2a52866e75b7d3acd20e71318ddd21582c5f2da | |
parent | ca5915512b4b20da363c7815ceb24759e9af01c1 (diff) | |
download | gdb-1d4ed5907570ef4901f2bbf383e563dc0854bf15.zip gdb-1d4ed5907570ef4901f2bbf383e563dc0854bf15.tar.gz gdb-1d4ed5907570ef4901f2bbf383e563dc0854bf15.tar.bz2 |
[gdb/testsuite] Fix gdb.python/py-format-string.exp with python 3.13
On fedora rawhide, with python 3.13, I run into:
...
(gdb) python print (gdb.parse_and_eval ('a_point_t').format_string (invalid=True))^M
Python Exception <class 'TypeError'>: \
this function got an unexpected keyword argument 'invalid'^M
Error occurred in Python: \
this function got an unexpected keyword argument 'invalid'^M
(gdb) FAIL: $exp: format_string: lang_c: test_all_common: test_invalid_args: \
a_point_t with option invalid=True
...
A passing version with an older python version looks like:
...
(gdb) python print (gdb.parse_and_eval ('a_point_t').format_string (invalid=True))^M
Python Exception <class 'TypeError'>: \
'invalid' is an invalid keyword argument for this function^M
Error occurred in Python: \
'invalid' is an invalid keyword argument for this function^M
(gdb) PASS: $exp: format_string: lang_c: test_all_common: test_invalid_args: \
a_point_t with option invalid=True
...
Fix this by accepting the updated error message.
Tested on aarch64-linux.
PR testsuite/31912
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31912
-rw-r--r-- | gdb/testsuite/gdb.python/py-format-string.exp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gdb/testsuite/gdb.python/py-format-string.exp b/gdb/testsuite/gdb.python/py-format-string.exp index 0c70ad5..9209213 100644 --- a/gdb/testsuite/gdb.python/py-format-string.exp +++ b/gdb/testsuite/gdb.python/py-format-string.exp @@ -1104,10 +1104,16 @@ proc_with_prefix test_invalid_args {} { "12" \ "TypeError.*: format_string\\(\\) takes 0 positional arguments but 1 were given.*" + # For python <= 3.12. + set re1 \ + "TypeError.*: 'invalid' is an invalid keyword argument for this function" + # For python >= 3.13. + set re2 \ + "TypeError.*: this function got an unexpected keyword argument 'invalid'" check_format_string \ "a_point_t" \ "invalid=True" \ - "TypeError.*: 'invalid' is an invalid keyword argument for this function.*" + "($re1|$re2).*" check_format_string \ "a_point_t" \ |