In type check, the inivalid type annotation should all be checked validator. However, the visitor also check for invalid annotation at https://github.com/Ao-senXiong/immutability/blob/07f7ee903d48d08c034b522b14feb680c1195cc5/src/main/java/pico/typecheck/PICONoInitVisitor.java#L391. Think about how to unify them and move to validator.
Why? Because there are redundant error messages that might cause confusion.
In type check, the inivalid type annotation should all be checked
validator. However, thevisitoralso check for invalid annotation at https://github.com/Ao-senXiong/immutability/blob/07f7ee903d48d08c034b522b14feb680c1195cc5/src/main/java/pico/typecheck/PICONoInitVisitor.java#L391. Think about how to unify them and move tovalidator.Why? Because there are redundant error messages that might cause confusion.