-
Notifications
You must be signed in to change notification settings - Fork 13k
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
segfault calling same function from two other functions (now reduced) #2053
Comments
The |
Sorry Marijn, I forgot to do a push of the limerick project. I've just done it, the rev f067e505a661f030e6d48caa955a7a5eb34e0f3b of limerick and rev eea5be3dd67057bb803c2028860c5afe07be6288 of rust-csv will segfault. |
Managed to reduce this; compile with rust 851fde8
On my system (MacOS Lion, x86_64):
The bug goes away if I comment out the entirety of f1; which isn't called! Odd one. |
Also, if you swap the order of f1 and f2 it works. That makes me think it has to do with incorrectly reusing monomorphised functions. |
If I modify make_mono_id to always return precise_param_ids it seems to work. |
@marijnh I believe this has something to do with |
You're probably right. I'll look into this when I get back from vacation. |
Hi everyone
I've tried for a couple of hours to reduce a segfault I'm seeing in pure rust code, but I can't manage it.
I'm compiling these files together:
https://raw.github.com/grahame/rust-csv/master/csv.rc
https://raw.github.com/grahame/rust-csv/master/csv.rs
https://raw.github.com/grahame/limerick/master/sim.rs
Then running the program, eg:
./sim data
where data is a directory containing a gtfs dataset, eg.
http://www.transperth.wa.gov.au/TimetablePDFs/GoogleTransit/google_transit.zip
I'm seeing a segfault in the no_overwrite function (sim.rs):
but only if I remove the "let ck" and "let cv" lines, and just use k and v directly. Those lines fix up the crash if present, as does chucking in a
log(error, (k, v));
.A traceback on my mac (using rust 1d7d5c1):
The text was updated successfully, but these errors were encountered: