From 9e153373ba2c6f6fd4f1cb8bfd6a4b3284584a2e Mon Sep 17 00:00:00 2001 From: Alexey Sachkov Date: Wed, 9 Jul 2025 09:50:14 +0200 Subject: [PATCH] Set C++17 when generating SYCL programs Intel's SYCL implementation requires C++17 and this is baked by the SYCL 2020 specification, see: - 3.9.1. Minimum version of C++ [1] - 3.3. Normative references [2] [1]: https://registry.khronos.org/SYCL/specs/sycl-2020/html/sycl-2020.html#sec:progmodel.minimumcppversion [2]: https://registry.khronos.org/SYCL/specs/sycl-2020/html/sycl-2020.html#sec:normativerefs Without this tweak, generated makefiles are not suitable for building SYCL programs with intel/llvm. Signed-off-by: Alexey Sachkov --- scripts/common.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/common.py b/scripts/common.py index 564adfc..08fcd3c 100644 --- a/scripts/common.py +++ b/scripts/common.py @@ -72,6 +72,8 @@ def get_pretty_std_name (std_id): ''' Enum doesn't allow to use '++' in names, so we need this function. ''' def get_full_pretty_std_name (self): + if self.value == StdID.SYCL: + return "c++17" if self.is_cxx(): return "c++11" return "c99"