Skip to content
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

Flag to check for internal compiler errors #34

Closed
fenhl opened this issue Jul 14, 2019 · 5 comments · Fixed by #53
Closed

Flag to check for internal compiler errors #34

fenhl opened this issue Jul 14, 2019 · 5 comments · Fixed by #53

Comments

@fenhl
Copy link

fenhl commented Jul 14, 2019

It would be nice as a convenience if this could provide an --ice flag to check specifically for internal compiler errors rather than any error.

@pnkfelix
Copy link
Member

pnkfelix commented Jan 9, 2020

We definitely need this.

Specifically, such a flag should treat a compiler error as a "pass" and a ICE as a fail.

(we might need a separate mode that treats a compiler error as a "pass" and any other behavior (compiler acceptance or an ICE) as a fail. I'm not sure whether such work needs to be done up front, nor whether it would make sense to try to fold it into this task.)

@chrissimpkins
Copy link
Member

#47 adds a shell script that can be used to automate this until the functionality is implemented in the tool

@pnkfelix
Copy link
Member

Hmm. I've been working on putting support into cargo-bisect-rustc itself for this and a few other testing variations.

I've been assuming that building the support into cargo-bisect-rustc would be best for the long term, but maybe that is an incorrect assumption.

@pnkfelix
Copy link
Member

(the main reason I haven't put up a PR yet is due to the issue described by PR #45 )

@chrissimpkins
Copy link
Member

chrissimpkins commented Feb 11, 2020

Hmm. I've been working on putting support into cargo-bisect-rustc itself for this and a few other testing variations.

I've been assuming that building the support into cargo-bisect-rustc would be best for the long term, but maybe that is an incorrect assumption.

Definitely no intent to derail that effort. These were simple one-liner shell scripts and I figured that they might be of use to others until something is implemented in the tool. I used the ICE stderr substring script in a few cargo bisect reports over the weekend - as an aside very much under the assumption that this is helpful / desirable from a new member of the "ICE-breaker Cleanup Crew" team :) - and it works well for now.

I spoke with Santiago about builtin subcommand functionality on Zulip today. If that is something that you intend to do, I am definitely interested to lend a hand if I can be of help on the effort. I am relatively new to Rust and it might require a bit of mentorship at this stage. But I have time and an interest if that helps to push it forward.

pnkfelix added a commit to pnkfelix/cargo-bisect-rustc that referenced this issue Feb 20, 2020
Also added some other variants, to resolve rust-lang#28.

Just to spell it out:

 * --regress=error is the default: an error status (program rejection or
   ICE) is a regression.

 * --regress=success is probably what you want for rust-lang#28, to see where a
   fix was injected.

 * --regress=ice is what you want if you're looking for where an ICE was
   injected.

 * --regress=non-error is what you want if you know the code should be a static
   error, but the bug is causing either ICEs or invalid successes to show up.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants