@Override
  public void setStartIndex(int start) {
    throw new UnsupportedOperationException(SETTERS_DISABLED);
  }
This class is designed to hold "constant" CommonTokens, that have fixed type
and text, and everything else equal to zero. They can therefore be reused
to save memory. However, to support reuse (canonicalization) we need to
implement the proper hashCode() and equals() methods.
parser/src/java/org/apache/hadoop/hive/ql/parse/ImmutableCommonToken.java