add a new error for cases mismatch that holds the value (#365), and make cases catch annotation errors (#274)