regarding your questions:
Are you asking if — after fetching from upstream —
--keep-stage 1 will "still work"? The answer is unknowable; put another way,
--keep-stage 1 is never guaranteed to work. But it's far less likely when pulling from upstream, which has an unknown set of changes. I think that after rebasing I would recommend not using it.
Or you can wait and see if you get strange ICEs and errors. :P
Yup, got a compiler panic :slight_smile: what does ICE stand for ?
"internal compiler error"
So, say I pulled from up stream, I did complete build.
Then I made some changes on top. Now I can use keep stage 1 right?
Also now when I want to compile a test file to see the effects of my latest changes, should I use
Rustc +stage2 <file to compile>?
Rust +stage1 <file>
@blitzerr that depends on what command you gave to
I usually do
./x.py build --stage 1 -i src/libstd, in which case you would run with
So the question is the stage 2 is the compiler with the latest changes, right ?
So we do rust-build with keep stage1 and then use +stage2 to see the affects of the latest changes ?
first off, ignore
--keep-stage 1 entirely, it's not relevant :)
So you only want to build libstd ?
let's just assume you never use it
did you read the explanation page about this?
in particular, this section, which explains that specific command :)
it doesn't just build libstd.. it builds up to libstd in stage1
which includes building the stage1 rustc
if you want to run the stage2 compiler, you have to build up to stage 2
./x.py build --stage 2 src/libstd
but normally that doesn't gain you much and just takes more time
Okay, I see. We never need to build the stage2.
Is this doc recently updated ? It's very clear now.
I did revise recently, not sure just when
rustup toolchain link stage1 build/<host-triple>/stage1
That's need to be done just once, or after every build ?