================ @@ -12408,6 +12408,29 @@ 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 kernel entry point diagnostics +def err_sycl_entry_point_invalid : Error< + "'sycl_kernel_entry_point' attribute cannot be applied to a" + " %select{non-static member|variadic|deleted|defaulted|constexpr|consteval|" + "noreturn|coroutine}0 function">; +def err_sycl_entry_point_invalid_redeclaration : Error< + "'sycl_kernel_entry_point' kernel name argument does not match prior" + " declaration%diff{: $ vs $|}0,1">; +def err_sycl_kernel_name_conflict : Error< + "'sycl_kernel_entry_point' kernel name argument conflicts with a previous" + " declaration">; +def warn_sycl_kernel_name_not_a_class_type : Warning< + "%0 is not a valid SYCL kernel name type; a class type is required">, ---------------- tahonermann wrote:
I mentioned in another response that the SYCL 2020 specification is lacking in specificity. My intent is to be conservative for now and relax kernel name type constraints later once the SYCL specification is clarified. I'll make the following change for now (we do state "non-union" else where, but I don't see existing examples of "non-union class type"). ```suggestion "%0 is not a valid SYCL kernel name type; a non-union class type is required">, ``` https://github.com/llvm/llvm-project/pull/120327 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits