code: def visit_For(self, node):
          
          assert isinstance(node.target, ast.Name), "For apply on variables."
          self.visit(node.iter)
          if isinstance(node.iter, ast.Call):
              for alias in self.aliases[node.iter.func]:
                  if isinstance(alias, Intrinsic):
                      self.add(node.target.id,
                               alias.return_range_content(
                                   [self.visit(n) for n in node.iter.args]))
  
          self.visit_loop(node)
docs: Handle iterate variable in for loops.
  
          >>> import gast as ast
          >>> from pythran import passmanager, backend
          >>> node = ast.parse('''
          ... def foo():
          ...     a = b = c = 2
          ...     for i in __builtin__.range(1):
          ...         a -= 1
          ...         b += 1''')
          >>> pm = passmanager.PassManager("test")
          >>> res = pm.gather(RangeValues, node)
          >>> res['a']
          Interval(low=-inf, high=2)
          >>> res['b']
          Interval(low=2, high=inf)
          >>> res['c']
          Interval(low=2, high=2)