Posted to tcl by dgp at Thu Aug 08 14:45:03 GMT 2013view pretty
% proc report args { set frame [info frame] set i 1 while {$i <= $frame} { puts "FRAME $i: [info frame $i]" incr i } } % proc demo {} {uplevel 1 report} % demo FRAME 1: type eval line 1 cmd demo level 1 FRAME 2: type proc line 1 cmd {uplevel 1 report} proc ::demo FRAME 3: type eval line 1 cmd report proc ::demo FRAME 4: type proc line 5 cmd {info frame $i} proc ::report level 0 % namespace unknown report report % nosuch FRAME 1: type eval line 1 cmd nosuch level 1 FRAME 2: type proc line 5 cmd {info frame $i} proc ::report level 0 The history of CmdFrames is different. Is it clear why? Is this difference documented? Must it remain unchanged?