Re: Providing more precise "excess errors" message in DejaGnu

Christophe Lyon via Gcc <[email protected]> Fri, 29 Aug 2025 15:48:00 +0200
Newsgroups gmane.comp.gcc.devel,gmane.comp.sysutils.dejagnu.general
Message-ID <CAPS5kha0B5_y=hFM-GyNLaEDEhoCdwcbcLkP8b6qLuFJpSX7pA@mail.gmail.com>
--000000000000e7f02c063d81456c
Content-Type: text/plain; charset="UTF-8"

On Fri, 29 Aug 2025 at 11:35, Richard Earnshaw via Gcc <[email protected]> wrote:
>
> On 29/08/2025 04:08, Jacob Bachmeyer wrote:
> > On 8/28/25 10:10, Jeff Law wrote:
> >> On 8/28/25 8:09 AM, Richard Earnshaw (lists) wrote:
> >>> On 28/08/2025 15:01, Iain Sandoe wrote:
> >>>> [...]
> >>>
> >>> Well really, the compare-tests script should report duplicate results
> >>> as a problem as well, since
> >>>
> >>> PASS: abcd
> >>> ...
> >>> PASS: abcd
> >>>
> >>> is just a dup pass/fail waiting to happen.
> >> Yup.  A duplicate testname should be reported.  These cause major
> >> headaches if one passes, but the other fails -- it looks like a
> >> regression to the comparison scripting we have.
> >
> > The problem with detecting duplicate names in the DejaGnu framework is
> > that it would add memory overhead that scales with the number of tests
> > and DejaGnu tries to avoid that kind of unbounded space requirement.
> > (OK, it *is* bounded for any finite testsuite, but the idea of a
> > steadily growing memory footprint during a test run still bothers me.)
> >
> > I suggest that the comparison script GCC uses is probably the best place
> > to check for duplicate test names, since that seems to also be the
> > script that can be confused by them.
> >
>
> That's exactly what I was suggesting.  Trying to do it in dejagnu would
> be a nightmare given that we run multiple instances of it to get
> parallel testing.
>

Which script do people use these days?  Here is a quick patch for
compare_tests, which actually detected duplicates ;-)

I can commit that, if it helps.

Thanks,

Christophe

> R.
>
> >
> > -- Jacob
> >
> >
>

--000000000000e7f02c063d81456c
Content-Type: text/x-patch; charset="US-ASCII"; name="compare_tests.patch"
Content-Disposition: attachment; filename="compare_tests.patch"
Content-Transfer-Encoding: base64
Content-ID: <f_meww0n710>
X-Attachment-Id: f_meww0n710

ZGlmZiAtLWdpdCBhL2NvbnRyaWIvY29tcGFyZV90ZXN0cyBiL2NvbnRyaWIvY29tcGFyZV90ZXN0
cwppbmRleCBlMDlmYzRmMTEzYS4uOThmZmUzZmNkYTMgMTAwNzU1Ci0tLSBhL2NvbnRyaWIvY29t
cGFyZV90ZXN0cworKysgYi9jb250cmliL2NvbXBhcmVfdGVzdHMKQEAgLTQxLDYgKzQxLDggQEAg
dG1wMT0kVE1QRElSLyR0b29sLXRlc3RpbmcuJCRhCiB0bXAyPSRUTVBESVIvJHRvb2wtdGVzdGlu
Zy4kJGIKIG5vd19zPSRUTVBESVIvJHRvb2wtdGVzdGluZy4kJGQKIGJlZm9yZV9zPSRUTVBESVIv
JHRvb2wtdGVzdGluZy4kJGUKK25vd191PSRUTVBESVIvJHRvb2wtdW5pcS4kJGQKK2JlZm9yZV91
PSRUTVBESVIvJHRvb2wtdW5pcS4kJGUKIGxzdDE9JFRNUERJUi8kdG9vbC1sc3QxLiQkCiBsc3Qy
PSRUTVBESVIvJHRvb2wtbHN0Mi4kJAogbHN0Mz0kVE1QRElSLyR0b29sLWxzdDMuJCQKQEAgLTQ4
LDcgKzUwLDcgQEAgbHN0ND0kVE1QRElSLyR0b29sLWxzdDQuJCQKIGxzdDU9JFRNUERJUi8kdG9v
bC1sc3Q1LiQkCiBzdW0xPSRUTVBESVIvJHRvb2wtc3VtMS4kJAogc3VtMj0kVE1QRElSLyR0b29s
LXN1bTIuJCQKLXRtcHM9IiR0bXAxICR0bXAyICRub3dfcyAkYmVmb3JlX3MgJGxzdDEgJGxzdDIg
JGxzdDMgJGxzdDQgJGxzdDUgJHN1bTEgJHN1bTIiCit0bXBzPSIkdG1wMSAkdG1wMiAkbm93X3Mg
JGJlZm9yZV9zICRub3dfdSAkYmVmb3JlX3UgJGxzdDEgJGxzdDIgJGxzdDMgJGxzdDQgJGxzdDUg
JHN1bTEgJHN1bTIiCiAKIFsgIiQxIiA9ICItc3RyaWN0IiBdICYmIHN0cmljdD0kMSAmJiBzaGlm
dAogWyAiJDEiID0gIi0/IiBdICYmIHVzYWdlCkBAIC0xMjQsNiArMTI2LDIyIEBAIGZpCiBzb3J0
IC10ICc6JyAkc2tpcDEgIiRub3ciID4gIiRub3dfcyIKIHNvcnQgLXQgJzonICRza2lwMSAiJGJl
Zm9yZSIgPiAiJGJlZm9yZV9zIgogCit1bmlxIC1jICIkYmVmb3JlX3MiIHwgZ3JlcCAtdiAnXiAg
ICAgIDEgJyA+ICIkYmVmb3JlX3UiCitpZiBbIC1mICIkYmVmb3JlX3UiIF07IHRoZW4KKyAgICBl
Y2hvICJOb24tdW5pcXVlIHRlc3QgbmFtZXMgYmVmb3JlOiIKKyAgICBjYXQgIiRiZWZvcmVfdSIK
KyAgICBlY2hvCisgICAgZXhpdF9zdGF0dXM9MQorZmkKKwordW5pcSAtYyAiJG5vd19zIiB8IGdy
ZXAgLXYgJ14gICAgICAxICcgPiAiJG5vd191IgoraWYgWyAtZiAiJG5vd191IiBdOyB0aGVuCisg
ICAgZWNobyAiTm9uLXVuaXF1ZSB0ZXN0IG5hbWVzIG5vdzoiCisgICAgY2F0ICIkbm93X3UiCisg
ICAgZWNobworICAgIGV4aXRfc3RhdHVzPTEKK2ZpCisKIGdyZXAgJ15GQUlMOicgIiRub3dfcyIg
fCBzZWQgJ3MvXlteOl0qOlsgCV0vLycgPiR0bXAxCiBncmVwICdeUEFTUycgIiRiZWZvcmVfcyIg
fCBzZWQgJ3MvXlteOl0qOlsgCV0vLycgfCBjb21tIC0xMiAkdG1wMSAtID4kdG1wMgogCg==
--000000000000e7f02c063d81456c--