-
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
bootstrap: "test library/core --stage 2" does not actually test stage 2 #118233
Comments
You have to set
Testing stage 1 should be sufficient for that unless you're using |
No it's not. There's a difference between "the libcore that was built by the current rustc sources" and "the libcore that was built by the rustc that was built by the current rustc". I was specifically looking for "segfaults during liballoc build" that might be caused by miscompilations of rustc itself, so I needed the extra bootstrap round.
Oh I see. I guess that makes sense, though on the other hand when I explicitly ask for stage 2 I don't see why it would optimize that away. If I didn't want full bootstrap I would not ask for stage 2. So now that stage 1 is the default, what even is the point of |
In other words both are from current source but the compiler is still built by the beta compiler.
At this point both are from current source, built by toolchain from current source.
same as above, except that std does get rebuilt. it should produce identical code anyway. As the documentation says:
|
So My question still stands though, when would I write |
The comment says
I don't want to compile the compiler three times. I just want the standard library built with the stage that I explicitly specified. So if I need to set this to "true" to fix this issue, then the docs are very misleading. They sound like when I set this, Also, there's still a bug where it prints |
This sounds reasonable I think. Will check it out in about a week or so.
Yes it is. |
./x.py test library/core --stage 1
builds the stage1 compiler, then uses that to build libcore, and then tests that. That's all working as intended, then only strange part is the output it prints:There's no stage 2 involved here, so this makes little sense to me.
However,
./x.py test library/core --stage 2
should be building the stage 2 compiler, use that to build libcore, and then test that. However that's not happening, I don't even get the second rustc build for this command:That's a problem because when I use this command I specifically want to test the libcore that was built by the rustc that was built by the current source code -- I want to go around the bootstrap loop.
Cc @rust-lang/bootstrap
The text was updated successfully, but these errors were encountered: