Confusion/trying to understand CTFE keywords

Simen Kjærås simen.kjaras at gmail.com
Tue Jun 5 10:40:20 UTC 2018


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


More information about the Digitalmars-d-learn mailing list