Prevent false passes in gdb.base/vla-optimized-out.exp

The "vla_optimized_out" procedure in gdb.base/vla-optimized-out.exp
accepts a "sizeof_result" argument which is substituted into the
regular expression used to check the result of printing the sizeof
a VLA.  The -O3 test variants, however, pass a regular expression
fragment as that argument, which expands into a regular expression
that matches any result with a "6" in it.  This commit wraps the
substitution with parentheses to prevent these false matches.

gdb/testsuite/ChangeLog:

	* gdb.base/vla-optimized-out.exp (p sizeof (a)): Wrap supplied
	regexp fragment in parentheses to prevent false matching.
This commit is contained in:
Gary Benson
2020-11-10 16:40:40 +00:00
parent 6ff174a727
commit 83100a74a5
2 changed files with 6 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2020-11-10 Gary Benson <gbenson@redhat.com>
* gdb.base/vla-optimized-out.exp (p sizeof (a)): Wrap supplied
regexp fragment in parentheses to prevent false matching.
2020-11-10 Gary Benson <gbenson@redhat.com>
* gdb.base/vla-optimized-out.c (f1): Add __attribute__ ((weak)).

View File

@ -42,7 +42,7 @@ proc vla_optimized_out {exe_suffix options} {
"printed optimized out vla"
gdb_test "p sizeof (a)" \
" = $sizeof_result" \
" = ($sizeof_result)" \
"printed size of optimized out vla"
# At lower optimisation levels, the upper bound of the array is