On Wednesday, 19 March 2014 at 09:12:53 UTC, Dicebot wrote:
On Wednesday, 19 March 2014 at 02:52:23 UTC, bearophile wrote:
Rikki Cattermole:
Is an enum not appropriate? Because it can be used to push
constants and available at ctfe.
enum int[int] aa = [1: 2, 3: 4];
pragma(msg, aa);
This is bad from an efficiency point of view. I think Don even
suggested to disallow it.
Bye,
bearophile
It still only existing way to define compile-time usable AA
value, disallowing it without fixing alternatives is not an
option.
The only thing I've said we should disallow, is creating a
runtime reference to a value which only exists at compile-time. I
think it is logically nonsensical.
I don't see any problem at all with creating a compile-time AA,
and then looking up an index in it at compile time.