4 /***************************************************/
10 fail_compilation/fail9665a.d(19): Error: immutable field 'v' initialized multiple times
19 v = 2; // multiple initialization
26 fail_compilation/fail9665a.d(37): Error: immutable field 'v' initialized multiple times
27 fail_compilation/fail9665a.d(42): Error: immutable field 'v' initialized multiple times
28 fail_compilation/fail9665a.d(47): Error: immutable field 'v' initialized multiple times
36 if (true) v = 1; else v = 2;
37 v = 3; // multiple initialization
42 v = 3; // multiple initialization
46 if (true) {} else v = 2;
47 v = 3; // multiple initialization
54 fail_compilation/fail9665a.d(65): Error: immutable field 'v' initialized multiple times
55 fail_compilation/fail9665a.d(70): Error: immutable field 'v' initialized multiple times
56 fail_compilation/fail9665a.d(75): Error: immutable field 'v' initialized multiple times
64 true ? (v = 1) : (v = 2);
65 v = 3; // multiple initialization
69 auto x = true ? (v = 1) : 2;
70 v = 3; // multiple initialization
74 auto x = true ? 1 : (v = 2);
75 v = 3; // multiple initialization
79 /***************************************************/
85 fail_compilation/fail9665a.d(98): Error: immutable field 'v' initialization is not allowed in loops or after labels
86 fail_compilation/fail9665a.d(103): Error: immutable field 'v' initialization is not allowed in loops or after labels
87 fail_compilation/fail9665a.d(108): Error: immutable field 'v' initialized multiple times
88 fail_compilation/fail9665a.d(113): Error: immutable field 'v' initialized multiple times
89 fail_compilation/fail9665a.d(118): Error: immutable field 'v' initialized multiple times
98 v = 1; // after labels
107 v = 1; // initialization
108 L: v = 2; // assignment after labels
112 v = 1; // initialization
113 foreach (i; 0..1) v = 2; // assignment in loops
118 v = 2; // multiple initialization
122 /***************************************************/
123 // with immutable constructor
128 fail_compilation/fail9665a.d(139): Error: immutable field 'v' initialized multiple times
129 fail_compilation/fail9665a.d(143): Error: immutable field 'w' initialized multiple times
139 v = 2; // multiple initialization
143 w = 2; // multiple initialization
147 /***************************************************/
148 // in __traits(compiles)
153 fail_compilation/fail9665a.d(163): Error: static assert `__traits(compiles, this.v = 1)` is false
161 static assert(__traits(compiles, v = 1));
163 static assert(__traits(compiles, v = 1)); // multiple initialization