Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Use MSVC-supported explicit atomics in TDD occurrence fixtures

Aperta
#2,012 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
c
Ambito
testing

Direzione di ricerca

Start with tests/test_tdd_occurrence_execution.c and inspect the 16 implicit atomic_load/atomic_store calls, then compare the explicit forms provided by wirelog/columnar/mem_ledger.h. Preserve the existing values, ordering intent, and fixture assertions; run the tdd_occurrence_execution target normally and under ASan/UBSan with leak detection. The issue also requires compatibility checks, independent review, and native MSVC build/link/test success on the submitted head.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

p1-high

Scope

Use the repository's MSVC-supported explicit atomic APIs for the 16 implicit atomic_load/atomic_store accesses in tests/test_tdd_occurrence_execution.c on the private #1984 implementation stack. Preserve budget values, ordering intent, source/descriptor-reader checks, fixture sequencing, refusal/fault/retry assertions and all generated CSPA body tests. Keep the repair separate from PR #2010's consolidation fixture and from production atomic-shim changes.

Discovery context

The native PR #2010 Windows/MSVC job failed with C4013/LNK2001 for implicit atomic_store in a different test. Investigating that observed failure found that wirelog/columnar/mem_ledger.h provides only the explicit load/store forms under _MSC_VER.

Read-only inspection of the private TDD head a0b3bc0626545febd576b2259a83b6a7fb06e9f5 (tree 8596f0d64a8442441ee8ee07eb3bc83464e261d9) found 16 analogous implicit accesses in the occurrence execution fixture: governor limits and source/descriptor access states. Its Linux normal and ASan/UBSan tests pass, but that does not establish native MSVC compatibility. This is a predicted portability gap; no native Windows failure has yet been observed for this private head. Architect and Critic discussed the shared cause and agreed to track this branch-local repair separately under #1984.

Acceptance criteria

  • Replace all 16 unsupported convenience calls with supported explicit forms, preserving access values and ordering intent; no weakening or bypass of reader exclusion, governor accounting, error, ownership or retry checks.
  • A complete-TU compatibility negative control exposes the original implicit calls, and the corresponding repaired-source check passes. Clearly label host simulations; do not pretend defining _MSC_VER under GCC reproduces Windows ABI behavior.
  • The existing tdd_occurrence_execution target passes normally and under ASan/UBSan with leak detection, including generated valueAlias/valueFlow recursive bodies, both seed families and memoryAlias K1 controls.
  • Verify the diff is confined to this test and production/build/profile inputs are unchanged before reusing prior size evidence.
  • Obtain independent exact-tree review/design/risk approval and an atomic private commit. Reconcile the eventual public stack to actual main and require native MSVC build/link/test success plus all required checks on its submitted head.

Existing #1989 performance/publication prerequisites remain. This does not provide SCC scheduling, coherent publication, signed/retraction correctness, full CSPA dispatch or #1982 replacement qualification, and does not alter other agents' #1963–#1965 work.

Lingua principale
C
Stelle
18
Fork
2
Merge medio
11h 33m
PR unite (30g)
296

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di semantic-reasoning/wirelog

Tutte le issue di semantic-reasoning/wirelog

Issue simili

Altre issue su C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.