need help to work around float union non-zero init

Dakota dakota at gmail.com
Fri Sep 20 09:38:54 UTC 2024


I need my struct defined as `isZeroInit`,  so can I can import 
them as `di` file.  (this also reduce build size)


But I find this problem with float inside union:


```d
struct test_t {
     union {
         int i32;
         float f32;
     }
}

static assert(__traits(isZeroInit, test_t) );
```

```sh
Error: static assert:  `__traits(isZeroInit, test_t)` is false
```

I consider this is compiler bug (it may take years to get fixed), 
so I am here to ask any way to workaround this problem?


More information about the Digitalmars-d-learn mailing list