On Wed, 18 Feb 2026 at 21:00, Jakub Jelinek <[email protected]> wrote:
>
> On Wed, Feb 18, 2026 at 08:51:03PM +0000, Jonathan Wakely wrote:
> > This adds an additional test step which runs abi.exp tests with
> > GLIBCXX_TESTSUITE_STDS=modules in the environment, to trigger the code
> > in lib/libstdc++.exp that compiles the std.cc and std.compat.cc modules.
> > If there are errors in those files, it will fail.
> >
> > The abi.exp testsuite is quick, so using that has low overhead, but this
> > is really only intended as a stopgap until we do real modules testing in
> > the testsuite.
> >
> > libstdc++-v3/ChangeLog:
> >
> > * testsuite/Makefile.am (check-am): Run abi.exp tests with
> > GLIBCXX_TESTSUITE_STDS=modules in the environment.
> > * testsuite/Makefile.in: Regenerate.
>
> Shouldn't that be excluded in case RUNTESTFLAGS variable contains any word
> ending with .exp ?
> I mean for quick testing of a single testcase with
> make check RUNTESTFLAGS=conformance.exp=something/that.cc
> every additional overhead counts (and there is already some).
> Unless check-abi quickly skips it in that case already.
check-abi is simply:
check-abi: site.exp baseline_symbols
-@runtest $(AM_RUNTESTFLAGS) --tool libstdc++ $(RUNTESTFLAGS) abi.exp
So yes, with e.g. RUNTESTFLAGS=conformance.exp it means that the "just
run abi.exp" step will actually run both abi.exp and conformance.exp,
which would run the whole testsuite twice.
So we could do this instead:
check-am:
GLIBCXX_TESTSUITE_STDS=modules runtest --tool libstdc++ abi.exp
$(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU
This would run *only* abi.exp and wouldn't use RUNTESTFLAGS.