On Tuesday, 25 October 2022 at 17:18:35 UTC, Paul Backus wrote:
It's not a bug. They're pointing to the exact same instance of `A` in memory:
I don't understand? So I don't understand why it causes problems with dynamic arrays! So why is there nothing wrong with the static array in the example below?
```d import std.stdio, std.format; void main() { struct B { struct A { int i = 10; } //A[] a = [A.init];/* A[1] a = [A.init];//*/ string toString() { return a[0].i.format!"%s"; } } B[2] b; b.writeln; // [10, 10] b[0].a[0].i = 0; b.writeln; // [0, 10] b[1].a[0].i = 1; b.writeln; // [0, 1] } ```