docs: static Selector parseIntegerLiteral(String val) {
      // Determine if this is a long constant by checking the suffix
      char tag = val.charAt(val.length()-1);
      boolean mustBeLong = false;
      if (tag == 'l' || tag == 'L') 
      {
        val = val.substring(0, val.length()-1);
        mustBeLong = true;
      }
      long longVal = Long.decode(val).longValue();
      if (mustBeLong || longVal > Integer.MAX_VALUE || longVal < Integer.MIN_VALUE)
        return new LiteralImpl(new Long(longVal));
      else
        return new LiteralImpl(new Integer((int) longVal));
    }