From: <no...@so...> - 2000-11-08 11:55:26
|
Bug #119184, was updated on 2000-Oct-25 22:03 Here is a current snapshot of the bug. Project: Tcl Category: Compiler and Objects Status: Open Resolution: None Bug Group: 8.3.2 Priority: 7 Summary: Tcl bytecode interpreter catches errors at inappropriate tim Details: OriginalBugID: 2248 Bug Version: 8.0.5 SubmitDate: '1999-06-16' LastModified: '2000-05-19' Severity: LOW Status: Assigned Submitter: techsupp ChangedBy: hobbs RelatedBugIDs: 1149 OS: Linux-Red Hat OSVersion: Red Hat 5.1 Machine: Other FixedDate: '2000-10-25' ClosedDate: '2000-10-25' Extensions: None CustomShell: None ReproducibleScript: $ tclsh % catch [error foo] 1 % set catch catch; $catch [error foo] foo ObservedBehavior: 'catch [error foo]' should not have caught the error, since that error was raised before catch would have been invoked. Disabling the bytecode compiler by calculating the command name at run time gives correct behaviour: the error propagates to the top level. DesiredBehavior: The bytecode-compiled version of the code should behave in the same way as the non-bytecode-compiled version. Same behavior exists still in 8.2.0. -- 08/21/1999 hobbs if (cmdTokenPtr->type != TCL_TOKEN_SIMPLE_WORD) { return TCL_OUT_LINE_COMPILE; } in TclCompileCatchCmd would fix this, but ruin other opts. -- 12/03/1999 hobbs Make sure to put the catch in a proc to see the effect when compiled. -- 05/19/2000 hobbs Follow-Ups: Date: 2000-Nov-08 03:58 By: dkf Comment: Problem still exists. :^( ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=119184&group_id=10894 |