[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #55547] libstdc++ assertion failure when built
From: |
Mike Miller |
Subject: |
[Octave-bug-tracker] [bug #55547] libstdc++ assertion failure when built with -D_GLIBCXX_ASSERTIONS=1 |
Date: |
Wed, 23 Jan 2019 13:28:10 -0500 (EST) |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 |
Follow-up Comment #5, bug #55547 (project octave):
I agree we can take our time doing this correctly and thoroughly on the
default branch.
I will make another build with this and do some tests. I believe I had
examples that worked with a complex NaN in either the base or exponent, but
maybe it was exponent only.
The relevant C++ functions are the 'std::pow' overrides that take mixed
complex/non-complex arguments, both 'std::pow(const T&, const
std::complex<T>&)' and 'std::pow(const std::complex<T>&, const T&)' call
'std::polar', which may trigger this assertion. Octave does not call
'std::polar' directly anywhere.
There _are_ other calls to 'std::pow' sprinkled throughout Octave's code base,
especially in some of the audio and graphics functions, but they are probably
much less likely to be passing a complex NaN argument.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?55547>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/