[gdb/testsuite] Fix gdb.mi/mi-sym-info.exp on openSUSE Tumbleweed
authorTom de Vries <tdevries@suse.de>
Fri, 30 Sep 2022 04:04:56 +0000 (06:04 +0200)
committerTom de Vries <tdevries@suse.de>
Fri, 30 Sep 2022 04:04:56 +0000 (06:04 +0200)
On openSUSE Tumbleweed, I run into:
...
FAIL: gdb.mi/mi-sym-info.exp: List all functions from debug information only
...

The problem is in matching this string:
...
{name="_start",type="void (void)",description="void _start(void);"}
...
using regexp fun_re, which requires a line field:
...
set fun_re \
    "\{line=\"$decimal\",name=${qstr},type=${qstr},description=${qstr}\}"
...

Fix this by making the line field optional in fun_re.

Tested on x86_64-linux.

gdb/testsuite/gdb.mi/mi-sym-info.exp

index 7b9360617598e6494e828cef48ef465bfdeb7335..2f723ece882d9dcde1cc3593a159940d09d73865 100644 (file)
@@ -38,7 +38,8 @@ mi_clean_restart $binfile
 mi_runto_main
 
 set qstr "\"\[^\"\]+\""
-set fun_re "\{line=\"$decimal\",name=${qstr},type=${qstr},description=${qstr}\}"
+set fun_re \
+    "\{(?:line=\"$decimal\",)?name=${qstr},type=${qstr},description=${qstr}\}"
 set type_re "\{(?:line=\"$decimal\",)*name=${qstr}\}"
 set sym_list "\\\[${fun_re}(?:,$fun_re)*\\\]"
 set type_sym_list "\\\[${type_re}(?:,$type_re)*\\\]"