I've actually had this problem myself - sometimes it's quite critical as well because you might want things like
const
Pi: Double = 3.14159265359;
HalfPi: Double = Pi / 2; TwoPi: Double = 2 * Pi;Will return the illegal expression error as well, even if Pi is fully declared elsewhere, and the only fix was to expand the Pi identifier into the number it represents. This might be a problem with "pure" functions down the line as well.
Gareth aka. Kit
On Sun 17/03/19 23:50 , "Ryan Joseph" sent:
I just realized that typed constants exist and may need to be supported as constants for generics but I’ve never used them myself (not sure when they were introduced).
First test gives an error so it makes me wonder if they’re buggy and should be allowed for generics. Should they?
const
kInt: integer = 100;
var
i: integer = kInt; // ERROR: Illegal expressionThey don’t work for generics right now either because they appear as a load node and are not discernible from a variable. Not even sure how to know if a load node is a typed const or what these things really are.
Regards,
Ryan Joseph
