logoalt Hacker News

ddtaylortoday at 7:21 AM1 replyview on HN

C allows most of this, whereas C++ doesn't allow pointer aliasing without a compiler flag, tricks and problems.

I agree you can certainly just use bytes of the correct sizes, but often to get the coverage you need for the data structure you end up writing some form of wrapper or fixup code, which is still easier and gives you the control versus most of the protobuf like stuff that introduces a lot of complexity and tons of code.


Replies

nlytoday at 9:33 AM

__attribute__((may_alias, packed)) right on the struct.

show 2 replies