-
Notifications
You must be signed in to change notification settings - Fork 13.3k
tail call causes memory leak in certain circumstances #160
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
Ah, it's leaking the argument slots to the slot the tail-call is originating from. Nice minimal case, thanks! Found the problem, adding further-reduced test plus fix shortly. |
Er, the function the tail-call is originating from. Sigh, mondays. |
Fix leaking arg slots on tail calls. Closed by bc646d0. |
mbrubeck
pushed a commit
to mbrubeck/rust
that referenced
this issue
Oct 17, 2011
oli-obk
pushed a commit
to oli-obk/rust
that referenced
this issue
Jul 19, 2017
Also test subdirectories of `rust/src/test/run-pass`
keeperofdakeys
pushed a commit
to keeperofdakeys/rust
that referenced
this issue
Dec 12, 2017
Add pthread_setname_np for NetBSD
rchaser53
pushed a commit
to rchaser53/rust
that referenced
this issue
Jan 19, 2019
Closes rust-lang#138 Closes rust-lang#160
djtech-dev
pushed a commit
to djtech-dev/rust
that referenced
this issue
Dec 9, 2021
Add an implementation of replace_all_uses_with for BasicBlock.
antoyo
added a commit
to antoyo/rust
that referenced
this issue
Jun 7, 2022
Don't assume /bin/bash is available on every system.
celinval
pushed a commit
to celinval/rust-dev
that referenced
this issue
Nov 13, 2024
Update to the version where the CBMC viewer is removed. This should resolve the issues some people are having with the `run_kani.sh` script.
This issue was closed.
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
The following code
gives
rt: fatal, 'leaked memory in rust main loop (1 objects)' failed, rt/memory_region.cpp:99 1 objects
Without the 'dummy' vector it is OK, i.e.
fn inner(int t) -> int {
if (t > 0) {
be inner(t - 1);
}
else {
ret 0;
}
}
The text was updated successfully, but these errors were encountered: