On Tuesday, 5 June 2018 at 10:40:20 UTC, Simen Kjærås wrote:
On Tuesday, 5 June 2018 at 09:36:22 UTC, Gopan wrote:
void main()
{
immutable n = __ctfe ? 1 : 2;
int[n] a;
assert(a.length == n); // fails, wat
}
That's gotta be a bug - that should give a 'variable n cannot
be read at compile time' error. The fact that n is immutable
shouldn't be enough to use it at compile time. Filed as
https://issues.dlang.org/show_bug.cgi?id=18945.
--
Simen
Not only immutable. The behavior is same if you declare n as
'const int' also.