Add extra exceptions for arithmetic and types operations #1001
Add extra exceptions for arithmetic and types operations #1001jdumas merged 3 commits intolibigl:masterfrom
Conversation
…inux based OSes - it does not work on the other operating systems. Relevant documentation: https://linux.die.net/man/3/feenableexcept
|
The first problem comes somewhere from |
|
And yes, before merging this PR all the bugs detected with it should be fixed. If you decide to merge, of course. |
|
Hi. It's a good idea. But before this can be merged it needs to be rebased onto the |
|
@jdumas OK. I will have a look at these things. |
|
@jdumas just a quick question. Is libigl supposed to compile with CGAL on system without static boost (only dynamic)? OpenSUSE does not ship static boost and I can compile CGAL or libdgtal + cgal without problem but igl+CGAL even with set( Boost_USE_STATIC_LIBS OFF) does not compile - I have a cmake message saying that some boost components were not found. |
|
We do set the option |
|
@jdumas There is something strange in cmake files when |
|
Are you trying that with a clean CMake folder? I mean we are just deferring to CGAL when to comes to searching for Boost, so it's probably a CGAL issue. Note that when you have the libraries installed system-wide (both Boost and CGAL), the CMake detection is usually much easier. |
* This PR allows for extra exceptions in the debug mode (GCC/LLVM) on Linux based OSes - it does not work on the other operating systems. Relevant documentation: https://linux.die.net/man/3/feenableexcept
This PR allows for extra exceptions in the debug mode (Linux only).
So, without these few lines we have all the test passing:
But if we run the tests with the additional exceptions we get:
Sometimes, it is not that easy to find bugs related to arithmetic and type errors so it will take me a while to find them and fix. But as you can see there is something wrong. So, stay tuned.