On Thursday, 5 August 2021 at 10:28:00 UTC, Steven Schveighoffer wrote:

H.S. Teoh, I know you know better than this ;) None of this is necessary, you just need `rtValue` for both runtime and CTFE (and compile time parameters)!

Now, the original question is about *associative arrays*, which are a different animal. Those, you actually have to initialize using a static constructor, and does indeed need both an enum and a static immutable, as CTFE currently does not understand runtime AAs. This is a huge issue since you do need silly things like the `if(__ctfe)` statement you wrote, and keep an enum handy for those cases which is identical to the static immutable. We really need to fix this.

When you say "We really need to fix this" you mean that *eventually* associative-arrays will be available at compile-time ?

-Steve


Reply via email to