How come
class A { constant x = -1; }
class B { inherit A; constant x = 1; }
doesn't give a warning, but
class A { int(-1..-1) x = -1; }
class B { inherit A; int(1..1) x = 1; }
doesn't even compile?
I'm sure there's a good explanation, but it's probably related to this exact problem.