http://d.puremagic.com/issues/show_bug.cgi?id=5132
Summary: ~ unary operator silently different from C Product: D Version: unspecified Platform: Other OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: ellery-newco...@utulsa.edu --- Comment #0 from Ellery Newcomer <ellery-newco...@utulsa.edu> 2010-10-29 12:16:39 PDT --- ~ <type> => <type> for all integer types in D, however ~ <type> => int for small integer types in C. This is a source of silently different behavior between D and C at least in unsigned integer types. example: // test.d import std.stdio; void main(){ ushort x = 0xffff; writefln("%08x", ~x+1u); } // test.c #include <stdio.h> void main(void){ unsigned short x = 0xffff; printf("%08x", ~x+1u); } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------