code: function checkReferences(variable) {
  
              // Gets references that exist in loop conditions.
              const conditions = variable
                  .references
                  .map(toLoopCondition)
                  .filter(Boolean);
  
              if (conditions.length === 0) {
                  return;
              }
  
              // Registers the conditions to belonging groups.
              registerConditionsToGroup(conditions);
  
              // Check the conditions are modified.
              const modifiers = variable.references.filter(isWriteReference);
  
              if (modifiers.length > 0) {
                  updateModifiedFlag(conditions, modifiers);
              }
  
              /*
               * Reports the conditions which are not belonging to groups.
               * Others will be reported after all variables are done.
               */
              conditions
                  .filter(isUnmodifiedAndNotBelongToGroup)
                  .forEach(report);
          }
docs: Finds unmodified references which are inside of a loop condition.
  Then reports the references which are outside of groups.
  
  @param {eslint-scope.Variable} variable - A variable to report.
  @returns {void}