// #target: macos-x64 module testing; fn void main() { char[*] data = $embed("embed_basic.c3"); char* data2 = $embed("embed_basic.c3"); char[] data3 = $embed("embed_basic.c3"); char* data4 = $embed("fiek") ?? null; char*! data5 = $embed("fiek"); } /* #expect: testing.ll @.bytes = private unnamed_addr constant [233 x i8] c"module testing;\0A\0Afn void main()\0A{\0A\09char[*] data = $embed(\22embed_basic.c3\22);\0A\09char* data2 = $embed(\22embed_basic.c3\22);\0A\09char[] data3 = $embed(\22embed_basic.c3\22);\0A\09char* data4 = $embed(\22fiek\22) ?? null;\0A\09char*! data5 = $embed(\22fiek\22);\0A}\0A\0A", align 1 @.bytes.1 = private unnamed_addr constant [233 x i8] c"module testing;\0A\0Afn void main()\0A{\0A\09char[*] data = $embed(\22embed_basic.c3\22);\0A\09char* data2 = $embed(\22embed_basic.c3\22);\0A\09char[] data3 = $embed(\22embed_basic.c3\22);\0A\09char* data4 = $embed(\22fiek\22) ?? null;\0A\09char*! data5 = $embed(\22fiek\22);\0A}\0A\0A", align 1 @.bytes.2 = private unnamed_addr constant [233 x i8] c"module testing;\0A\0Afn void main()\0A{\0A\09char[*] data = $embed(\22embed_basic.c3\22);\0A\09char* data2 = $embed(\22embed_basic.c3\22);\0A\09char[] data3 = $embed(\22embed_basic.c3\22);\0A\09char* data4 = $embed(\22fiek\22) ?? null;\0A\09char*! data5 = $embed(\22fiek\22);\0A}\0A\0A", align 1 define void @testing.main() #0 { entry: %data = alloca %data2 = alloca ptr, align 8 %data3 = alloca %"char[]", align 8 %data4 = alloca ptr, align 8 %data5 = alloca ptr, align 8 %data5.f = alloca i64, align 8 call void @llvm.memcpy.p0.p0.i32(ptr align 16 %data, ptr align 1 @.bytes store ptr @.bytes.1, ptr %data2, align 8 store %"char[]" { ptr @.bytes.2 store ptr null, ptr %data4, align 8 store i64 ptrtoint (ptr @"std.io.IoError$FILE_NOT_FOUND" to i64), ptr %data5.f, align 8 ret void }