class Main{ main():Int { case a of a:Int => a; b:Int => b; esac}; main():Int { case case a of a:Int => a; b:Int => b; esac of a:Int => a; esac}; main():Int { CASE a+1 of a:Int => a*1+45; b:Int => b; esac}; ---------------------------------- main():Int { case of a:Int =>a; esac}; --missing expr after case main():Int { case a of a:Int =>; esac}; --missing expr after => main():Int { case a of :Int =>a; esac}; --missing objectID before : main():Int { case a of esac}; --missing case list main():Int { case a of a:Int = a; esac}; --wrong => main():Int { case a of A:Int => a; esac}; --wrong A main():Int { case A of a:Int => a; esac}; --wrong A main():Int { case a of a:int => a; esac}; --wrong int main():Int { case a of a:Int => a esac}; --missing ; main():Int { case a of a:Int => a; a:Int => a esac}; --missing ; main():Int { case a of a:Int => a a:Int => a; esac}; --missing ; main():Int { case a of a:Int => a a:Int => a esac}; --missing ; main():Int { case a of a:Int => a; a:Int => a; }; --missing esac main():Int { cse a of a:Int => a; a:Int => a; esac}; --wrong case main():Int { case a of a:Int => a; a:Int => a; esc}; --wrong esac };