|
From: Alexandre F. <ale...@gm...> - 2008-12-10 22:46:47
|
On Wed, Dec 10, 2008 at 6:08 PM, Donald G Porter <dg...@ni...> wrote: > > Is there anyone who can advise me on the intended purpose of the > routine Tk_MainEx() ? In particular, why it is in the public stubs > table? What callers are expected to call it through the table? > Do such callers exist? > > The routine was added in Revision 1.3 of tkMain.c with log message: > > revision 1.3 > date: 1999/03/10 07:04:42; author: stanton; state: Exp; lines: +34 -4 > integrated stubs into 8.0 main branch > > Some understanding of this may be relevant to my getting thread > safety issues right in the TIP 338 implementation. Looking at the comment in the 'changes' file: 3/10/99 (new feature) Tk now uses the new stub library feature in Tcl. The Tk library now contains no direct references to any symbols in Tcl. In addition, there is a new Tk_MainEx() function that takes an interpreter as an argument. See the Tcl documentation for more information about the stubs mechanism. (redman) it looks like there was no intention of special handling; Tk_MainEx got stubbed just like dozens of others. Now since it is stubbed, it becomes a macro via tkDecls.h. So any caller (like a wish-like app) including the proper headers must be calling it through the stub mechanism. Even those just calling Tk_Main which is itself a macro calling Tk_MainEx. I feel like I'm stating the obvious. What am I missing in your question ? -Alex |