Files
ldc/tests/mini/packed1.d
Tomas Lindquist Olsen 9b45fc5533 Changed the handling of variadic intrinsics a bit.
Removed the -fp80 option and made real be 80bit floats on X86, this is what the D spec really says it should be and fixes a bunch of issues.
Changed the handling of parameter attributes to a bit more generalized approach.
Added sext/zext attributes for byte/short/ubyte/ushort parameters, fixes #60 .
Parameter attribs now properly set for intrinsic calls if necessary.
Made the tango.math.Math patch less intrusive.
Fixed/added some mini tests.
2008-08-01 17:59:58 +02:00

24 lines
381 B
D

module mini.packed1;
extern(C) int printf(char*, ...);
align(1)
struct PackedStruct
{
ubyte ub;
float f;
long l;
short s;
ubyte ub2;
short s2;
}
void main()
{
PackedStruct[2] a = void;
void* begin = a.ptr;
void* end = &a[1];
ptrdiff_t sz = end - begin;
printf("size = 18 = %u = %u\n", PackedStruct.sizeof, sz);
assert(sz == 18);
}