about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRalf Jung <post@ralfj.de>2020-05-30 13:45:11 +0200
committerGitHub <noreply@github.com>2020-05-30 13:45:11 +0200
commit6238e79fb6a5241341ff843f96638e0fcd64649c (patch)
tree6dc826150115cc2369cbeb22d0d19a0e064163ea
parentf96e3e206928d4214997c5585ab9f45318d1d8c6 (diff)
parent8ef93928282c939554b9b7b518665fcde06c6ba6 (diff)
downloadrust-6238e79fb6a5241341ff843f96638e0fcd64649c.tar.gz
rust-6238e79fb6a5241341ff843f96638e0fcd64649c.zip
Rollup merge of #72563 - RalfJung:multi-return, r=matthewjasper
multiple Return terminators are possible

@ecstatic-morse mentioned in https://github.com/rust-lang/rust/issues/72515 that multiple `Return` terminators are possible. Update the docs accordingly.

Cc @rust-lang/wg-mir-opt
-rw-r--r--src/librustc_middle/mir/mod.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/librustc_middle/mir/mod.rs b/src/librustc_middle/mir/mod.rs
index 20c64d40fab..0e9c133e2c3 100644
--- a/src/librustc_middle/mir/mod.rs
+++ b/src/librustc_middle/mir/mod.rs
@@ -1072,7 +1072,8 @@ pub enum TerminatorKind<'tcx> {
     Abort,
 
     /// Indicates a normal return. The return place should have
-    /// been filled in by now. This should occur at most once.
+    /// been filled in before this executes. This can occur multiple times
+    /// in different basic blocks.
     Return,
 
     /// Indicates a terminator that can never be reached.