Bug 5578 – GDC: struct is wrong size when real data type used.

Status
RESOLVED
Resolution
INVALID
Severity
major
Priority
P2
Component
dmd
Product
D
Version
D1 (retired)
Platform
x86
OS
Linux
Creation time
2011-02-14T14:45:00Z
Last change time
2011-02-14T15:07:33Z
Assigned to
nobody
Creator
brad.lanam.temp

Comments

Comment #0 by brad.lanam.temp — 2011-02-14T14:45:22Z
Works w/dmd1, gdc2, dmd2. Fails w/gdc1. struct C_ST_y { double c; real d; } ; //static assert ((C_ST_y).sizeof == 20); void main () { writefln ("y:%d", C_ST_y.sizeof); writefln ("y.c:s:%d", C_ST_y.c.sizeof); writefln ("y.d:s:%d", C_ST_y.d.sizeof); writefln ("y.c:o:%d", C_ST_y.c.offsetof); writefln ("y.d:o:%d", C_ST_y.d.offsetof); } y:24 y.c:s:8 y.d:s:12 y.c:o:0 y.d:o:8
Comment #1 by brad.lanam.temp — 2011-02-14T14:48:33Z
gdc (Ubuntu 1:1.046-4.3.4-3ubuntu1) 4.3.4
Comment #2 by braddr — 2011-02-14T15:07:33Z