**Do you want to request a *feature* or report a *bug*?**
Report a bug

**What is the current behavior?**
Referring to object's method from a another method within same object, `this.deleteValueForProperty(node, name);`, [here](https://github.com/facebook/react/blob/c78464f8ea9a5b00ec80252d20a71a1482210e57/src/renderers/dom/shared/DOMPropertyOperations.js#L141), breaks React build in Closure Compiler under advanced optimizations.

**If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem via https://jsfiddle.net or similar (template: https://jsfiddle.net/reactjs/69z2wepo/).**
Build a React app using Closure Compiler in advanced mode. (Unfortunately I can not provide a source of the app where I got this bug.)

**What is the expected behavior?**
An app built with Closure Compiler in advanced mode should not throw `this.deleteValueForProperty is not a function` exception

**Which versions of React, and which browser / OS are affected by this issue? Did this work in previous versions of React?**
React v15.4.2

Changing `this.deleteValueForProperty` to `DOMPropertyOperations.deleteValueForProperty` solves this issue. There are other methods of `DOMPropertyOperations` object which are using `deleteValueForProperty` properly via `DOMPropertyOperations.deleteValueForProperty` call.

If this makes sense, I'll prepare a PR.

if (validatedAttributeNameCache.hasOwnProperty(attributeName)) {
    return true;
  }
  if (illegalAttributeNameCache.hasOwnProperty(attributeName)) {
    return false;
  }
  if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName)) {
    validatedAttributeNameCache[attributeName] = true;
    return true;
  }
  illegalAttributeNameCache[attributeName] = true;
  warning(
    false,
    'Invalid attribute name: `%s`',
    attributeName
  );
  return false;
}
function shouldIgnoreValue(propertyInfo, value) {
  return value == null ||
    (propertyInfo.hasBooleanValue && !value) ||
    (propertyInfo.hasNumericValue && isNaN(value)) ||
    (propertyInfo.hasPositiveNumericValue && (value < 1)) ||
    (propertyInfo.hasOverloadedBooleanValue && value === false);
}
/**
 * Operations for dealing with DOM properties.
 */
var DOMPropertyOperations = {
  /**