PageRenderTime 47ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 0ms

/src/test/compile-fail/lambda-mutate.rs

https://bitbucket.org/graydon/rust
Rust | 12 lines | 10 code | 0 blank | 2 comment | 0 complexity | 0ac9d2022aeeda3f40078b3affe1cf93 MD5 | raw file
  1. // error-pattern:assigning to captured outer variable in a heap closure
  2. // Make sure we can't write to upvars from fn@s
  3. fn main() {
  4. let i = 0;
  5. let ctr = fn@ () -> int { i = i + 1; return i; };
  6. log(error, ctr());
  7. log(error, ctr());
  8. log(error, ctr());
  9. log(error, ctr());
  10. log(error, ctr());
  11. log(error, i);
  12. }