tbaederr wrote: For ```c++ void f() { [[clang::annotate("B", (void)1, (void)2, 7)]] int j = 0; } ```
The IR is: ```llvm @.str = private unnamed_addr constant [2 x i8] c"B\00", section "llvm.metadata" @.str.1 = private unnamed_addr constant [10 x i8] c"array.cpp\00", section "llvm.metadata" @.args = private unnamed_addr constant { i8, i8, i32 } { i8 undef, i8 undef, i32 7 }, section "llvm.metadata ; Function Attrs: mustprogress noinline nounwind optnone uwtable define dso_local void @_Z1fv() #0 { entry: %j = alloca i32, align 4 call void @llvm.var.annotation.p0.p0(ptr %j, ptr @.str, ptr @.str.1, i32 187, ptr @.args) store i32 0, ptr %j, align 4 ret void } ``` So the void arguments get translated to `undef`. Is that acceptable? https://github.com/llvm/llvm-project/pull/105789 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits