Parser EOFs could not be roundtripped through the base read exception codec

Because lexer EOFs share the same type tag