]> git.lizzy.rs Git - rust.git/commit
auto merge of #15975 : dotdash/rust/unwind_lifetimes, r=pcwalton
authorbors <bors@rust-lang.org>
Sat, 26 Jul 2014 03:31:22 +0000 (03:31 +0000)
committerbors <bors@rust-lang.org>
Sat, 26 Jul 2014 03:31:22 +0000 (03:31 +0000)
commit34a6a8fc59343fca718a4d7d908012d1fdc83a80
tree303b7c9087c10d21c79a1f2c8ce9093cc533fc33
parentcf1381c1d000a24f95be7d53c4318c18c2daddbb
parentb13cad3a9cef1d1fbc97434d9f3081788548e811
auto merge of #15975 : dotdash/rust/unwind_lifetimes, r=pcwalton

Currently we don't emit lifetime end markers when translating the
unwinding code. I omitted that when I added the support for lifetime
intrinsics, because I initially made the mistake of just returning true
in clean_on_unwind(). That caused almost all calls to be translated as
invokes, leading to quite awful results.

To correctly emit the lifetime end markers, we must differentiate
between cleanup that requires unwinding and such cleanup that just wants
to emit code during unwinding.