On 23/05/2012 15:16, Kagamin wrote:
<snip>
Well, you can't fix C because C explicitly ignores string encoding and 
thoughtlessly
passes strings around without any transcoding. Though, D bindings suggest that 
C functions
accept utf-8 strings

A lot of C functions do. Indeed, this is one of the considerations made in the design of UTF-8.

which leads to assumption that those functions will act properly on
utf-8 strings. I'd say that's a bug in bindings: C strings are specified to be 
in C
encoding,

What is "C encoding"?

not utf-8 encoding. I think, conversion from D string to C string should require
at least a cast.

Several people have dealt with this by using byte or ubyte as D's equivalent of the C char type.

Stewart.

Reply via email to