Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #11.
Currently,
setjmp
andlongjmp
don't play whell with Rust as mentioned by several sources. The specific problem here was that the lambdas that we used to wrap fallible qhull functions were probably interacting with the exception handling on MSVC (I did not investigate further).This fix avoids using lambdas at the cost of having separate functions for "trying" qhull functions depending on the number of arguments.
I did not investigate further what exactly happens when qhull calls
longjmp
and the usage ofsetjmp
is technically still invalid but seems to fix the issue for now.