dmd/compiler/test/runnable/test18916.d
Tim Schendekehl 33286cccd8
Fix issue 18919 - __FILE__ and __LINE__ should work when used in default argument expressions (#15968)
The parser now always creates AST nodes for default init expressions
like __FILE__. They are replaced in resolveLoc. Variable inDefaultArg
in Scope is used, so the nodes are not replaced too early.
2024-01-07 23:57:48 +01:00

22 lines
298 B
D

struct Line
{
int line;
alias line this;
this(int line)
{
this.line = line;
}
}
void foo(Line line1 = __LINE__, int line2 = __LINE__, int line3 = int(__LINE__))
{
assert(line1 == 21);
assert(line2 == 21);
assert(line3 == 21);
}
void main()
{
foo();
}