[RFC] Unset tcl variable addr to avoid clashing

Message ID 1428666671-12926-1-git-send-email-qiyaoltc@gmail.com
State New
Headers show

Commit Message

Yao Qi April 10, 2015, 11:51 a.m.
From: Yao Qi <yao.qi@linaro.org>

I see some tcl ERRORs in gdb.sum recently:

ERROR: tcl error sourcing ../../../../../binutils-gdb/gdb/testsuite/gdb.base/dmsym.exp.
ERROR: can't set "addr": variable is array
    while executing
"set addr "0x\[0-9a-zA-Z\]+""
    (file "../../../../../binutils-gdb/gdb/testsuite/gdb.base/dmsym.exp" line 45)
    invoked from within
"source ../../../../../binutils-gdb/gdb/testsuite/gdb.base/dmsym.exp"
    ("uplevel" body line 1)
    invoked from within
"uplevel #0 source ../../../../../binutils-gdb/gdb/testsuite/gdb.base/dmsym.exp"
    invoked from within
"catch "uplevel #0 source $test_file_name""

It is OK to run single dmsym.exp.  This error is caused by the name
clashing with coredump-filter.exp, and it can be reproduced,

 $ make check RUNTESTFLAGS='coredump-filter.exp dmsym.exp exception.exp stepi-random-signal.exp'

as variable addr is used in all of them.  This patch is to unset array
addr, but manually unset variables isn't good to me.  Is there any
approaches we can do to avoid name clashing?


2015-04-10  Yao Qi  <yao.qi@linaro.org>

	* gdb.base/coredump-filter.exp: Unset addr.
 gdb/testsuite/gdb.base/coredump-filter.exp | 2 ++
 1 file changed, 2 insertions(+)


diff --git a/gdb/testsuite/gdb.base/coredump-filter.exp b/gdb/testsuite/gdb.base/coredump-filter.exp
index f3203be..2deb7b3 100644
--- a/gdb/testsuite/gdb.base/coredump-filter.exp
+++ b/gdb/testsuite/gdb.base/coredump-filter.exp
@@ -196,3 +196,5 @@  foreach item $all_anon_corefiles {
 with_test_prefix "loading and testing corefile for non-Private-Shared-Anon-File" {
     test_disasm $non_private_shared_anon_file_core $main_addr 1
+unset addr