mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-01-12 02:43:14 +01:00
Branch statements now emit a new block after it. Fixed the _adSort runtime function had a bad signature. Added a missing dot prefix on compiler generated string tables for string switch. Fixed, PTRSIZE seems like it was wrong on 64bit, now it definitely gets set properly.
31 lines
508 B
D
31 lines
508 B
D
module classinfo1;
|
|
|
|
extern(C) int printf(char*, ...);
|
|
|
|
class NoPtrs
|
|
{
|
|
}
|
|
|
|
class HasPtrs
|
|
{
|
|
void* p;
|
|
}
|
|
|
|
void main()
|
|
{
|
|
{
|
|
ClassInfo ci = NoPtrs.classinfo;
|
|
char[] name = ci.name;
|
|
printf("%.*s\n", name.length, name.ptr);
|
|
assert(ci.name == "classinfo1.NoPtrs");
|
|
assert(ci.flags & 2);
|
|
}
|
|
{
|
|
ClassInfo ci = HasPtrs.classinfo;
|
|
char[] name = ci.name;
|
|
printf("%.*s\n", name.length, name.ptr);
|
|
assert(ci.name == "classinfo1.HasPtrs");
|
|
assert(!(ci.flags & 2));
|
|
}
|
|
}
|