The case range statement is currently this case FirstExp : .. case LastExp : Would it be ambiguous to the compiler if it was case FirstExp .. case LastExp : or even case FirstExp .. LastExp : Considering that we can correctly identify a slice rather than decimal by just giving it a priority: a = b[3..6];