diff options
| author | mig <mig> | 2013-12-11 16:27:59 (GMT) |
|---|---|---|
| committer | mig <mig> | 2013-12-11 16:27:59 (GMT) |
| commit | 10370c8632fad2005c33ab24aded3d30346143df (patch) | |
| tree | 994225af5d484bd3822c8568dbb192de42653500 | |
| parent | f07e401947b2db9bea2db3afc178d101763ba282 (diff) | |
| download | tcl-10370c8632fad2005c33ab24aded3d30346143df.zip tcl-10370c8632fad2005c33ab24aded3d30346143df.tar.gz tcl-10370c8632fad2005c33ab24aded3d30346143df.tar.bz2 | |
comments
| -rw-r--r-- | generic/tclCompCmds.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/generic/tclCompCmds.c b/generic/tclCompCmds.c index 7997efa..e071bbd 100644 --- a/generic/tclCompCmds.c +++ b/generic/tclCompCmds.c @@ -645,6 +645,11 @@ TclCompileCatchCmd( (int)(CurrentOffset(envPtr) - jumpFixup.codeOffset)); } + /* + * Push the return options if the caller wants them. This needs to happen + * before INST_END_CATCH + */ + if (optsIndex != -1) { TclEmitOpcode( INST_PUSH_RETURN_OPTIONS, envPtr); } @@ -656,7 +661,8 @@ TclCompileCatchCmd( TclEmitOpcode( INST_END_CATCH, envPtr); /* - * Push the return options if the caller wants them. + * Save the result and return options if the caller wants them. This needs + * to happen after INST_END_CATCH (compile-3.6/7). */ if (optsIndex != -1) { |
