See [here.](https://www.intel.com/content/www/us/en/developer/articles/technical/use-predefined-macros-for-specific-code-for-intel-dpcpp-compiler-intel-cpp-compiler-intel-cpp-compiler-classic.html) The clang based compiler defines `__INTEL_LLVM_COMPILER` instead of `__INTEL_COMPILER`. `SYCL_LANGUAGE_VERSION` is present if SYCL is supported.