| /* | |
| REQUIRED_ARGS: -o- | |
| TEST_OUTPUT: | |
| --- | |
| fail_compilation/fail20730a.d(11): Error: undefined identifier `undef20730` | |
| --- | |
| */ | |
| void test20730() | |
| { | |
| auto f = File().byLine; | |
| undef20730(); | |
| } | |
| struct File | |
| { | |
| shared uint refs; | |
| this(this) | |
| { | |
| atomicOp!"+="(refs, 1); | |
| } | |
| struct ByLineImpl(Char) | |
| { | |
| File file; | |
| char[] line; | |
| } | |
| auto byLine() | |
| { | |
| return ByLineImpl!char(); | |
| } | |
| } | |
| T atomicOp(string op, T, V1)(ref shared T val, V1 mod) | |
| if (__traits(compiles, mixin("*cast(T*)&val" ~ op ~ "mod"))) | |
| { | |
| return val; | |
| } |