-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
thread 'rustc' panicked at 'expected expression', compiler/rustc_expand/src/base.rs:176:18 #108426
Comments
Can you share the code that caused the ICE please? |
https://github.com/rust-lang/rust/blob/1.67.1/compiler/rustc_expand/src/base.rs#L176 |
I tried to But unfortuantely when I trited to use reverse version of the patch on Rust 1.67.1 source tree the problem was still there... -- Note also that I do see this internal error only when I build like this:
(which is executed when I do: When I build Rust using -- Also I don't see the issue when I trie to build Rust to use system LLVM 13 form OS ( -- Note that this is very likely the same issue as reported for BSD here: -- @the8472 can you please look at this issue? |
That commit changes field ordering of Also, have you tried building rustc and LLVM with asserts enabled? |
I did some other bisecting and found another problematic commit (on top of the one mentioned above): I can confirm that with reverting following two commits I can build Rust 1.67.1: @mikebenfield can you please have look at this too? For some reason the stack is on Solaris broken unlike on BSD (#108117). But in both cases it hits the same assertion. |
Sparc is big-endian, isn't it? We don't have many of those platforms. Maybe something related to the niche codegen has endianness bugs. |
Right. Sparc is big-endian. |
@psumbera The "code that caused the ICE" meant "the code that rustc was compiling", not the code in rustc. cc @ecnelises @bzEq Does this issue surface on AIX? I believe you're using POWER in BE mode, so if this is a pure endianness bug then it should repro. |
Specifically, this is related to rust-lang/rust#108426 and this got referenced from my reported issue at rust-lang/rust#108117 With this a native build of rust on NetBSD/sparc64 10.0_BETA succeeds.
NetBSD/powerpc is big-endian, and was not affected by this particular problem, though that's a 32-bit target. This particular issue only occurred when re-building I do not yet have other big-endian 64-bit targets operational with "native" testing ability, though some of that is on my TODO list (mips, arm64). |
We are upgrading our compiler from 1.64.0-dev to 1.70.0-dev, once we have information about this question, we'll post our findings. |
The issue went away with Rust 1.68.0. Particularly with commit 2f9f097. Whole time I could build it using |
Did |
Yes |
We have bootstrapped stage3 1.70.0-dev, the error is not reproduced on AIX. |
Thank you for that information, @bzEq! Removing |
The global stage default for build is 1, not 2, as documented at https://rustc-dev-guide.rust-lang.org/building/bootstrapping.html#building-the-stages. |
Oh! I didn't know that. |
When I build Rust 1.67.1 on Solaris SPARC build fails with following error (where build on Solaris x86 is ok):
For build I use:
rustc-1.66.0
The text was updated successfully, but these errors were encountered: