[clang] [SYCL] Basic diagnostics for the sycl_kernel_entry_point attribute. (PR #120327)

Tom Honermann via cfe-commits cfe-commits at lists.llvm.org
Fri Dec 27 19:32:29 PST 2024


================
@@ -15978,6 +15988,24 @@ Decl *Sema::ActOnFinishFunctionBody(Decl *dcl, Stmt *Body,
       CheckCoroutineWrapper(FD);
   }
 
+  // Diagnose invalid SYCL kernel entry point function declarations.
+  if (FD && !FD->isInvalidDecl() && !FD->isTemplated() &&
----------------
tahonermann wrote:

It turned out to be pretty straight forward to enable diagnostics for dependent contexts. No additional changes were needed to diagnose coroutines. For deleted and defaulted functions, I had to duplicate the checks here in `SemaSYCL::CheckSYCLEntryPointFunctionDecl()`; the checks here handle non-dependent cases and the checks in `SemaSYCL::CheckSYCLEntryPointFunctionDecl()` handle dependent cases.

https://github.com/llvm/llvm-project/pull/120327


More information about the cfe-commits mailing list