RFC: Monitoring old PRs, new dg directives

Marek Polacek polacek@redhat.com
Mon Aug 10 21:36:57 GMT 2020


On Mon, Aug 10, 2020 at 08:58:54AM -0400, Nathan Sidwell wrote:
> On 8/10/20 4:48 AM, Richard Sandiford wrote:
> > Marek Polacek via Gcc-patches <gcc-patches@gcc.gnu.org> writes:
> > > > > > sure.
> > > > > > * develop patch
> > > > > > * run testsuite
> > > > > > * observe unexpected ICEs
> > > > > > * load g++.log into editor
> > > > > > * ^sinternal comp
> > > > > > * gets to first unexpected ICE
> > > > > > * debug it.
> > > > > > 
> > > > > > What does '^sinternal comp' become?  As there could be many expected ICEs
> > > > > > it'll be painful to determine whether any particular utterance of 'internal
> > > > > > compiler' is expected or not.
> > > > > 
> > > > > That is a problem I don't know how to deal with.  I know how to pass
> > > > > additional options to the compiler from dejagnu.  I thought maybe I could use
> > > > > -pass-exit-codes, redirect stderr to /dev/null, and check if the exit code is
> > > > > ICE_EXIT_CODE, but there seems to be no way to do that redirection.  So I'm
> > > > > stuck.
> > > > > 
> > > > > Though, you could just grep for '^FAIL.*internal comp', which will find the
> > > > > first unexpected ICE.  Contrary to the expected ICEs, the unexpected ICEs will
> > > > > be shown in 'Excess errors:'.  Won't that work?
> > > > 
> > > > Read what I wrote:
> > > > > > * load g++.log into editor
> > > > > > * ^sinternal comp
> > > > 
> > > > are you telling me not to use an editor for this task?  the search is so one
> > > > can get the command line.  Grepping the log file will not do that.
> > > 
> > > No, I'm saying that looking for '^FAIL.*internal comp' (in an editor) instead
> > > of just 'internal comp' will get you to the ICEs you care about.  In vim,
> > > '/^FAIL.*in' gets me there.
> > 
> > Yeah, this works.  I'm not sure whether Nathan's ^s is isearch
> > or regexp-isearch :-)
> 
> It was incremental :) it;s kind of nice just to stop typing when it hits the
> first ICE message!  But, I'm not going to object any more, I guess I'll live
> with it. </grumpy old man>

Sorry.

> [I'm sure I can figure out some emacs macro binding to DTRT]

I'm sure you could.  If it becomes painful, I could also add
GCC_TESTSUITE_SKIP_ICE_TESTS (disabled by default) or similar to skip dg-ice
tests.

Marek



More information about the Gcc-patches mailing list