[clang] [clang][SYCL] Add sycl_external attribute and restrict emitting device code (PR #140282)
via cfe-commits
cfe-commits at lists.llvm.org
Wed Aug 13 13:55:24 PDT 2025
================
@@ -12910,6 +12910,18 @@ def err_sycl_special_type_num_init_method : Error<
"types with 'sycl_special_class' attribute must have one and only one '__init' "
"method defined">;
+// SYCL external attribute diagnostics
+def err_sycl_attribute_invalid_linkage : Error<
+ "'clang::sycl_external' can only be applied to functions with external"
+ " linkage">;
+def err_sycl_attribute_invalid_main : Error<
+ "'clang::sycl_external' cannot be applied to the 'main' function">;
+def err_sycl_attribute_invalid_deleted_function : Error<
+ "'clang::sycl_external' cannot be applied to an explicitly deleted function">;
+def warn_attribute_missing_on_first_decl : Warning<
+ "%0 attribute does not appear on the first declaration">,
+ InGroup<IgnoredAttributes>;
----------------
schittir wrote:
Added a "nonportable-sycl" diagnostic group. https://github.com/llvm/llvm-project/pull/140282/commits/a88cf0e4af22815153e6f51dc51d8d9d31212d07
https://github.com/llvm/llvm-project/pull/140282
More information about the cfe-commits
mailing list