SL: What you want out of switch statements is an easy way to implement a state machine -- or state-machine-like construct.<p>While this is a worthy goal, I don't think your proposed syntax is very readable. It might be better to think a bit more abstractly, and instead of asking, "How can we improve switch?" ask, "What features does a language need in order to facilitate implementation of <whatever>?"
Your trivial example is already spaghetti code; I'm loathe to imagine what real-world use would look like.
It's also an internally inconsistent concept: consider "case 3" and "case s > 4". Are you comparing values to the switch statement, or testing conditions like an if statement? What do you do when those two come into conflict?