-
Notifications
You must be signed in to change notification settings - Fork 394
Closed
Labels
A-leaksArea: affects the memory leak checkerArea: affects the memory leak checkerA-windowsArea: affects only Windows targetsArea: affects only Windows targetsC-bugCategory: This is a bug.Category: This is a bug.
Description
Currently, the leak checker is disabled on Windows. This is because even a NOP program reports a leak:
The following memory was leaked:
alloc1821 (Rust heap, size: 40, align: 8) {
0x00 │ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ │ ░░░░░░░░░░░░░░░░
0x10 │ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ │ ░░░░░░░░░░░░░░░░
0x20 │ __ __ __ __ __ __ __ __ │ ░░░░░░░░
}
alloc1965 (Rust heap, size: 40, align: 8) {
0x00 │ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ │ ░░░░░░░░░░░░░░░░
0x10 │ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ │ ░░░░░░░░░░░░░░░░
0x20 │ __ __ __ __ __ __ __ __ │ ░░░░░░░░
}
alloc1997 (Rust heap, size: 24, align: 8) {
0x00 │ ╾─────alloc1949+0─────╼ 00 00 00 00 00 00 00 00 │ ╾──────╼........
0x10 │ 01 00 00 00 __ __ __ __ │ ....░░░░
}
alloc2395 (Rust heap, size: 40, align: 8) {
0x00 │ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ │ ░░░░░░░░░░░░░░░░
0x10 │ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ │ ░░░░░░░░░░░░░░░░
0x20 │ __ __ __ __ __ __ __ __ │ ░░░░░░░░
}
alloc2445 (Rust heap, size: 40, align: 8) {
0x00 │ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ │ ░░░░░░░░░░░░░░░░
0x10 │ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ │ ░░░░░░░░░░░░░░░░
0x20 │ __ __ __ __ __ __ __ __ │ ░░░░░░░░
}
alloc1949 (fn: std::sys_common::thread_local::register_dtor_fallback::run_dtors)
This leak is caused by static sys:common::mutex::Mutex
, which store a pointer to some Rust heap allocation, cast to an integer (so even with #940 resolved, we do not "see" the pointer).
Even on a Windows host, you can avoid this problem by cross-running your program with --target x86_64-unknown-linux-gnu
.
Metadata
Metadata
Assignees
Labels
A-leaksArea: affects the memory leak checkerArea: affects the memory leak checkerA-windowsArea: affects only Windows targetsArea: affects only Windows targetsC-bugCategory: This is a bug.Category: This is a bug.