Switch evaluation order
Switch cases are evaluated top to bottom, and evaluation stops the moment a case matches. Cases that come after a match are never evaluated.
This matters when your cases have side effects. For example:
switch i {
case 0:
case f():
}
If i == 0, the first case matches immediately — f() is never called. Keep that in mind when putting function calls in your cases.