On 30/11/22 14:07, Jonathan Wakely wrote:
On Wed, 30 Nov 2022 at 11:57, Jonathan Wakely <jwak...@redhat.com> wrote:
On Wed, 30 Nov 2022 at 11:54, Jonathan Wakely <jwak...@redhat.com> wrote:
On Wed, 30 Nov 2022 at 06:04, François Dumont via Libstdc++
<libstd...@gcc.gnu.org> wrote:
Good catch, then we also need this patch.
Is it worth printing an error? If we can't show the backtrace because of an
error, we can just print nothing there.
No strong opinion on that but if we do not print anything the output
will be:
Backtrace:
Error: ...
I just considered that it did not cost much to report the issue to the
user that defined _GLIBCXX_DEBUG_BACKTRACE and so is expecting a backtrace.
Maybe printing "Backtrace:\n" could be done in the normal callback
leaving the user with the feeling that _GLIBCXX_DEBUG_BACKTRACE does not
work.
We also need to pass an error handler to the __glibcxx_backtrace_create_state
call in formatter.h.
Now that I look at this code again, why do we need the _M_backtrace_full
member? It's always set to the same thing, why can't we just call that function
directly?
Oh right, I remember now ... because otherwise the libstdc++.so library needs
the definition of __glibcxx_backtrace_full.
I'm testing the attached patch.
And I think we should use threaded=1 for the __glibcxx_backtrace_create_state
call.
So like the attached patch.