Multiple attributes on the enum definition
Rudimentary custom error message
Improved error message (take into account the string)
Basic error handling
Returned correct error code from yyerror()
Improved yyerror() to return the correct error code from exe