From: Tom de Vries Date: Fri, 13 Feb 2026 11:03:06 +0000 (+0100) Subject: [gdb/testsuite] Improve quotemeta error messages X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d2d785c630757d31aedf9467acd0f13b2adc9876;p=thirdparty%2Fbinutils-gdb.git [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 --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) }