lexer fixes
tokens at beginning of long lex
initialisers
literal overflow
operator type checking
expr type checking
more typechecking