I recently ran dstep from Arch and found that the output is different. Since the dstep package hasn't been updated, I'm guessing the update from clang 3.4 to 3.5 caused this regression. Here's a test header file I came up with to demonstrate the problem:
struct foo { int x; int y;};
struct bar { struct foo a; struct foo b;};
And the D output dstep produces:
extern (C):
struct foo
{
int x;
int y;
}
struct bar
{
struct foo
{
int x;
int y;
}
foo a;
struct foo
{
int x;
int y;
}
foo b;
}
There's no reason to define the struct again twice, not sure why it's doing that.