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

ICE with *-*-ios targets without ios developer stuff installed #29812

Closed
wthrowe opened this issue Nov 13, 2015 · 5 comments
Closed

ICE with *-*-ios targets without ios developer stuff installed #29812

wthrowe opened this issue Nov 13, 2015 · 5 comments
Labels
I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️

Comments

@wthrowe
Copy link
Contributor

wthrowe commented Nov 13, 2015

$ echo 'fn main() {}' | rustc - -Z unstable-options --pretty=normal --target=x86_64-apple-ios
error: internal compiler error: unexpected panic
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
note: run with `RUST_BACKTRACE=1` for a backtrace
thread 'rustc' panicked at 'failed to get iphonesimulator SDK path: No such file or directory (os error 2)', src/librustc_back/target/apple_ios_base.rs:59

I don't expect to be able to actually compile anything with those targets, but it shouldn't ICE and most of the --pretty modes should probably work. (--pretty works with all other targets, except for --pretty=typed because that needs libstd.)

@apasel422 apasel422 added the I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ label Nov 13, 2015
@cardoe
Copy link
Contributor

cardoe commented Jul 27, 2016

This should likely improve with #34980.

@japaric
Copy link
Member

japaric commented Sep 14, 2016

Triage: Still happens with 1.11.0:

$ rustup run stable rustc -V
rustc 1.11.0 (9b21dcd6a 2016-08-15)

$ rustup run stable rustc --target aarch64-apple-ios --print cfg
error: internal compiler error: unexpected panic
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
thread 'rustc' panicked at 'failed to get iphoneos SDK path: No such file or directory (os error 2)', ../src/librustc_back/target/apple_ios_base.rs:59

Copying Alex's comment on a duplicate issue here so it doesn't get lost:

I believe this has essentially always been the case, but I'd love to have a fix! I think the best choice here is to delay the pieces of the iOS target that are fallible until we actually need them, for example at link time.

@cardoe
Copy link
Contributor

cardoe commented Sep 15, 2016

@japaric The change I mentioned didn't land until 1.12.0. I've removed the explicit panic!() call and now its returning a Result which I believe is now handled gracefully. I'd love if you could test it for me.

$ rustup run beta rustc --target aarch64-apple-ios --print cfg

My Mac has Xcode installed now and I haven't had the time to uninstall it to test this.

@cardoe
Copy link
Contributor

cardoe commented Nov 28, 2016

This is confirmed to not ICE and can be closed.

@alexcrichton
Copy link
Member

Yay!

Centril added a commit to Centril/rust that referenced this issue May 28, 2019
… r=alexcrichton

Remove special case for *ios* builds in run-make-fulldeps/print-target-list Makefile

Previous `TODO` comment in this file mentions [an issue that was closed](rust-lang#29812), and I was able to confirm locally that provided code in that issue no longer produces an ICE. Discussion on that issue seems to indicate this code was no longer needed as of 1.12.0.

I removed the `*ios*` branch from this `case` statement as it may cause confusion, then removed the case statement entirely as it only had a wildcard branch.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
Projects
None yet
Development

No branches or pull requests

5 participants