aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/c.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2022-02-07 13:30:59 -0500
committerGitHub <noreply@github.com>2022-02-07 13:30:59 -0500
commit9acf06d28ac77a52028697dc01f42fd96c230ca9 (patch)
tree6c90921e6437293e84f137adce8364550f43ebb4 /src/codegen/c.zig
parent3db130ff3d8175adce610f7805a149810cf7989d (diff)
parentdb9500a31401c65327a4fd556f50d74ce75fb858 (diff)
downloadzig-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/codegen/c.zig')
-rw-r--r--src/codegen/c.zig8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/codegen/c.zig b/src/codegen/c.zig
index 299581cd48..44b904f031 100644
--- a/src/codegen/c.zig
+++ b/src/codegen/c.zig
@@ -542,8 +542,8 @@ pub const DeclGen = struct {
try dg.renderDeclName(func.owner_decl, writer);
},
.extern_fn => {
- const decl = val.castTag(.extern_fn).?.data;
- try dg.renderDeclName(decl, writer);
+ const extern_fn = val.castTag(.extern_fn).?.data;
+ try dg.renderDeclName(extern_fn.owner_decl, writer);
},
.int_u64, .one => {
try writer.writeAll("((");
@@ -681,7 +681,7 @@ pub const DeclGen = struct {
return dg.renderDeclValue(writer, ty, val, decl);
},
.extern_fn => {
- const decl = val.castTag(.extern_fn).?.data;
+ const decl = val.castTag(.extern_fn).?.data.owner_decl;
return dg.renderDeclValue(writer, ty, val, decl);
},
else => unreachable,
@@ -2442,7 +2442,7 @@ fn airCall(f: *Function, inst: Air.Inst.Index) !CValue {
const fn_decl = fn_decl: {
const callee_val = f.air.value(pl_op.operand) orelse break :known;
break :fn_decl switch (callee_val.tag()) {
- .extern_fn => callee_val.castTag(.extern_fn).?.data,
+ .extern_fn => callee_val.castTag(.extern_fn).?.data.owner_decl,
.function => callee_val.castTag(.function).?.data.owner_decl,
.decl_ref => callee_val.castTag(.decl_ref).?.data,
else => break :known,