| Store | Cart

Re: [TCLCORE] Tcl_ObjPrintfVA

From: Joe English <jeng...@flightlab.com>
Tue, 04 Oct 2011 13:50:19 -0700
Donald G Porter wrote:
>> It appears that Tcl has a history of providing a Tcl_FooVA() variant> for each of its variadic Tcl_Foo(...) routines.  For example Tcl_Panic()> and Tcl_PanicVA().>> TIP 270 did not follow this pattern.  If we want to fill in the missing> interface bits, it means adding routines>>      Tcl_ObjPrintfVA()>      Tcl_AppendPrintfToObjVA()>> I don't think I'll have any use for such things myself, but I can't> think of a sensible reason to forbid them to someone who has a use for> them.

Note that the representation of a 'va_list' is not usually
specified in the C ABI for most architectures, so Tcl_*VA()
routines are contraindicated in Stubs-enabled extensions.

In particular, MSVC and GCC 'va_list's are not compatible.

Variadic functions are OK, it's only when you call 'va_start()'
in code compiled by one compiler and 'va_arg()' in code compiled
by another that the problem shows up.

(IIRC, this is why the *VA() variants weren't added to the Stubs
table in the first place.)


--Joe English

  jeng...@flightlab.com

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
Tcl-Core mailing list
Tcl-...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tcl-core

Recent Messages in this Thread
Joe English Oct 04, 2011 08:50 pm
Donald G Porter Oct 05, 2011 01:30 pm
Roman Puls Oct 05, 2011 01:59 pm
Donald G Porter Oct 04, 2011 06:35 pm
Donal K. Fellows Oct 05, 2011 05:02 am
Messages in this thread