Tcl Source Code

View Ticket
Login
Ticket UUID: a90d9331bc4b9f88384d65337e36f399ea01f597
Title: panic in [yieldto] reachable from script
Type: Bug Version:
Submitter: dkf Created on: 2014-01-21 15:22:50
Subsystem: 45. Parsing and Eval Assigned To: dkf
Priority: 9 Immediate Severity: Severe
Status: Closed Last Modified: 2014-01-22 09:11:29
Resolution: Fixed Closed By: dkf
    Closed on: 2014-01-22 09:11:29
Description: (text/html)
This code:
<pre>
namespace eval foo {
    proc bar {} {
        puts a
        yield OUT
        puts b
        yieldto ::return -level 0 123
        puts c
    }
}
puts [coroutine co foo::bar]
namespace delete foo
namespace eval foo {}
puts [co]
co
</pre>
Should print this:
<pre>
a
OUT
b
123
c
</pre>
But instead I get this:
<pre>
a
OUT
b
<span style="color:red">yieldto failed to find the proper namespace</span>
<span style="color:red">Abort trap: 6</span>
</pre>
The bytecoded version on the <a href="http://core.tcl.tk/tcl/info/ef8db24f85">dkf-bytecode-8.6 branch</a> works.
User Comments: dkf added on 2014-01-22 09:09:03: (text/html)
Fixed on branch (successor to above-mentioned commit).