lindquist@50: module bug24; lindquist@270: extern(C) int printf(char*, ...); lindquist@50: lindquist@50: struct S lindquist@50: { lindquist@50: long l; lindquist@50: float f; lindquist@50: } lindquist@50: lindquist@50: void main() lindquist@50: { lindquist@50: S s = S(3L,2f); lindquist@50: delegate { lindquist@50: S t = S(4L, 1f); lindquist@50: delegate { lindquist@50: s.l += t.l; lindquist@50: s.f += t.f; lindquist@50: }(); lindquist@50: }(); lindquist@50: printf("%lu %f\n", s.l, s.f); lindquist@50: assert(s.l == 7 && s.f == 3); lindquist@50: }