summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Hodge <tpg@mutabah.net>2016-10-23 13:21:41 +0800
committerJohn Hodge <tpg@mutabah.net>2016-10-23 13:21:41 +0800
commit99f25ab63a56a92d7e92c6ae01c13c5bbbefd578 (patch)
tree36e28a7c3e20d48bf93981b7351c9033a89a41ae
parent4fd6d5b1d88c22803071895987f416d47e1321da (diff)
downloadmrust-99f25ab63a56a92d7e92c6ae01c13c5bbbefd578.tar.gz
MIR Gen - Use the `m_yeild_final` flag in _Block
-rw-r--r--src/mir/from_hir.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/mir/from_hir.cpp b/src/mir/from_hir.cpp
index 95c664b2..cac498b1 100644
--- a/src/mir/from_hir.cpp
+++ b/src/mir/from_hir.cpp
@@ -348,7 +348,12 @@ namespace {
// Result from last node (if it didn't diverge)
if( res_valid ) {
- m_builder.set_result( node.span(), mv$(res) );
+ if( node.m_yields_final ) {
+ m_builder.set_result( node.span(), mv$(res) );
+ }
+ else {
+ m_builder.set_result(node.span(), ::MIR::RValue::make_Tuple({}));
+ }
}
}
else