May 18, 2022

On Wednesday, 18 May 2022 at 04:08:57 UTC, test123 wrote:

>

On Tuesday, 17 May 2022 at 10:05:21 UTC, Tejas wrote:

>

Maybe extern(Windows) can do something?
Also, maybe useful : https://forum.dlang.org/post/ktntbwppqgbbajpbmrcf@forum.dlang.org

It is extern(C).

On Tuesday, 17 May 2022 at 19:52:23 UTC, Arjan wrote:

>

Do you know how this 'c' part is build? Which compiler and compiler flags?

Clang with makefile.

As can be observed from your first post,

clang x64 does not pack all the bitields in the VTermStringFragment since the size is 24 bytes.

alignment seems to be on address size (64bits 8bytes)

Check the size of the other struct with bitfields Vterm.mode in the c program and the position of the bitfields if packed.

With that information you should be able to create a matching layout in D.

> >

Than you should be able to 'deduce' the alignment used an possibly the packing of bitfields.

no alignment is settings from C source file.

>

Another option is just to figure out the layout at runtime using a on purpose filled struct from 'c' with 'marker patterns' in the struct fields.

sound like a solution, but not how to do this.

1 2
Next ›   Last »