code: private void maybeAddWeakUsage(NodeTraversal t, Node n, Node typeNode) {
      maybeAddUsage(t, n, typeNode, false, Predicates.alwaysTrue());
    }
docs: Adds a weak usage for the given type expression (unless it references a variable that is
  defined in the externs, in which case no goog.require() is needed). When a "weak usage" is
  added, it means that a goog.require for that type is optional: No warning is given whether the
  require is there or not.