boostorg / boostorg/interval

Emscripten compilation issue

Open
#44 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
31
Forks
48
PR merge metrics
No merged PRs in 30d

Description

Hello!
I might do something wrong, but I had to apply the following patch to the boost interval library (v1.82.0) in order to build it successfully using the emscripten toolchain (v3.1.51).
```
diff --git a/include/boost/numeric/interval/hw_rounding.hpp b/include/boost/numeric/interval/hw_rounding.hpp
index 46d452e..4211079 100644
--- a/include/boost/numeric/interval/hw_rounding.hpp
+++ b/include/boost/numeric/interval/hw_rounding.hpp
@@ -16,6 +16,7 @@
#include

#define BOOST_NUMERIC_INTERVAL_NO_HARDWARE
+#undef BOOST_NO_FENV_H

// define appropriate specialization of rounding_control for built-in types
#if defined(__x86_64__) && !defined(BOOST_NO_FENV_H)
```
This reverts to the c99 impl, which builds and works fine as far I can tell.
From what I gathered, the definition of `BOOST_NO_FENV_H` occurs in `include/boost/config/platform/wasm.hpp:23` and commenting it out also fixes the issue.
This is, however, very hacky and I was wondering if there way a cleaner way to achieve the same results.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.