| /* |
| TEST_OUTPUT: |
| --- |
| fail_compilation/fail12236.d(16): Error: forward reference to inferred return type of function `f1` |
| fail_compilation/fail12236.d(16): while evaluating `pragma(msg, f1.mangleof)` |
| fail_compilation/fail12236.d(21): Error: forward reference to inferred return type of function `f2` |
| fail_compilation/fail12236.d(21): while evaluating `pragma(msg, f2(T)(T).mangleof)` |
| fail_compilation/fail12236.d(27): Error: template instance `fail12236.f2!int` error instantiating |
| fail_compilation/fail12236.d(31): Error: forward reference to inferred return type of function `__lambda1` |
| fail_compilation/fail12236.d(31): while evaluating `pragma(msg, __lambda1.mangleof)` |
| --- |
| */ |
| |
| auto f1(int) |
| { |
| pragma(msg, f1.mangleof); // forward reference error |
| } |
| |
| auto f2(T)(T) |
| { |
| pragma(msg, f2.mangleof); // error <- weird output: "v" |
| } |
| |
| void main() |
| { |
| f1(1); |
| f2(1); |
| |
| (a) { |
| int x; |
| pragma(msg, __traits(parent, x).mangleof); |
| } (1); |
| } |