Hi,
On Tuesday 01 March 2005 21:44, you wrote:
> >> I spent all day debugging it. Still have absolutely
> >> no idea what could possibly go wrong. Does
> >> anyone have a slightest clue what can it be and
> >> why it manifests itself only on win32?
> >
> >It may be that the CLIB has badly broken support for 64bit
> >integers on 32
> >bit platforms. Does anyone know of any Cygwin/Ming issues?
> >
> >Is this only with the new snprintf code in Win32?
>
> Yes.
>
> >Is this a problem with snprintf as implemented in src/port?
>
> Yes. Only. It works with the snprintf() in the runtime (this particular
> part).
>
> >Is there a reason why we don't use the snprintf that comes with the
> >various C compilers?
>
> It does not support "positional parameters" (I think it's called) which
> is required for proper translations.
> We do use that one when it works...
>
> //Magnus
Some stupid idea just crossed my mind: what if the /ports version just
re-arranges the va_list according to the positional args and calls
vsnprintf()?
At least we know compiler and library...
Or, another idea: why not format the va_args individually using the original
format specifiers alone (without positional args), and assemble the resulting
string?
Am I on dope? Or does this sound at least doable?
Didn't code too much C lately...
Greetings,
Jörg
--
Leading SW developer - S.E.A GmbH
Mail: joerg.hessdoerfer@sea-gmbh.com
WWW: http://www.sea-gmbh.com