On Friday, 18 December 2015 at 14:30:25 UTC, Gianni Pisetta wrote:
Hi all,
i'm coding a parametrized crc implementation that can support
most of the standards. I want to make it work with CTFE and i
stumbled upon a difficulty when using
std.bitmanip.nativeToLittleEndian and
std.bitmanip.nativeToBigEndian.
The code below is the concept used by EndianSwapper and it does
not compile because of unions and CTFE. Also as the error
message is very obscure, is it intended behaviour or a bug?
I think it's intended behavior. According to
http://dlang.org/changelog/2.065.0.html#ctfe-overlapped-field
"Bit image reinterpretation by using two overlapped union fields
is not allowed during CTFE."