diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-02-07 13:30:59 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-02-07 13:30:59 -0500 |
| commit | 9acf06d28ac77a52028697dc01f42fd96c230ca9 (patch) | |
| tree | 6c90921e6437293e84f137adce8364550f43ebb4 /src/arch/wasm/CodeGen.zig | |
| parent | 3db130ff3d8175adce610f7805a149810cf7989d (diff) | |
| parent | db9500a31401c65327a4fd556f50d74ce75fb858 (diff) | |
| download | zig-9acf06d28ac77a52028697dc01f42fd96c230ca9.tar.gz zig-9acf06d28ac77a52028697dc01f42fd96c230ca9.zip | |
Merge pull request #10803 from ziglang/decl-has-lib-name
stage2: store externs lib name as part of decl
Diffstat (limited to 'src/arch/wasm/CodeGen.zig')
| -rw-r--r-- | src/arch/wasm/CodeGen.zig | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/arch/wasm/CodeGen.zig b/src/arch/wasm/CodeGen.zig index 67aa9a6c88..8e0ffac76b 100644 --- a/src/arch/wasm/CodeGen.zig +++ b/src/arch/wasm/CodeGen.zig @@ -952,7 +952,7 @@ pub const DeclGen = struct { _ = func_payload; return self.fail("TODO wasm backend genDecl function pointer", .{}); } else if (decl.val.castTag(.extern_fn)) |extern_fn| { - const ext_decl = extern_fn.data; + const ext_decl = extern_fn.data.owner_decl; var func_type = try genFunctype(self.gpa, ext_decl.ty, self.target()); func_type.deinit(self.gpa); ext_decl.fn_link.wasm.type_index = try self.bin_file.putOrGetFuncType(func_type); @@ -978,7 +978,7 @@ pub const DeclGen = struct { switch (ty.zigTypeTag()) { .Fn => { const fn_decl = switch (val.tag()) { - .extern_fn => val.castTag(.extern_fn).?.data, + .extern_fn => val.castTag(.extern_fn).?.data.owner_decl, .function => val.castTag(.function).?.data.owner_decl, else => unreachable, }; @@ -1776,7 +1776,7 @@ fn airCall(self: *Self, inst: Air.Inst.Index) InnerError!WValue { if (func_val.castTag(.function)) |func| { break :blk func.data.owner_decl; } else if (func_val.castTag(.extern_fn)) |ext_fn| { - break :blk ext_fn.data; + break :blk ext_fn.data.owner_decl; } else if (func_val.castTag(.decl_ref)) |decl_ref| { break :blk decl_ref.data; } |
