On Sun, 04 Mar 2012 18:14:28 +0100, Andrej Mitrovic
<andrej.mitrov...@gmail.com> wrote:
On 3/4/12, Daniel Murphy <yebbl...@nospamgmail.com> wrote:
void f(Args...)(Args args) {
foreach(i, T; Args)
{
static if (isSomeString!T) args[i] = toUTFz(args[i]);
}
needs_wchar_t(args);
}
toUTFz returns a pointer, the isSomeString checks if a type is a
string. IOW that will try to assign a pointer to a string.
But I don't understand the OPs requirements, what type does
'needs_wchar_t' take? A wchar*? A wchar**? Variadic arguments? Or
something else?
A variadic C function:
extern(C) void someFormatting(wchar_t* format, ...)
But I get some unexpected results.. wchar_t is defined as dchar on linux
and wchar on windows, but it seems to only work with utf8..
Sending in wchar or dchar prints only the first characted as I guess it
just see \0 at the next.
I'll have to look at the original source in case it has some strange
typedefs.