anchor.diff:                                            first.setColumn(modifiers.getColumn());
                                         }}
       :   "interface" IDENT nls!
  -        // it _might_ have type paramaters
  +        // it _might_ have type parameters
           (tp:typeParameters nls!)?
           // it might extend some other interfaces
           ie:interfaceExtends
  
positive.code: //
  // Note that the above precedence levels map to the rules below...
  // Once you have a precedence chart, writing the appropriate rules as below
  //   is usually very straightfoward
  
  
  // the mother of all expressions
  
negative.code:             // Definition:  a.{foo} === {with(a) {foo}}
              // May cover some path expression use-cases previously handled by dynamic scoping (closure delegates).
  
              // let's allow common keywords as property names
          |   keywordPropertyNames
  
  /* let's allow some common keywords for properties like 'in', 'class', 'def' etc
   * TODO: Reinstate this logic if we change or remove keywordPropertyNames.
   * See also LITERAL_in logic in the lexer.
          // Recover with a good diagnostic from a common error:
  