anchor.diff:          | TOKEXPORT VAR [ LPAREN DOT DOT RPAREN ] SEMICOLON
           | TOKINSTANCE typevar_item
               [ provisos_clause ] SEMICOLON
  -            ( declaration_item )*
  +            ( single_declaration )*
               TOKENDINSTANCE [ COLON VAR ]
           | TOKTYPECLASS typevar_item
               [ TOKDEPENDENCIES LPAREN dep_item (COMMA dep_item)* RPAREN ]
               SEMICOLON
  -            ( declaration_item )*
  +            ( single_declaration )*
               TOKENDTYPECLASS [ COLON VAR ]
   
       rule goal:
  -        ( declaration_item
  -        | TOKPACKAGE VAR SEMICOLON ( declaration_item )* TOKENDPACKAGE [ COLON  VAR]
  +        ( single_declaration
  +        | TOKPACKAGE VAR SEMICOLON ( single_declaration )* TOKENDPACKAGE [ COLON  VAR]
           )* ENDTOKEN
   
   %%
  
positive.code:         | TOKMATCH ( TOKTAGGED VAR dot_field_list | match_brace ) assign_opvalue SEMICOLON
          | TOKPAR statement_list TOKENDPAR
          | TOKRETURN assign_rvalue SEMICOLON
          | TOKWHILE paren_expression ( statement_with_value | VAR SEMICOLON)
          | statement_with_value
  
      rule single_statement:
            function_declaration
          | let_statement
          | rule_statement
          | single_statement_not_decl
  
      rule statement_list:
          ( single_statement )*
  
negative.code:     rule match_brace:
          LBRACE match_arg (COMMA match_arg)* RBRACE
  
      rule statement_yielding_value:
            TOKBEGIN statement_list TOKEND
          | TOKSEQ statement_list TOKENDSEQ
          | TOKACTIONSTATEMENT [ COLON  VAR] [ SEMICOLON ]
  