-
Notifications
You must be signed in to change notification settings - Fork 12.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Investigate running tests under Address Sanitizer #749
Comments
On OS X, you can use libgmalloc. It isn't that slow. |
I agree this looks really cool. Needs compiler support. |
nominating for well covered |
subset of valgrind, doesn't improve accuracy, de-milestoning |
just a bug, removing milestone/nomination. |
Ah, this is clever. They beat valgrind because they add instrumentation into the code while it's being compiled, rather than preloading stuff at runtime. For our purposes this is fine; since we have a dedicated set of valgrind bots, they can just do (Triage visit in disguise.) |
By the way, the paper is clearly-written and pretty approachable. |
Triage: not done yet. |
cc #8426 |
To compile with asan:
|
If we start building the libclang_rt stuff, it'd be trivial to add a |
To catch bad memory accesses (e.g. use after free) Rust will need to start emitting |
Ah good to know. That shouldn't be hard at all though. On Tue, Feb 4, 2014 at 3:58 AM, Vadim Chugunov [email protected]:
|
This really needs to be refiled as "implement address sanitizer support" which is a huge project. It's not useful without frontend support, and IMO it's too much complexity to add to librustc in the current state it's in. Sanitizers would need to be added for all the unsafe intrinsics along with unsafe pointer dereferencing. It's not going to map well to the sanitizers used by Clang, since Rust does everything in the libraries with the basic compiler intrinsics. It doesn't have a language feature for unsafe indexing of arrays, etc. |
apple: Add VM_* constants from mach/vm_statistics.h Closes rust-lang#736.
fix `TypeParamBounds` link on trait objects
* Handle array types in TypeAnalysis * Handle array calling convention of cabs * Add tests
http://code.google.com/p/address-sanitizer/wiki/AddressSanitizer
It finds use-after-free and out-of-bounds errors with very little overhead. Could be useful.
The text was updated successfully, but these errors were encountered: