Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.
Sign upLLVM assertion failed: conflicting locations for variable #29541
Comments
michaelwoerister
added
the
A-debuginfo
label
Nov 3, 2015
This comment has been minimized.
This comment has been minimized.
|
Note that I have enabled 2 codegen units (https://github.com/tomaka/rustc-issue-repro/blob/master/Cargo.toml#L8), but it's also buggy even without that line. Using |
This comment has been minimized.
This comment has been minimized.
|
I can reproduce this on Linux. |
This comment has been minimized.
This comment has been minimized.
|
I have not had the time to really debug into this but my hunch is that LLVM messes up the debuginfo during optimization. This might still be a problem of rustc producing LLVM IR that is not quite valid. |
arkpar
referenced this issue
Feb 16, 2016
Closed
rustc assertion failed when building in release mode with -g #31702
dotdash
referenced this issue
Feb 16, 2016
Merged
rustc: Rebase LLVM on the 3.8 release branch #31717
brson
added
P-low
T-compiler
I-ICE
A-LLVM
labels
Apr 11, 2017
This comment has been minimized.
This comment has been minimized.
|
@michaelwoerister you might check out whether this is still an issue sometime. |
This comment has been minimized.
This comment has been minimized.
|
Yes, let's hope that a year of LLVM progress has solved this... |
Mark-Simulacrum
added
the
C-bug
label
Jul 22, 2017
This comment has been minimized.
This comment has been minimized.
|
I cannot reproduce, but for unrelated reasons:
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
tomaka commentedNov 3, 2015
To reproduce, just clone this repo: https://github.com/tomaka/rustc-issue-repro (it's a stripped down version of my project)
cargo buildshould trigger:This is with the MSVC 64bits nightly from a few days ago.
The only clue that I have is that here if you replace the call to
VertexBuffer::immutablewithunsafe { ::std::mem::zeroed() }, it fixes the problem.The problematic call graph is: