<div dir="ltr">Hi,<div><br></div><div>I'm looking into ways to represent complex aggregate types whose members and/or sub-members may be dynamically sized. This would conceptually correspond to a C struct containing other structs and arrays, and some of those arrays would have a length that is not known in compile time.<div><br></div><div>LLVM IR allows me to do this for a top-level array (using 0 as its LLVM data type length and manually computing its needed allocation size). </div><div><br></div><div>As far as I understand, if I want to represent structs containing dynamic arrays containing structs and so on, I will have to roll my own data size computation, element pointer computation and so on. This however seems to be a significant risk to portability and alignment handling.</div><div><br></div><div>Does anyone here have any experience with similar use cases, or any advice on how to handle this?</div><div><br></div><div>Thanks</div><div><br></div></div></div>