[binutils-gdb] [gdb/testsuite] Improve quotemeta error messages
Tom de Vries
vries@sourceware.org
Fri Feb 13 11:03:17 GMT 2026
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d2d785c630757d31aedf9467acd0f13b2adc9876
commit d2d785c630757d31aedf9467acd0f13b2adc9876
Author: Tom de Vries <tdevries@suse.de>
Date: Fri Feb 13 12:03:06 2026 +0100
[gdb/testsuite] Improve quotemeta error messages
With test-case gdb.testsuite/quotemeta.exp we get:
...
check_quotemeta_fail: input: @NOTHING
check_quotemeta_fail: catch_res: 1, catch_msg: \
can't read "::_quotemeta(NOTHING)": no such element in array
PASS: gdb.testsuite/quotemeta.exp: no-such-subst
check_quotemeta_fail: input: @bad-name
check_quotemeta_fail: catch_res: 1, catch_msg: invalid quotemeta expression
PASS: gdb.testsuite/quotemeta.exp: bad-name
...
Improve the error messages to:
- undefined quotemeta expression @NOTHING
- invalid quotemeta expression @bad-name
Diff:
---
gdb/testsuite/lib/quotemeta.exp | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/gdb/testsuite/lib/quotemeta.exp b/gdb/testsuite/lib/quotemeta.exp
index 5b587df754e..d2810e2c45b 100644
--- a/gdb/testsuite/lib/quotemeta.exp
+++ b/gdb/testsuite/lib/quotemeta.exp
@@ -85,7 +85,7 @@ proc quotemeta {str} {
# Match the usual forms.
if {![regexp -- "^(\\.\\.\\.|\[A-Z\]\[A-Z_\]*|@|/\[^/\]*/)(.*)$" \
$at_text ignore at_text remainder]} {
- error "invalid quotemeta expression"
+ error "invalid quotemeta expression @$at_text"
}
}
@@ -100,6 +100,9 @@ proc quotemeta {str} {
# an embedded "/".
append result $rx
} else {
+ if {![info exists ::_quotemeta($at_text)]} {
+ error "undefined quotemeta expression @$at_text"
+ }
append result $::_quotemeta($at_text)
}
More information about the Gdb-cvs
mailing list