-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ch04-03: String Slices, explain non-lexical lifetimes #1939
Labels
Milestone
Comments
There is no bug; this is because of Non-lexical lifetimes. The Rust compiler recently learned how to tell when a borrow is finished before the end of the scope. We could certainly add more explanation at this point. |
carols10cents
changed the title
ch04-03: String Slides
ch04-03: String Slices, explain non-lexical lifetimes
Apr 29, 2019
JohnTitor
added a commit
to JohnTitor/rust
that referenced
this issue
Jul 27, 2021
Update books ## nomicon 1 commits in 7a13537f96af4b9b8e3ea296d6e5c3c7ab72ce9f..f51734eb5566c826b471977747ea3d7d6915bbe9 2021-07-05 23:34:47 -0400 to 2021-07-23 18:24:35 +0900 - Add cloning example for dot operator behaviour (rust-lang/nomicon#292) ## reference 3 commits in 82d75cf423e4a7824fb36e73ccb18519d6900610..3b7be075af5d6e402a18efff672a8a265b4596fd 2021-07-15 06:49:08 -0700 to 2021-07-26 13:20:11 -0700 - Fix typos + grammar (rust-lang/reference#1037) - Expand on Unicode identifiers. (rust-lang/reference#1022) - Remove incorrect apostrophe (rust-lang/reference#1076) ## book 17 commits in eac55314210519238652f12b30fec9daea61f7fe..a07036f864b37896b31eb996cd7aedb489f69a1f 2021-07-19 11:08:01 -0400 to 2021-07-26 20:19:46 -0400 - Set expectations a bit more realistically - Snapshot of chapter 4 for nostarch - A few small wording tweaks in ch 4 - Clarify that it's not stack/heap exactly that matters for copy/non copy, fixes rust-lang/book#2799 - Clarify a detail around move. Fixes rust-lang/book#2413. - Clarify places that changed because of NLL. Fixes rust-lang/book#1939. - nostarch ch3 - Small edits to chapter 3 - (rust-lang/book#2797) - Update ch03-03-how-functions-work.md: Pervasive -> Prevalent. (rust-lang/book#2796) - Address loop labels and continue. Fixes rust-lang/book#1392. - Clarify behavior of integer division. Fixes rust-lang/book#2248. - Demonstrate how scope interacts with shadowing - Add another cross-reference to the new unit type introduction - Introduce the unit type with tuples. Fixes rust-lang/book#1933. - Reword sentence to not have numbers separated only by a comma - Link directly to other installation page. Fixes rust-lang/book#1609 ## rust-by-example 1 commits in 1db6bb483cc87ad3b424d9aba764fe622960a1be..0dc9cd4e89f00cb5230f120e1a083916386e422b 2021-07-15 06:17:42 -0300 to 2021-07-23 09:14:27 -0300 - Grammatical mistake: Comparison as ... as the (rust-lang/rust-by-example#1453) ## rustc-dev-guide 2 commits in 93422c21baca585dc88357ec886a48f6ddc7d665..09343d6f921d2a07c66f8c41ec3d65bf1fa52556 2021-07-13 12:45:58 -0400 to 2021-07-26 00:37:28 +0200 - Fix typo in building/bootstrapping.md (rust-lang/rustc-dev-guide#1175) - Link directly to stabilization report comments (rust-lang/rustc-dev-guide#1173) ## edition-guide 4 commits in af696ce8ea526445590ae0ca66a8128d2a95a69a..3710b0cae783d0bcd2b42452a63b081473f5970a 2021-07-20 11:38:03 -0400 to 2021-07-26 11:34:46 -0700 - Add more consistent headings and add a migration section to reserving-syntax (rust-lang/edition-guide#263) - reserving-syntax.md: Expand and add detail (rust-lang/edition-guide#249) - Fix typo in or-patterns section (rust-lang/edition-guide#262) - Fix typo (rust-lang/edition-guide#261)
JohnTitor
added a commit
to JohnTitor/rust
that referenced
this issue
Jul 27, 2021
Update books ## nomicon 1 commits in 7a13537f96af4b9b8e3ea296d6e5c3c7ab72ce9f..f51734eb5566c826b471977747ea3d7d6915bbe9 2021-07-05 23:34:47 -0400 to 2021-07-23 18:24:35 +0900 - Add cloning example for dot operator behaviour (rust-lang/nomicon#292) ## reference 3 commits in 82d75cf423e4a7824fb36e73ccb18519d6900610..3b7be075af5d6e402a18efff672a8a265b4596fd 2021-07-15 06:49:08 -0700 to 2021-07-26 13:20:11 -0700 - Fix typos + grammar (rust-lang/reference#1037) - Expand on Unicode identifiers. (rust-lang/reference#1022) - Remove incorrect apostrophe (rust-lang/reference#1076) ## book 17 commits in eac55314210519238652f12b30fec9daea61f7fe..a07036f864b37896b31eb996cd7aedb489f69a1f 2021-07-19 11:08:01 -0400 to 2021-07-26 20:19:46 -0400 - Set expectations a bit more realistically - Snapshot of chapter 4 for nostarch - A few small wording tweaks in ch 4 - Clarify that it's not stack/heap exactly that matters for copy/non copy, fixes rust-lang/book#2799 - Clarify a detail around move. Fixes rust-lang/book#2413. - Clarify places that changed because of NLL. Fixes rust-lang/book#1939. - nostarch ch3 - Small edits to chapter 3 - (rust-lang/book#2797) - Update ch03-03-how-functions-work.md: Pervasive -> Prevalent. (rust-lang/book#2796) - Address loop labels and continue. Fixes rust-lang/book#1392. - Clarify behavior of integer division. Fixes rust-lang/book#2248. - Demonstrate how scope interacts with shadowing - Add another cross-reference to the new unit type introduction - Introduce the unit type with tuples. Fixes rust-lang/book#1933. - Reword sentence to not have numbers separated only by a comma - Link directly to other installation page. Fixes rust-lang/book#1609 ## rust-by-example 1 commits in 1db6bb483cc87ad3b424d9aba764fe622960a1be..0dc9cd4e89f00cb5230f120e1a083916386e422b 2021-07-15 06:17:42 -0300 to 2021-07-23 09:14:27 -0300 - Grammatical mistake: Comparison as ... as the (rust-lang/rust-by-example#1453) ## rustc-dev-guide 2 commits in 93422c21baca585dc88357ec886a48f6ddc7d665..09343d6f921d2a07c66f8c41ec3d65bf1fa52556 2021-07-13 12:45:58 -0400 to 2021-07-26 00:37:28 +0200 - Fix typo in building/bootstrapping.md (rust-lang/rustc-dev-guide#1175) - Link directly to stabilization report comments (rust-lang/rustc-dev-guide#1173) ## edition-guide 4 commits in af696ce8ea526445590ae0ca66a8128d2a95a69a..3710b0cae783d0bcd2b42452a63b081473f5970a 2021-07-20 11:38:03 -0400 to 2021-07-26 11:34:46 -0700 - Add more consistent headings and add a migration section to reserving-syntax (rust-lang/edition-guide#263) - reserving-syntax.md: Expand and add detail (rust-lang/edition-guide#249) - Fix typo in or-patterns section (rust-lang/edition-guide#262) - Fix typo (rust-lang/edition-guide#261)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Trying to follow the example in the String Slices section:
If I remove the line that makes use of to
word
(println!("the first word is: {}", word);
), the compilation error as the followinggoes away. This doesn't make sense because I would expect regardless
word
is used or not,s.clear()
should yield the same compilation error. That makes me wonder whether there's a bug in the rust compiler. If this is expected, it would worth explaining more.See the playground code for compilation error and the one without compilation error that has no
word
reference removedThe text was updated successfully, but these errors were encountered: