PARSER: reject illegal tokens like '$', instead of simply ignoring them.