octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Improving BISTs that are known to fail with LLVM libc++


From: Mike Miller
Subject: Improving BISTs that are known to fail with LLVM libc++
Date: Sat, 14 Apr 2018 02:02:28 -0700
User-agent: Mutt/1.9.4 (2018-02-28)

Hi,

There are several BISTs in the Octave test suite that we know pass with
GNU libstdc++, and we also know they fail with LLVM libc++ due to known
defects or differences in the library.

I think we need a better way of making these tests conditional on the
use of the GNU libstdc++ library. The current runtime condition is
simply not sufficient.

Should we add a new interpreter function called 'is_gnu_libstdcxx'? Or
maybe define a new compile-time symbol that can be understood by
'__have_feature__'?

The condition on these tests should be either

  %!testif HAVE_GNU_LIBSTDCXX
  %!testif ; is_gnu_libstdcxx ()

instead of

  %!testif ; ! ismac ()

As written now, I can build Octave with the LLVM clang compiler and
libc++ library on a GNU/Linux system, all free software, and end up with
what look like 12 unexpected test failures and 5 regressions. Not good.

The tests in question are in dlmread.cc, mappers.cc, str2double.cc,
asech.m, importdata.m, and io.tst.

I don't think these problem tests should be tagged and commented as
being problems with the macOS operating system, they are more accurately
problems with the LLVM libc++ implementation, which can be used on any
operating system.

Maybe even better would be to fix these bugs in libc++, or work around
them in liboctave somehow.

-- 
mike

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]