Support for the Standard C++ Library is expanded under 
CodeWarrior 8.0, which we heartily applaud.  But we run into a 
little problem: many error conditions within the template library 
are reported via the function __msl_error(), and (at least if you 
don't have exceptions enabled) the definition of that function, 
in (MSL for Palm OS)/MSL_C++/MSL_Common/Include/mslconfig), 
invokes fprintf().  So you can't use standard C++ templates 
without linking in the StdIO code.  Before CodeWarrior 7.0, we 
"solved" that problem by defining a do-nothing fprintf() 
function.  CW 7.0 had some built-in solution to the problem, I 
forget what.  How can we solve it under 8.0?  We *don't* want to 
be a Standard I/O app.

A related, and less serious, problem, is what to do about 
sprintf.  It appears to work perfectly well to simply

#define sprintf StrPrintF

which is done, e.g., by unix_stdio.h

Is there a correct way for an application to get this 
effect?  Our code is compiled on several different platforms, so 
the more "standard" we can remain, the better.




-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/tech/support/forums/

Reply via email to