about summary refs log tree commit diff
path: root/src/rustllvm/ExecutionEngineWrapper.cpp
diff options
context:
space:
mode:
authorFelix S. Klock II <pnkfelix@pnkfx.org>2015-04-03 19:50:32 +0200
committerFelix S. Klock II <pnkfelix@pnkfx.org>2015-04-04 09:23:40 +0200
commit05b8a106e45b0c8381c6bc89e76e7bb94b03a84c (patch)
treef61eccebacd9d2a5ff64783ca5e0095e52d58d8a /src/rustllvm/ExecutionEngineWrapper.cpp
parentd1835ae7cc175b9aff383432e934e7ad13825ebc (diff)
downloadrust-05b8a106e45b0c8381c6bc89e76e7bb94b03a84c.tar.gz
rust-05b8a106e45b0c8381c6bc89e76e7bb94b03a84c.zip
Encode more precise scoping rules for function params.
Function params which outlive everything in the body (incl
temporaries).  Thus if we assign them their own `CodeExtent`, the
region inference can properly show that it is sound to have
temporaries with destructors that reference the parameters (because
such temporaries will be dropped before the parameters are).

This allows us to address issue 23338 in a clean way.

As a drive-by, fix a mistake in the tyencode for
`CodeExtent::BlockRemainder`.
Diffstat (limited to 'src/rustllvm/ExecutionEngineWrapper.cpp')
0 files changed, 0 insertions, 0 deletions