Skip to content
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 while compiling stage2 libsyntax for i686-pc-windows-gnu #28260

Closed
Diggsey opened this issue Sep 5, 2015 · 9 comments
Closed

segfault while compiling stage2 libsyntax for i686-pc-windows-gnu #28260

Diggsey opened this issue Sep 5, 2015 · 9 comments

Comments

@Diggsey
Copy link
Contributor

Diggsey commented Sep 5, 2015

@alexcrichton has indicated this may be related to using newer versions of gcc, which might explain why it doesn't fail on the buildbot machines.

The segfault occurs while running the tailcallelim llvm pass on ast::Pat_::drop(), possibly during the prerequisite tti analysis.

Turning on any kind of debug information for either rust or llvm causes the problem to disappear.

@steveklabnik steveklabnik added I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ A-build and removed I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ labels Sep 5, 2015
@Diggsey
Copy link
Contributor Author

Diggsey commented Sep 5, 2015

I've reported this as an LLVM bug: https://llvm.org/bugs/show_bug.cgi?id=24722

@alexcrichton
Copy link
Member

Closing as a duplicate of #28962

@alexcrichton
Copy link
Member

Er actually this has a smaller number, gonna go in favor of this.

@alexcrichton alexcrichton reopened this Oct 21, 2015
@alexcrichton
Copy link
Member

Also so this shows up in github search:

gcc 5.2 fails to build LLVM successfully on MinGW as it segfaults at runtime

SingingTree added a commit to SingingTree/rust that referenced this issue Oct 22, 2015
SingingTree added a commit to SingingTree/rust that referenced this issue Oct 24, 2015
bors added a commit that referenced this issue Oct 24, 2015
…chton

This PR adds a note to the end of the Windows build instructions to reflect the issues detailed in #28260, as well as a work around using older versions of gcc. I've avoided going into detail as I did not wish to bloat the README, and so that the changes are easy to yank once the issue is resolved.
@tkelman
Copy link

tkelman commented Mar 9, 2016

This should be fixed in GCC 6, I believe - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66655

@taralx
Copy link
Contributor

taralx commented Apr 14, 2016

I have indications that GCC 5.3 also works, but I didn't have time to fully test. If someone has a windows box and wants to try it... :)

@petrochenkov
Copy link
Contributor

@taralx
5.3 doesn't work, but this segfault happens only when LLVM assertions are enabled, maybe you tested without them?

@taralx
Copy link
Contributor

taralx commented Apr 14, 2016

I did indeed test without them. Thanks for the heads up.

@alexcrichton
Copy link
Member

Testing today, it appears that master branch builds fine with gcc 5.4.0. I suspect we fixed this "by accident" when we updated LLVM at some point

bors added a commit that referenced this issue Jul 2, 2016
configure: Check for valid Python on MinGW as well

The LLVM build system is somewhat picky about which Python is used to build it
as it's known to be incompatible with the default `python2` package that ships
with MinGW. This was previously detected for MSVC builds but the logic was left
out for MinGW by accident (now that we've switched to cmake builds for LLVM
everywhere).

This corrects the `./configure` check and also updates the `README.md`
accordingly. Additionally, a number of instructions were updated to work with
the most recent copy of MSYS2.

Closes #28260
Closes #34489
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants