diff options
author | mig <mig> | 2013-12-11 16:27:59 (GMT) |
---|---|---|
committer | mig <mig> | 2013-12-11 16:27:59 (GMT) |
commit | 1ef52b35f0c918fa1c081116f142afd4e244eaf1 (patch) | |
tree | 994225af5d484bd3822c8568dbb192de42653500 | |
parent | c7d612f81758056c1d7511f1f4f8dff108ef76d7 (diff) | |
download | tcl-1ef52b35f0c918fa1c081116f142afd4e244eaf1.zip tcl-1ef52b35f0c918fa1c081116f142afd4e244eaf1.tar.gz tcl-1ef52b35f0c918fa1c081116f142afd4e244eaf1.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) { |