Currently, if you define `shouldComponentUpdate` on `React.PureComponent` nothing bad happens and it acts like `React.Component` https://jsfiddle.net/jekmdfva/

We should probably warn in dev since it defaults the point of `PureComponent`
StatelessComponent.prototype.render = function() {
  var Component = ReactInstanceMap.get(this)._currentElement.type;
  var element = Component(this.props, this.context, this.updater);
  return element;
};
function shouldConstruct(Component) {
  return !!(Component.prototype && Component.prototype.isReactComponent);
}
function isPureComponent(Component) {
  return !!(Component.prototype && Component.prototype.isPureReactComponent);
}
function measureLifeCyclePerf(fn, debugID, timerType) {
  if (debugID === 0) {
    
    
    
    return fn();
  }
  ReactInstrumentation.debugTool.onBeginLifeCycleTimer(debugID, timerType);
  try {
    return fn();
  } finally {
    ReactInstrumentation.debugTool.onEndLifeCycleTimer(debugID, timerType);
  }
}
/**
 * ------------------ The Life-Cycle of a Composite Component ------------------
 *
 * - constructor: Initialization of state. The instance is now retained.