Just to add some context: the code works since 1.36 for 2015 edition code when NLL was deemed fully compatible to backport it to older code[1][2], released on July of 2019[3], and since 1.31[4] with the stable introduction of the 2018 edition back in December of 2018[5].
[1]: https://godbolt.org/z/er3zT6
[2]: https://godbolt.org/z/zKPao4
[3]: https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html#nll-f...
[4]: https://godbolt.org/z/WKczbv
[5]: https://blog.rust-lang.org/2018/12/06/Rust-1.31-and-rust-201...