You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am using Clang 6.0.1 on FreeBSD. This compiler, or rather the STL it uses by default, lacks support for std::optional. The compiler warning correctly suggests I use boost::optional instead.
triSYCL can achieve greater compiler/runtime portability if it uses std::optional when available but falls back on boost::optional when not.
The relatively easy fix would need to be applied to TRISYCL_PROPERTY_CREATE in include/CL/sycl/property_list.hpp. I would paste it here except that I have not figured out how to copy and paste from my FreeBSD VM into my host environment 🤦♂️
The text was updated successfully, but these errors were encountered:
According to https://clang.llvm.org/cxx_status.html Clang 6 supports C++17 so I agree it is probably an STL problem.
While I am compassionate about supporting old environments, triSYCL is also a research prototype to investigate modern/future features and provide feedback to Khronos and ISO C++.
The internal branch we have about Xilinx ACAP devices is even more modern. At some point we will open-source it and it won't compile with Clang 6 anyway...
But the fact you are using a FreeBSD VM means to me you are more a virtual user than a real user. ;-)
What about fixing the STL of FreeBSD? That seems like a great contribution. :-)
Good news: Intel has an implementation relying on C++11 only features I think. So you have an open-source alternative that should run on your system: https://github.com/intel/llvm/blob/sycl/sycl/doc/GetStartedWithSYCLCompiler.md
@keryell I agree with all of this. I just thought it was something easy to fix. While Clang 6 is older, I am using the latest version of FreeBSD (12.0).
I am using Clang 6.0.1 on FreeBSD. This compiler, or rather the STL it uses by default, lacks support for
std::optional
. The compiler warning correctly suggests I useboost::optional
instead.triSYCL can achieve greater compiler/runtime portability if it uses
std::optional
when available but falls back onboost::optional
when not.The relatively easy fix would need to be applied to
TRISYCL_PROPERTY_CREATE
ininclude/CL/sycl/property_list.hpp
. I would paste it here except that I have not figured out how to copy and paste from my FreeBSD VM into my host environment 🤦♂️The text was updated successfully, but these errors were encountered: