https://issues.dlang.org/show_bug.cgi?id=12853
Ketmar Dark <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #1 from Ketmar Dark <[email protected]> --- test case: import std.encoding; void testUTF16 () { version(LittleEndian) { auto efrom = EncodingScheme.create("utf-16le"); ubyte[6] sample = [154,1, 155,1, 156,1]; } version(BigEndian) { auto efrom = EncodingScheme.create("utf-16be"); ubyte[6] sample = [1,154, 1,155, 1,156]; } const(ubyte)[] ub = cast(const(ubyte)[])sample; dchar dc = efrom.safeDecode(ub); assert(dc == 410); assert(ub.length == 4); } void testUTF32 () { version(LittleEndian) { auto efrom = EncodingScheme.create("utf-32le"); ubyte[12] sample = [154,1,0,0, 155,1,0,0, 156,1,0,0]; } version(BigEndian) { auto efrom = EncodingScheme.create("utf-32be"); ubyte[12] sample = [0,0,1,154, 0,0,1,155, 0,0,1,156]; } const(ubyte)[] ub = cast(const(ubyte)[])sample; dchar dc = efrom.safeDecode(ub); assert(dc == 410); assert(ub.length == 8); } void main () { testUTF16(); testUTF32(); } --
