Skip to content

Replace raw 0x10 with JOBJ_HIDDEN in HSD_JObj flag calls#2675

Merged
ribbanya merged 1 commit into
doldecomp:masterfrom
ribbanya:pr/jobj-hidden-src
Jun 13, 2026
Merged

Replace raw 0x10 with JOBJ_HIDDEN in HSD_JObj flag calls#2675
ribbanya merged 1 commit into
doldecomp:masterfrom
ribbanya:pr/jobj-hidden-src

Conversation

@ribbanya

@ribbanya ribbanya commented Jun 13, 2026

Copy link
Copy Markdown
Collaborator

Split from #2670.

Syntax-aware sweep of HSD_JObj{Set,Clear}Flags[All] call sites replacing raw hidden-flag literals (0x10 / 0x10U / 16 / 16U) in the flag argument with the named JOBJ_HIDDEN: 505 sites across 73 files. Composite masks and other flag values are untouched.

All 1046 compiled objects verified byte-identical before and after the change (per-object sha1); main.dol sha1 unchanged.

Syntax-aware sweep of HSD_JObj{Set,Clear}Flags[All] call sites replacing
raw hidden-flag literals (0x10 / 0x10U / 16 / 16U) in the flag argument
with the named JOBJ_HIDDEN: 505 sites across 73 files. Composite masks
and other flag values are untouched.

All 1046 compiled objects verified byte-identical before and after the
change (per-object sha1); main.dol sha1 unchanged.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@ribbanya ribbanya enabled auto-merge (squash) June 13, 2026 17:47
@ribbanya ribbanya merged commit 7a5bc12 into doldecomp:master Jun 13, 2026
8 checks passed
@ribbanya ribbanya deleted the pr/jobj-hidden-src branch June 13, 2026 17:50
itsgrimetime added a commit to itsgrimetime/melee that referenced this pull request Jun 14, 2026
--fix rewrites source in place to resolve jobj-flags findings locally
(--fix --dry-run previews a unified diff): the raw hidden-flag literal is
replaced with JOBJ_HIDDEN. The swap is exact — verified to reproduce the
doldecomp#2675 sweep content byte-for-byte across all 73 files (modulo
clang-format line wrapping).

assert-macros stays detection-only: converting it is judgement-laden
(negate the if-guard, match it against the assert text, and not every
site is byte-identical), so it is reported, not auto-fixed. After a --fix
run such findings are listed as 'left for manual review'.

Fixes change only tokens, not layout; run clang-format afterward.
tools/check/tests covers the jobj fixer.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
ribbanya pushed a commit that referenced this pull request Jun 15, 2026
--fix rewrites source in place to resolve jobj-flags findings locally
(--fix --dry-run previews a unified diff): the raw hidden-flag literal is
replaced with JOBJ_HIDDEN. The swap is exact — verified to reproduce the
#2675 sweep content byte-for-byte across all 73 files (modulo
clang-format line wrapping).

assert-macros stays detection-only: converting it is judgement-laden
(negate the if-guard, match it against the assert text, and not every
site is byte-identical), so it is reported, not auto-fixed. After a --fix
run such findings are listed as 'left for manual review'.

Fixes change only tokens, not layout; run clang-format afterward.
tools/check/tests covers the jobj fixer.

Co-authored-by: itsgrimetime <990274+itsgrimetime@users.noreply.github.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants