(this thread continues from some private messages where I was keeping people up-to-date, it might also be useful for #t-compiler meeting wg check-ins)
Another update: continued from where I was before - got the test I added (still behind a flag) passing and showing that less mono-items are being produced.
I've since been trying to remove the flag and run the analysis for everything and get that working. I've been making progress and I've got everything up to
libproc_macro compiling again, it is failing with this error that I've hit a bit of a wall fixing.
This branch still contains everything so if you have any ideas on what might be up, I'd appreciate it. I'm going to shift gears from focusing on the implementation to focusing on the interim report I need to write on this, which is due in a couple weeks (though, if I do unblock myself, I'd like to get a PR up with this working soon).
(the last commit is the one that enables the analysis w/out the flag - by changing the default value to
true, I'll eventually remove it entirely)
There are also plenty of places where I just made a decision on how to do something so I could proceed, there's no doubt lots of it that needs work.
Hey, how goes it @davidtwco ? Sorry I've not been following too closely -- curious to hear how it goes!
@nikomatsakis I’ve not made a lot of progress since the last update, been working on the patch here and there during the holidays. Before the holidays, I was mostly focused on reports I had to write for the university.
I’ve made a change that I think fixed the ICE that I was getting, but I’m not completely confident. The fix made sense based on what eddyb had suggested was the issue, but I’ve now got an ICE in an earlier crate (
libcore instead of
libproc_macro) which I wasn’t expecting. Not made a whole lot of progress solving that. Lost some time last week when backtraces went missing (#67615).
OK -- I'm wondering how much this can be landed in slices
Everything except the last commit I have passes all tests - I’d want to tidy it a little bit, but everything is behind flags and only my tests use it. It isn’t enough to compile the compiler (which is what the last commit tries to enable).
One place that I’ve struggled is coming up with sufficient test cases such that I’m not debugging huge crates that ICE instead of smaller test cases. I think if I were able to do that better, I’d be able to better understand and fix issues quicker and get something that can bootstrap quicker.