[PATCH][_GLIBCXX_INLINE_VERSION] Fix std::span pretty printer

Jonathan Wakely jwakely@redhat.com
Thu May 26 14:49:39 GMT 2022


On Thu, 26 May 2022 at 10:40, François Dumont wrote:
>
> On 26/05/22 11:21, Jonathan Wakely wrote:
> > On Thu, 26 May 2022 at 00:38, Jonathan Wakely <jwakely@redhat.com> wrote:
> >> On Thu, 26 May 2022 at 00:34, Jonathan Wakely <jwakely@redhat.com> wrote:
> >>> On Wed, 25 May 2022 at 21:29, François Dumont via Libstdc++
> >>> <libstdc++@gcc.gnu.org> wrote:
> >>>> Hi
> >>>>
> >>>>       Here is a patch to fix std::span pretty printer in versioned
> >>>> namespace mode.
> >>>>
> >>>>       Note that there is still a problem with std::atomic after this patch.
> >>>>
> >>>> got: $13 = std::atomic<std::__8::shared_ptr<int>> (empty) = {get() = 0x0}
> >>>> FAIL: libstdc++-prettyprinters/cxx20.cc print spe
> >> Does this fix it?
> >>
> >> --- a/libstdc++-v3/python/libstdcxx/v6/printers.py
> >> +++ b/libstdc++-v3/python/libstdcxx/v6/printers.py
> >> @@ -1734,6 +1734,7 @@ class StdAtomicPrinter:
> >>                  impl = val['_M_impl']
> >>                  self.shptr_printer = SharedPointerPrinter(typename, impl)
> >>                  self.children = self._shptr_children
> >> +                self.typename = self.typename.replace(self.value_type.tag, typ)
> >>
> >>      def _shptr_children(self):
> >>          return SmartPtrIterator(self.shptr_printer.pointer)
> >>
> >>
> >> I'll test it with a versioned-namespace build tomorrow.
> > No, that didn't work, but the attached patch does. Pushed to trunk.
>
> Great, I just pushed mine too.

I have patches to fix the cxx11.cc printer test for
std::__v8::iostream_category() and std::__v8::atomic too.



More information about the Libstdc++ mailing list