Compile error on test/view from Intel compiler on macOS with optional.hpp
In nightly testing on macOS Monterey with Intel C++ Version 2021.4.0, we see the following compile error for the view test in opt + {seq,par} mode (but not debug):
env UPCXX_CODEMODE=opt UPCXX_THREADMODE=seq UPCXX_NETWORK=smp <redacted>/upcxx/bin/upcxx <redacted>/upcxx/test/view.cpp -D_REENTRANT -D_REENTRANT -D_REENTRANT -D_REENTRANT -o test-view-seq-opt-smp
<redacted>/upcxx/bld/upcxx.assert0.optlev3.dbgsym0.gasnet_seq.smp/include/upcxx/optional.hpp(231): error: function "upcxx::detail::optional_impl_::constexpr_storage_t<T>::~constexpr_storage_t() [with T=big_nontrivial]" (declared at line 198) cannot be referenced -- it is a deleted function
constexpr constexpr_optional_base() noexcept : init_(false), storage_(trivial_init) {};
^
detected during:
instantiation of "upcxx::detail::optional_impl_::constexpr_optional_base<T>::constexpr_optional_base() [with T=big_nontrivial]" at line 301
instantiation of "upcxx::detail::optional_impl_::optional<T>::optional() [with T=big_nontrivial]" at line 379 of "<redacted>/upcxx/test/view.cpp"
<redacted>/upcxx/bld/upcxx.assert0.optlev3.dbgsym0.gasnet_seq.smp/include/upcxx/optional.hpp(301): error: function "upcxx::detail::optional_impl_::constexpr_optional_base<T>::~constexpr_optional_base() [with T=big_nontrivial]" (declared at line 244) cannot be referenced -- it is a deleted function
constexpr optional() noexcept : OptionalBase<T>() {};
^
detected during instantiation of "upcxx::detail::optional_impl_::optional<T>::optional() [with T=big_nontrivial]" at line 379 of "<redacted>/upcxx/test/view.cpp"
<redacted>/upcxx/test/view.cpp(384): error: function "upcxx::detail::optional_impl_::optional<T>::~optional() [with T=big_nontrivial]" (declared at line 335 of "<redacted>/upcxx/bld/upcxx.assert0.optlev3.dbgsym0.gasnet_seq.smp/include/upcxx/optional.hpp") cannot be referenced -- it is a deleted function
delete spot;
^
compilation aborted for <redacted>/upcxx/test/view.cpp (code 2)
This began with the merge of this new header in pull request 443.
This platform combination (macOS + Intel C++) is NOT currently supported by UPC++. Furthermore the problem does not appear to manifest with either the same compiler version on Linux, nor the supported compilers for macOS. Therefore this issue is very low-priority.
Comments (4)
-
-
reporter - changed milestone to Deferred indefinitely
Unsupported platform and no urgency/plans to support it, remove from milestone.
-
reporter - changed status to wontfix
Until/unless a stakeholder expresses interest in the macOS/IntelC++ combination, we are not going to expend effort supporting it.
-
It looks like Intel's latest (and supposed final) release of the C++ "classic compiler" is does not like the C++ headers which come with Xcode 14. So, this is now a dead OS/compiler pair.
- Log in to comment
Additionally, even with the unsupported OS/compiler pair these are the only tests failing in this manner out of the entire test suite.