Shouldn't the parser be pfail rather than throwing an error?