public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: "Maciej W. Rozycki" <macro@wdc.com>
To: Jacob Bachmeyer <jcb62281@gmail.com>
Cc: Joel Brobecker <brobecker@adacore.com>,
	Rob Savoye <rob@welcomehome.org>,
	 Jacob Bachmeyer <jcb62281+dev@gmail.com>,
	 Siddhesh Poyarekar <siddhesh@gotplt.org>,
	 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>,
	gcc@gcc.gnu.org,  Mike Stump <mikestump@comcast.net>,
	 Thomas Schwinge <thomas@codesourcery.com>,
	gdb@sourceware.org
Subject: Re: dejagnu version update? [CORRECTION: not a regression in DejaGnu;  GDB testsuite bug]
Date: Wed, 10 Jun 2020 17:37:02 +0100 (BST)	[thread overview]
Message-ID: <alpine.LFD.2.21.2006101222570.9519@redsun52.ssa.fujisawa.hgst.com> (raw)
In-Reply-To: <5EE05F15.4070408@gmail.com>

[cc-ing Joel as the originator, and <gdb@sourceware.org>]

On Tue, 9 Jun 2020, Jacob Bachmeyer wrote:

> >> I ran a quick bisection and the culprit turned out to be:
> >>
> >> ba60272a5ac6f6a7012acca03f596a6ed003f044 is the first bad commit
> >> commit ba60272a5ac6f6a7012acca03f596a6ed003f044
> >> Author: Jacob Bachmeyer <jcb62281+dev@gmail.com>
> >> Date:   Mon May 25 08:40:46 2020 -0600
> >>
> >>      Establish a default C compiler by evaluating [find_gcc] if no 
> >> other compiler is given.
> >>
> >>  So this regression has to be fixed before any new release is made.
> >
> > I will look into this.  So far, I have confirmed that the problem does 
> > occur and that setting the "compiler" board_info key in 
> > baseboards/unix.exp seems to avoid it.  It looks like the default is 
> > not being selected in all cases where it should be used.  I still need 
> > to find the exact problem to write a regression test to isolate this 
> > bug and make it stay squashed.
> 
> After further efforts, and a few hours wasted trying to figure out why 
> additional tracing code added to default_target_compile was not 
> producing output, I eventually decided to just make 
> default_target_compile throw a Tcl error -- and I did not get a Tcl 
> error when running the tests...
> 
> That is "very interesting" and a quick grep -R reveals the culprit:  the 
> GDB testsuite is overriding default_target_compile in 
> gdb/testsuite/lib/future.exp.  Comments indicate that that file was 
> intended to temporarily bundle certain features with the GDB testsuite 
> that had not yet been merged into upstream DejaGnu -- in 2004.  Now 
> DejaGnu core is continuing to develop, leaving the old code copied into 
> the GDB testsuite broken, and making this NOTOURBUG.

 Well, as the name suggests (regrettably there's no adequate documentation 
there) this procedure is there to be overridden.  The way it's done in GDB 
might perhaps be non-standard, as the standard way AFAICS would be by 
providing a `gdb_compile' handler, but I think this is tangential, and the 
chosen solution is there possibly because DejaGnu had no `${tool}_compile' 
knob back then (I haven't checked).  That does not really matter though, 
as the net effect would be the same.

> In short, this is not a regression in DejaGnu; this is code duplicated 
> into the GDB testsuite that was slated for removal from that location 
> years ago and needs to be removed from the GDB testsuite, or at least 
> made conditional on running under a version of DejaGnu old enough to 
> require it, if such versions are still supported for running the GDB 
> testsuite.  If that code has added features not present in upstream 
> DejaGnu over the years, now is the time to get those patches in.

 Well, it clearly is a functional regression as the interface has changed, 
even if not a formal one, and I would consider it a release stopper.

 As it happens there are about 2 users of DejaGnu there, which means any 
fatal regression would have been easily caught in the course of change 
verification (and running binutils/GDB and GCC test suites natively is 
about as easy as it can be: `configure && make && make check'), and indeed 
should have, and then sorted with the respective communities if indeed the 
interface change is unavoidable, with a transition period so that the 
users can prepare changes to their frameworks, including backports to 
various release branches if applicable, before the old interface is 
removed from DejaGnu.  My suggestion would be to revert the change, get 
the details sorted with GDB people and only reapply it when all parties 
are ready. 

 Anyway, I have completed the verification I have volunteered to do and 
therefore I'm done with my part.  Please sort it between the communities.  
I have other stuff to do I have committed to.

  Maciej

  reply	other threads:[~2020-06-10 16:37 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-13 10:26 DejaGnu/GCC testsuite behavior regarding multiple 'dg-do' Thomas Schwinge
2020-05-13 16:51 ` dejagnu version update? Mike Stump
2020-05-13 17:43   ` Jonathan Wakely
2020-05-13 18:29     ` Rainer Orth
2020-05-13 23:43       ` Maciej W. Rozycki
2020-05-14 14:08         ` Rainer Orth
2020-05-14 15:12           ` Rob Savoye
2020-05-14 16:08             ` David Edelsohn
2020-05-14 16:45               ` Rob Savoye
2020-05-14 18:11                 ` Tom Tromey
2020-05-16  0:22                   ` Mike Stump
2020-05-16  0:47                     ` Rob Savoye
2020-05-15  1:50                 ` Jacob Bachmeyer
2020-05-14 23:34             ` Maciej W. Rozycki
2020-05-15  0:33               ` Rob Savoye
2020-05-16 23:45                 ` Maciej W. Rozycki
2020-05-17  3:30                   ` Siddhesh Poyarekar
2020-05-17  3:48                   ` Rob Savoye
2020-05-17  4:09                     ` Andrew Pinski
2020-05-17 19:43                     ` Maciej W. Rozycki
2020-05-17 19:55                       ` Rob Savoye
2020-05-27  0:55                         ` Rob Savoye
2020-05-27  1:20                           ` Maciej W. Rozycki
2020-05-27  1:55                             ` Rob Savoye
2020-06-09 20:12                               ` Maciej W. Rozycki
2020-06-10  2:33                                 ` Jacob Bachmeyer
2020-06-10  4:18                                   ` dejagnu version update? [CORRECTION: not a regression in DejaGnu; GDB testsuite bug] Jacob Bachmeyer
2020-06-10 16:37                                     ` Maciej W. Rozycki [this message]
2020-06-11  2:43                                       ` GDB testsuite overrides default_target_compile and breaks Jacob Bachmeyer
2020-06-12 16:28                               ` dejagnu version update? Christophe Lyon
2020-05-14 15:46           ` Maciej W. Rozycki
2020-05-14  6:44     ` Christophe Lyon
2020-05-14  8:45       ` Jonathan Wakely
2020-05-13 18:20   ` Rob Savoye

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LFD.2.21.2006101222570.9519@redsun52.ssa.fujisawa.hgst.com \
    --to=macro@wdc.com \
    --cc=brobecker@adacore.com \
    --cc=gcc@gcc.gnu.org \
    --cc=gdb@sourceware.org \
    --cc=jcb62281+dev@gmail.com \
    --cc=jcb62281@gmail.com \
    --cc=mikestump@comcast.net \
    --cc=ro@CeBiTec.Uni-Bielefeld.DE \
    --cc=rob@welcomehome.org \
    --cc=siddhesh@gotplt.org \
    --cc=thomas@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).