mirror of
https://github.com/vlang/v.git
synced 2025-09-13 22:42:26 +03:00
fix
This commit is contained in:
parent
10ecbd15ec
commit
797de9bee1
3 changed files with 11 additions and 11 deletions
|
@ -39,9 +39,9 @@ pub mut:
|
||||||
comptime_calls map[string]bool // resolved name to call on comptime
|
comptime_calls map[string]bool // resolved name to call on comptime
|
||||||
comptime_syms map[Type]bool // resolved syms (generic)
|
comptime_syms map[Type]bool // resolved syms (generic)
|
||||||
//
|
//
|
||||||
uses_attr_noreturn bool // @[noreturn]
|
used_attr_noreturn bool // @[noreturn]
|
||||||
uses_attr_hidden bool // @[hidden]
|
used_attr_hidden bool // @[hidden]
|
||||||
uses_attr_weak bool // @[weak]
|
used_attr_weak bool // @[weak]
|
||||||
}
|
}
|
||||||
|
|
||||||
@[unsafe]
|
@[unsafe]
|
||||||
|
|
|
@ -991,13 +991,13 @@ pub fn (mut g Gen) init() {
|
||||||
} else {
|
} else {
|
||||||
g.cheaders.writeln(c_headers)
|
g.cheaders.writeln(c_headers)
|
||||||
}
|
}
|
||||||
if !g.pref.skip_unused || g.table.used_features.uses_attr_weak {
|
if !g.pref.skip_unused || g.table.used_features.used_attr_weak {
|
||||||
g.cheaders.writeln(c_common_weak_attr)
|
g.cheaders.writeln(c_common_weak_attr)
|
||||||
}
|
}
|
||||||
if !g.pref.skip_unused || g.table.used_features.uses_attr_hidden {
|
if !g.pref.skip_unused || g.table.used_features.used_attr_hidden {
|
||||||
g.cheaders.writeln(c_common_hidden_attr)
|
g.cheaders.writeln(c_common_hidden_attr)
|
||||||
}
|
}
|
||||||
if !g.pref.skip_unused || g.table.used_features.uses_attr_noreturn {
|
if !g.pref.skip_unused || g.table.used_features.used_attr_noreturn {
|
||||||
g.cheaders.writeln(c_common_noreturn_attr)
|
g.cheaders.writeln(c_common_noreturn_attr)
|
||||||
g.cheaders.writeln(c_common_unreachable_attr)
|
g.cheaders.writeln(c_common_unreachable_attr)
|
||||||
}
|
}
|
||||||
|
|
|
@ -142,9 +142,9 @@ pub fn (mut w Walker) mark_global_as_used(ckey string) {
|
||||||
}
|
}
|
||||||
w.used_globals[ckey] = true
|
w.used_globals[ckey] = true
|
||||||
gfield := w.all_globals[ckey] or { return }
|
gfield := w.all_globals[ckey] or { return }
|
||||||
w.table.used_features.uses_attr_weak = w.table.used_features.uses_attr_weak || gfield.is_weak
|
w.table.used_features.used_attr_weak = w.table.used_features.used_attr_weak || gfield.is_weak
|
||||||
w.table.used_features.uses_attr_hidden = w.table.used_features.uses_attr_hidden
|
w.table.used_features.used_attr_hidden = w.table.used_features.used_attr_hidden
|
||||||
|| gfield.is_hidden
|
|| gfield.is_hidden || gfield.is_hidden
|
||||||
w.expr(gfield.expr)
|
w.expr(gfield.expr)
|
||||||
if !gfield.has_expr {
|
if !gfield.has_expr {
|
||||||
w.mark_by_type(gfield.typ)
|
w.mark_by_type(gfield.typ)
|
||||||
|
@ -895,8 +895,8 @@ pub fn (mut w Walker) fn_decl(mut node ast.FnDecl) {
|
||||||
w.is_builtin_mod = last_is_builtin_mod
|
w.is_builtin_mod = last_is_builtin_mod
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
w.table.used_features.uses_attr_weak = w.table.used_features.uses_attr_weak || node.is_weak
|
w.table.used_features.used_attr_weak = w.table.used_features.used_attr_weak || node.is_weak
|
||||||
w.table.used_features.uses_attr_noreturn = w.table.used_features.uses_attr_noreturn
|
w.table.used_features.used_attr_noreturn = w.table.used_features.used_attr_noreturn
|
||||||
|| node.is_noreturn
|
|| node.is_noreturn
|
||||||
if node.language == .c {
|
if node.language == .c {
|
||||||
w.mark_fn_as_used(node.fkey())
|
w.mark_fn_as_used(node.fkey())
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue