chained tailcalls were not always being run
commitb927888eaee48eba3ce78c1887120cc219275775
authorSteve Bennett <steveb@workware.net.au>
Tue, 2 Jun 2015 22:13:08 +0000 (3 08:13 +1000)
committerSteve Bennett <steveb@workware.net.au>
Wed, 3 Jun 2015 00:53:24 +0000 (3 10:53 +1000)
tree1127666f0b5ee450c6065f5b15321a0dc15e4fc7
parentadcb761134c80285073a2c4728ab545dec101ff2
chained tailcalls were not always being run

There is no need to protect against merging tailcalls across
uplevel since any tailcalls should already be fully resolved.

This fixes a problem with the following only running one loop:

foreach a {b c d} {
command-with-tailcall $a
}

In particular:

dict for {a b} {1 2 3 4} { puts $a,$b }

Reported-by: Jon Povey <jon.povey@emsolutions.com.au>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
jim.c
jim.h