From: <no...@so...> - 2002-07-16 22:07:26
|
Bugs item #582522, was opened at 2002-07-16 18:07 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=582522&group_id=10894 Category: 43. Parsing and Eval Group: 8.4b2 Status: Open Resolution: None Priority: 5 Submitted By: Don Porter (dgp) Assigned to: miguel sofer (msofer) Summary: aliases do not fire exec traces Initial Comment: % proc print args {puts "printtrace $args"} % proc foo {} {puts orig_foo} % interp alias {} al_foo {} foo al_foo % trace add execution foo enter {print foo} % trace add execution al_foo enter {print al_foo} % foo printtrace foo foo enter orig_foo % al_foo printtrace al_foo al_foo enter orig_foo % The [print foo] trace is missing. It should have been fired by [al_foo]. The problem seems to be that execution traces are performed by TclEvalObjvInternal() and aliases get evaluated by TclObjInvoke() which bypasses that and executes the command procedure directly. In combination with Bug 582506, it seems the correct solution may be to tie execution traces into the command procedure itself instead of in TclEvalObjvInternal(). ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=582522&group_id=10894 |