Add new rpitit compare mode#108710
Conversation
|
I don't see the benefit of a separate compare mode, vs being explicit. Compare modes are more useful for things that will every every program. RPITIT lowering does not. |
|
Yeah, @jackh726 is right. We can probably just use revisions for all the tests in |
|
@jackh726 I'm not sure what did you mean exactly, but we are aiming to replace existing code with what we have under -Zlower-impl-trait-in-trait-to-assoc-ty. I think this is useful in order to:
|
|
The job Click to see the possible cause of the failure (guessed by this bot) |
|
Yes, but this compiler flag should only affect RPITIT lowering, and thus only the tests in the directories listed by @compiler-errors. To argue some more against this: RPITITs are unstable now anyways. I doubt we want different behavior for long. Revisions are enough if needed. I might even argue that it's not even worth adding the compile flag and just making the change (you want this to get tested, and having a flag for an unstable feature seems counter to that goal). |
I disagree. I don't want to break the very real projects that are using AFIT experimentally today, which will happen if we were to land a "totally rewrite the way we do RPITIT lowering" PR. A rewrite at this scale really needs to be landed in chunks with lots of implementation discussion, and the only way of doing that is gating the feature behind a flag until at least it has UI test parity with the existing implementation. |
|
It's true that most tests live where @compiler-errors mentioned (note that there are a ton of other places where we use RPITITs and AFITs trying to test other stuff). Anyway, I can add revisions to those and be sure that I keep track of the ones that are working and the ones that are not working. |
|
☔ The latest upstream changes (presumably #108351) made this pull request unmergeable. Please resolve the merge conflicts. |
|
Closing in favor of using revisions. |
r? @compiler-errors
This depends on #108700, after that one is merged I can rebase it on top of master but for now is good for a review. The last commit 7dfcdca is the only meaningful one, the rest are about #108700