diff options
| author | LemonBoy <thatlemon@gmail.com> | 2020-04-07 10:23:51 +0200 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2020-04-07 14:48:37 -0400 |
| commit | cc0fca9d83f5a62cf0e109dde3a323c01ea71301 (patch) | |
| tree | 66ca390bafe42ef592d3ea7969e54e84851c5f9b /src/analyze.cpp | |
| parent | adaf7ad672e4933c42543a239ad91b58abba6942 (diff) | |
| download | zig-cc0fca9d83f5a62cf0e109dde3a323c01ea71301.tar.gz zig-cc0fca9d83f5a62cf0e109dde3a323c01ea71301.zip | |
stage1: Respect the specified name for extern var
Extend the logic used for function definitions to variables.
Closes #4947
Diffstat (limited to 'src/analyze.cpp')
| -rw-r--r-- | src/analyze.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/analyze.cpp b/src/analyze.cpp index 14b9c25c07..c3580e35ea 100644 --- a/src/analyze.cpp +++ b/src/analyze.cpp @@ -3498,7 +3498,7 @@ static void resolve_decl_fn(CodeGen *g, TldFn *tld_fn) { } } else { fn_table_entry->inferred_async_node = inferred_async_none; - g->external_prototypes.put_unique(tld_fn->base.name, &tld_fn->base); + g->external_symbol_names.put_unique(tld_fn->base.name, &tld_fn->base); } Scope *child_scope = fn_table_entry->fndef_scope ? &fn_table_entry->fndef_scope->base : tld_fn->base.parent_scope; @@ -4048,6 +4048,10 @@ static void resolve_decl_var(CodeGen *g, TldVar *tld_var, bool allow_lazy) { add_var_export(g, tld_var->var, tld_var->var->name, GlobalLinkageIdStrong); } + if (is_extern) { + g->external_symbol_names.put_unique(tld_var->base.name, &tld_var->base); + } + g->global_vars.append(tld_var); } |
