On Friday, 4 May 2018 at 13:02:08 UTC, NewUser wrote:
How can I use the following c structure from d.

struct Item
{
  int id;
};

struct Group
{
  int i;
  int item_count;
  struct Item items[];
};

tried defining items[] as both "Item[] items" and "Item* items" in d, it compiles okay but gives an error when trying to access it.

Here is the error.
object.Error@(0): Access Violation

The D equivalent is:

struct Item {
    int id;
}

struct Group {
    int i;
    int item_count;
    Item* items;
}

The error message you're getting makes me think items is null. The lack of function names in the stack trace makes it kinda hard to understand exactly what's happening - you can turn that on with -g for DMD. Seeing some of the code that uses these structs might also help.

--
  Simen

Reply via email to