aboutsummaryrefslogtreecommitdiff
path: root/lib/zig.h
diff options
context:
space:
mode:
authorMichael Dusan <michael.dusan@gmail.com>2023-09-24 02:57:03 -0400
committerAndrew Kelley <andrew@ziglang.org>2023-09-24 14:44:15 -0700
commit127198e58cb3dcf2d2287124cf15a23a7d3a9c02 (patch)
treecfbb741d5acdb26cdcf7184ba0a8e4391e761c69 /lib/zig.h
parentfb6fff2561b5a56917e5efee4c374130189ab8b0 (diff)
downloadzig-127198e58cb3dcf2d2287124cf15a23a7d3a9c02.tar.gz
zig-127198e58cb3dcf2d2287124cf15a23a7d3a9c02.zip
cbe: support more symbol attributes
implement codegen for: - decl weak linkage - decl aliases - fn decl weak linkage windows msvc: - `__declspec(selectany)` is not supported for functions - skip weak linkage for functions closes #17050
Diffstat (limited to 'lib/zig.h')
-rw-r--r--lib/zig.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/zig.h b/lib/zig.h
index fc8995b887..5ac70d2a24 100644
--- a/lib/zig.h
+++ b/lib/zig.h
@@ -190,10 +190,13 @@ typedef char bool;
#if zig_has_attribute(weak) || defined(zig_gnuc)
#define zig_weak_linkage __attribute__((weak))
+#define zig_weak_linkage_fn __attribute__((weak))
#elif _MSC_VER
#define zig_weak_linkage __declspec(selectany)
+#define zig_weak_linkage_fn
#else
#define zig_weak_linkage zig_weak_linkage_unavailable
+#define zig_weak_linkage_fn zig_weak_linkage_unavailable
#endif
#if zig_has_builtin(trap)