Tcl Source Code

View Ticket
Login
Ticket UUID: f6fbc71cd160d7796065a0933182e3d34cc11e3
Title: with "make valgrind", safe-zipfs-5.5 fails with the error, 'can't set "path": variable is array'
Type: Bug Version: 8.7
Submitter: pooryorick Created on: 2021-04-25 13:06:57
Subsystem: - New Builtin Commands Assigned To: pooryorick
Priority: 5 Medium Severity: Important
Status: Closed Last Modified: 2021-04-26 16:02:19
Resolution: Fixed Closed By: jan.nijtmans
    Closed on: 2021-04-26 16:02:19
Description:

With "make valgrind", safe-zipfs-5.5, and some other safe-zipfs tests fail with the error,

can't set "path": variable is array'

With "make test" this failure doesn't occur. However, for "make valgrind", "-singleproc 1" is passed to tcltest. The error occurs because in this casse, the content of each test file is evaluated evaluated in the same interpreter, and process.test, which was previously evaluated, creates the variable "path" in the global namespace, but does not delete it.

This illustrates a general problem with "-singleproc 1", the various .test files are all evaluated in the same interpeter, and may produce conflicting interpeter states.

User Comments: jan.nijtmans added on 2021-04-26 16:02:19:

Hm. Of course I meant 8.7 and up (zipfs didn't even exist in 8.6)


jan.nijtmans added on 2021-04-26 15:39:57:

Merged to 8.6 and up now. So, closing


pooryorick added on 2021-04-25 14:15:53:

Fixed in [ac18feaba778d8c7].


dkf added on 2021-04-25 14:01:28:

Classic test isolation error in process.test.