anchor.diff:          super.recover(e);
       }
       
  -  public boolean wibble(String error, IntStream input, Token token, boolean ignorable) throws ReflexRecognitionException {
  +  public boolean error(String error, IntStream input, Token token, boolean ignorable) throws ReflexRecognitionException {
   	ReflexRecognitionException rre = new ReflexRecognitionException(error, input, token);
   	if (ignorable) emitErrorMessage(ErrorHandler.getParserExceptionDetails(rre));
   	else throw rre;
  
positive.code: 
  comparator 
    : Is (Equals | NEquals | GTEquals | LTEquals | GT | LT) expression
    | Is Assign { wibble("Assignment found where comparator expected", input, $Is); } expression 
    | Is (Or | And | Excl | Add | Subtract | Multiply | Divide | Modulus) { wibble("Comparator expected", input, $Is); } expression 
    ;
  
  // SWITCH requires constants as case values
  
negative.code:            ( escaped=ESC {lBuf.append(getText());} |
               normal=~('\''|'\\'|'\n'|'\r')     {lBuf.appendCodePoint(normal);} )*
             ( SingleQuote {setText(lBuf.toString());} 
             | ( '\n' | '\r')  {error("Found newline in string "+lBuf.toString(), input, tok, false);})
             
      ;
  
  