Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Use MSVC-supported explicit atomics in TDD occurrence fixtures

Abierto
#2,012 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
c
Área
testing

Línea de trabajo

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.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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.

Lenguaje dominante
C
Estrellas
18
Forks
2
Merge medio
9 h 28 min
PR fusionados (30 d)
169

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de semantic-reasoning/wirelog

Todos los issues de semantic-reasoning/wirelog

Issues similares

Más issues de C

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.