[committed] libstdc++: Fix aligned formatting of stacktrace_entry and thread::id [PR112564]
Jonathan Wakely
jwakely.gcc@gmail.com
Mon Nov 20 11:55:22 GMT 2023
On Mon, 20 Nov 2023 at 02:13, Hans-Peter Nilsson <hp@axis.com> wrote:
>
> > From: Jonathan Wakely <jwakely@redhat.com>
> > Date: Thu, 16 Nov 2023 17:20:09 +0000
>
> > PR libstdc++/112564
> > * include/std/stacktrace (formatter::format): Format according
> > to format-spec.
> > * include/std/thread (formatter::format): Use _Align_right as
> > default.
> > * testsuite/19_diagnostics/stacktrace/output.cc: Check
> > fill-and-align handling. Change compile test to run.
> > * testsuite/30_threads/thread/id/output.cc: Check fill-and-align
> > handling.
>
> You already know this, so JFTR: this introduced a regression
> for some targets, logged as PR112630.
>
> Was this change deliberate:
>
> > --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc
> > +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc
> > @@ -1,4 +1,5 @@
> > -// { dg-do compile { target c++23 } }
> > +// { dg-options "-lstdc++exp" }
> > +// { dg-do run { target c++23 } }
> > // { dg-require-effective-target stacktrace }
> > // { dg-add-options no_pch }
>
> i.e. changing from dg-compile to dg-run?
Yes, it was always supposed to be a run test, the old dg-do was a typo
that I only noticed when fixing the formatting bug (PR 112564).
> I'm guessing so. Though the changelog entry and post isn't
> explicit, the use of VERIFY is rather clear and most tests
> in 19_diagnostics/stacktrace are dg-run.
The changelog entry does say "Change compile test to run."
>
> If so, can the "dg-run-ness" of the test please move to a
> separate test and let 19_diagnostics/stacktrace/output.cc be
> just dg-compile? This particular test may not warrant the
> consideration, but more so a pattern to follow for other
> tests.
I don't see any point in doing that here, being able to compile code
doing I/O on stacktraces but not run it isn't useful. It needs to be a
run test.
We do it elsewhere if it's meaningful, e.g. several
testsuite/std/format/* tests, and the ones I just added in
r14-5562-g568eb2d25c8f79 are all 'compile' only.
>
> brgds, H-P
> PS. Sorry, I have no idea why regarding the underlying multi-target problem
I have some vague speculation in PR 112541.
More information about the Libstdc++
mailing list