[clang] Fix Lambda Mangling in Namespace-Scope Variable Initializers. (PR #159115)

Tom Honermann via cfe-commits cfe-commits at lists.llvm.org
Wed Sep 17 11:23:46 PDT 2025


================
@@ -101,7 +101,7 @@ int main() {
   // CHECK: define internal void @_Z22not_kernel_single_taskIZ4mainE7kernel2PFPKcvEEvT0_
   // CHECK: declare noundef ptr @_Z4funcI4DerpEDTu33__builtin_sycl_unique_stable_nameDtsrT_3strEEEv
   // CHECK: define internal void @_Z18kernel_single_taskIZ4mainEUlPZ4mainEUlvE_E_S2_EvT0_
-  // CHECK: define internal void @_Z18kernel_single_taskIZ4mainEUlvE0_S0_EvT0_
+  // CHECK: define internal void @_Z26unnamed_kernel_single_taskIZ4mainEUlvE_EvT_
----------------
tahonermann wrote:

It looks like the check for `unnamed_kernel_single_task()` was previously missing, so this is a fine addition. However, it doesn't replace the deleted one. There are two calls to `kernel_single_task()`, one from `main()` and the other from `unnamed_kernel_single_task()`. The name of the second one did change slightly though.
```suggestion
  // CHECK: define internal void @_Z26unnamed_kernel_single_taskIZ4mainEUlvE_EvT_
  // CHECK: define internal void @_Z18kernel_single_taskIZ4mainEUlvE_S0_EvT0_
```

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


More information about the cfe-commits mailing list