comments: drop retired lint markers, re-cite migrated carriers

peel-ok/sizelint-ok/primsize-ok annotations lose their tools; sites
keep the WHY in plain words. Citations of retired carriers move to
their fixture or @test successors (949_errtype_compare -> r949_*,
900_stdlib -> library owners).
This commit is contained in:
2026-08-07 23:03:55 +09:00
parent 228a632a2f
commit 90dc6369c9
12 changed files with 61 additions and 81 deletions

View File

@@ -105,7 +105,7 @@ resolve_typename(Checker *c, Node *n)
* handing its type out; no consumer may ever see the size-0
* placeholder. Mirrors wwstage's demand-driven tinfofornode, the
* measured order-independent side. */
/* peel-ok: under==NULL probes resolve state, not a dealias */
/* A missing underlying type is the unresolved-state marker. */
if (s->type && s->type->kind == TY_NAMED && s->type->under == NULL
&& s->decl && s->decl->kind == N_TYPEDECL)
resolve_typedecl(c, s->decl);
@@ -785,7 +785,7 @@ resolve_type(Checker *c, Node *n)
|| eu->kind == TY_TAGGED))
sz += (eu->size + 7) & ~(u64)7;
else if (eu == NULL || eu->kind != TY_VOID)
sz += 8; /* sizelint-ok: the slot IS the 8B eightbyte */
sz += 8; /* Each scalar occupies one SysV eightbyte. */
}
if (head == NULL) head = tp;
else tail->next = tp;
@@ -1073,8 +1073,8 @@ unify_arith(Checker *c, Pos p, Type *a, Type *b)
* a plain i32 — type_eq ignores iserror (primitives compare by
* kind), but harec interns flags into DISTINCT types, so flagged-
* vs-unflagged never reaches type_promote's dealias-equal arm. The
* #246 loud (strconv.invalid != i32, pinned by 949_errtype_compare
* on BOTH stages) rides this reject. */
* #246 loud (strconv.invalid != i32, pinned by the r949_errtype_*
* fixtures on BOTH stages) rides this reject. */
{
Type *da = type_chase_named(a);
Type *db = type_chase_named(b);
@@ -2371,7 +2371,7 @@ cexpr(Checker *c, Node *n)
|| eu->kind == TY_TAGGED))
sz += (eu->size + 7) & ~(u64)7;
else if (eu == NULL || eu->kind != TY_VOID)
sz += 8; /* sizelint-ok: the slot IS the 8B eightbyte */
sz += 8; /* Each scalar occupies one SysV eightbyte. */
if (head == NULL) head = tp;
else tail->next = tp;
tail = tp;
@@ -2860,7 +2860,7 @@ static void
resolve_typedecl(Checker *c, Node *d)
{
Type *t = d->type;
/* peel-ok: under!=NULL probes resolve state, not a dealias */
/* A present underlying type is the resolved-state marker. */
if (t == NULL || t->under != NULL || t->resolving) return;
t->resolving = 1;
const char *save = c->cur_mod;
@@ -2875,7 +2875,7 @@ resolve_typedecl(Checker *c, Node *d)
if (circular_named(c, under, d->pos))
under = ty_err;
t->resolving = 0;
t->under = under; /* peel-ok: construction */
t->under = under;
if (under) {
t->size = under->size;
t->align = under->align;