about summary refs log tree commit diff
path: root/src/rt/rust_kernel.cpp
diff options
context:
space:
mode:
authorBjörn Steinbrink <bsteinbr@gmail.com>2013-06-29 17:45:59 +0200
committerBjörn Steinbrink <bsteinbr@gmail.com>2013-06-29 18:02:21 +0200
commitba922a4027f407dd28ab0e699837109ca99ff1ae (patch)
treebfcb128ec065eaa8d5bac9e6894ab7b27cae3ace /src/rt/rust_kernel.cpp
parent2a40c5db469b5065f64c69ae7874f162ff2669a8 (diff)
downloadrust-ba922a4027f407dd28ab0e699837109ca99ff1ae.tar.gz
rust-ba922a4027f407dd28ab0e699837109ca99ff1ae.zip
Fix handling of temp cleanups for the "self" argument
The code that tried to revoke the cleanup for the self argument tried
to use "llself" to do so, but the cleanup might actually be registered
with a different ValueRef due to e.g. casting. Currently, this is
worked around by early revocation of the cleanup for self in
trans_self_arg.

To handle this correctly, we have to put the ValueRef for the cleanup
into the MethodData, so trans_call_inner can use it to revoke the
cleanup when it's actually supposed to.
Diffstat (limited to 'src/rt/rust_kernel.cpp')
0 files changed, 0 insertions, 0 deletions