mirror of
https://github.com/Ed94/Odin.git
synced 2026-06-20 12:44:59 -07:00
@(init), @(fini) and @(export) procedures are classified as used.
For the purposes of `-vet-unused-procedures`, exported procedures and `@(init)` and `@(fini)` are now disregarded.
This commit is contained in:
+7
-2
@@ -728,12 +728,17 @@ gb_internal void check_scope_usage_internal(Checker *c, Scope *scope, u64 vet_fl
|
||||
bool is_unused = false;
|
||||
if (vet_unused && check_vet_unused(c, e, &ve_unused)) {
|
||||
is_unused = true;
|
||||
} else if (vet_unused_procedures &&
|
||||
e->kind == Entity_Procedure) {
|
||||
} else if (vet_unused_procedures && e->kind == Entity_Procedure) {
|
||||
if (e->flags&EntityFlag_Used) {
|
||||
is_unused = false;
|
||||
} else if (e->flags & EntityFlag_Require) {
|
||||
is_unused = false;
|
||||
} else if (e->flags & EntityFlag_Init) {
|
||||
is_unused = false;
|
||||
} else if (e->flags & EntityFlag_Fini) {
|
||||
is_unused = false;
|
||||
} else if (e->Procedure.is_export) {
|
||||
is_unused = false;
|
||||
} else if (e->pkg && e->pkg->kind == Package_Init && e->token.string == "main") {
|
||||
is_unused = false;
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user