]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gdc.test/runnable/test19825.d
d: Import dmd b8384668f, druntime e6caaab9, phobos 5ab9ad256 (v2.098.0-beta.1)
[thirdparty/gcc.git] / gcc / testsuite / gdc.test / runnable / test19825.d
1 struct JSONValue
2 {
3 TaggedUnion payload;
4 }
5
6 struct TaggedUnion
7 {
8 size_t[2] m_data;
9 int m_kind;
10
11 JSONValue opIndex(size_t i)
12 {
13 return JSONValue();
14 }
15 }
16
17 void yap(lazy JSONValue arg)
18 {
19 arg();
20 }
21
22 struct Foo
23 {
24 int a;
25 string name;
26 }
27
28 Foo makeFoo()
29 {
30 JSONValue root;
31 yap(root.payload[0]
32 .payload[0]
33 .payload[0]);
34
35 Foo foo;
36 return foo;
37 }
38
39 void main()
40 {
41 auto foo = makeFoo();
42 }