Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • RULE_REDEFINITION
  • ACTION_REDEFINITION
  • RULE_HAS_NO_ARGS
  • UNDEFINED_RULE_REF
  • MISSING_RULE_ARGS
  • SCOPE_REDEFINITION (new)
  • TOKEN_ALIAS_REASSIGNMENT
  • LABEL_CONFLICTS_WITH_RULE
  • LABEL_CONFLICTS_WITH_TOKEN
  • SYMBOL_CONFLICTS_WITH_GLOBAL_SCOPE (label v scope, token v scope, rule v scope)
  • LABEL_TYPE_CONFLICT

argument, return value attribute issues

  • LABEL_CONFLICTS_WITH_RULE_SCOPE_ATTRIBUTE
  • LABEL_CONFLICTS_WITH_RULE_ARG_RETVAL

syntax related

These need tree pattern matching to find subtrees with the right syntax. They need to check what's on the left-hand side of rewrites, so I also need to track a list of references within each alternative.

  • UNDEFINED_TOKEN_REF_IN_REWRITE
  • REWRITE_ELEMENT_NOT_PRESENT_ON_LHS
  • UNDEFINED_LABEL_REF_IN_REWRITE

Argument, return value, scope attribute issues

  • LABEL_CONFLICTS_WITH_RULE_SCOPE_ATTRIBUTE
  • LABEL_CONFLICTS_WITH_RULE_ARG_RETVAL
  • ...

Actions:

  • INVALID_RULE_PARAMETER_REF
  • NO_SUCH_RULE_IN_SCOPE
  • ...

...