[clang] [SYCL] The sycl_kernel_entry_point attribute. (PR #111389)

Tom Honermann via cfe-commits cfe-commits at lists.llvm.org
Sat Oct 12 21:49:55 PDT 2024


================
@@ -14296,6 +14296,31 @@ void ASTContext::getFunctionFeatureMap(llvm::StringMap<bool> &FeatureMap,
   }
 }
 
+static SYCLKernelInfo BuildSYCLKernelInfo(ASTContext &Context,
+                                          CanQualType KernelNameType,
+                                          const FunctionDecl *FD) {
+  return { KernelNameType, FD };
+}
+
+void ASTContext::registerSYCLEntryPointFunction(FunctionDecl *FD) {
+  assert(!FD->isInvalidDecl());
+  assert(!FD->isDependentContext());
----------------
tahonermann wrote:

No. At least, I don't think so. The intent is to reject any declaration that is somehow templated. A static member function of a class template (as opposed to its instantiated declaration in an instantiated specialization) shouldn't be registered.

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


More information about the cfe-commits mailing list