On 12/11/19 12:52 PM, Michael Davidsaver wrote:
On 12/11/19 10:26 AM, Johnson, Andrew N. via Core-talk wrote:
I think we're going to have to revert the commit 2e89a60c2dd405f from Base
So there is no other way for Ralph to find out about this failure.
I'm not scolding Ralph, just saying that IMHO these changes aren't going to work since they assume C++11.
since it modifies source files that get compiled with older C++ compilers on our supported platforms. The two previous commits were in the posix/epicsMath.h file which doesn't get compiled on those targets so arguably may use features that the general C++ sources can't.
Seems like a difference between libc++ implementations since similarly old RTEMS builds succeed.
Still, the fix will be the same. Copious #ifdef
The reason we have OS-specific versions of epicsMath.h is precisely to avoid having to have copious workarounds and #ifdefs elsewhere — the ugly code should only have to appear in libCom. The epicsMath.h headers were originally created to declare epicsNAN
and epicsINF, and to make finite(), isinf() and isnan() usable by any code that includes it.
- Andrew
--
Complexity comes for free, Simplicity you have to work for.
|