Indeed ! First mistake.

Now I have illegal capture
    
    
    var s = @[1, 2, 3, 4, 5]
    
    
    proc mvalues[T](s: var seq[T]): auto {.noSideEffect.}=
      return iterator(): var T =
        for val in s.mitems:
          yield val
    
    var mit = s.mvalues
    
    for i in mit():
      i *= 2
    

Reply via email to