Skip to content

Fix #120, remove unused last action type alias - #121

Open
sylvesterkaczmarek wants to merge 1 commit into
nasa:devfrom
sylvesterkaczmarek:fix-120-unused-last-action-alias
Open

sylvesterkaczmarek wants to merge 1 commit into
nasa:devfrom
sylvesterkaczmarek:fix-120-unused-last-action-alias

Conversation

@sylvesterkaczmarek

Copy link
Copy Markdown

Checklist

  • Reviewed the MM and top-level cFS contributing guides.
  • Contributor License Agreement completion has not been verified for this submission.

Contribution

Fixes #120.

Remove the unused MM_LastAction_Enum_t alias from default_mm_extern_typedefs.h. Repository-wide exact-name searches found it only at its declaration before the change and no references afterward.

Keep all fourteen MM_LastAction_* constants and their assigned values. The housekeeping payload already declares LastAction as uint8, so no telemetry field type or layout changes. Memory access, command dispatch, and the other external typedefs remain unchanged.

Compatibility

No runtime behavior, command/telemetry layout, or function signature changes. Downstream source that independently uses the removed alias must use its underlying uint8 type instead; downstream repositories were not audited.

Testing performed

Built the MM application module and all nine MM unit-test executables against unchanged dev, then rebuilt and reran them with the patch. All nine passed on both revisions. All six FM unit-test executables in the same review mission also passed on both revisions: 15/15 total.

cmake -S cfe -B build-rotationi -DMISSIONCONFIG=rotationi \
  -DSIMULATION=native -DENABLE_UNIT_TESTS=ON
cmake --build build-rotationi --parallel 4
cmake --build build-rotationi/native/default --parallel 4 --target mm \
  coverage-mm-mm_mem32-testrunner coverage-mm-mm_app-testrunner \
  coverage-mm-mm_dump-testrunner coverage-mm-mm_mem16-testrunner \
  coverage-mm-mm_utils-testrunner coverage-mm-mm_mem8-testrunner \
  coverage-mm-mm_load-testrunner coverage-mm-mm_cmds-testrunner \
  coverage-mm-mm_dispatch-testrunner
ctest --test-dir build-rotationi/native/default --output-on-failure \
  --no-tests=error -R '^coverage-mm-'

git diff --check passed. Source comparison confirms that all fourteen last-action enumerator assignments are unchanged. This declaration-only change adds no new executable behavior, so existing compiled tests provide the regression coverage.

MM baseline: 0a767de5bbb6da05d7b5705e75221495aca444f9.

System tested

Debian 12 ARM64 in Docker on an Apple Silicon Mac; GCC 12.2.0 and CMake 3.31.6. The isolated review mission enables FM and MM with unit tests and the standard non-EDS interfaces. FM uses its default no-compression adapter. Build configuration and generated outputs are outside this PR.

  • cFE: 5dd74afa85e5ed5e8c1ed4129281d21611f8d699
  • OSAL: 5befd8e9f6c62b44bb7ff4c15db8629c0e00efa0
  • PSP: 36c24cb953b047ab5525240579aeb06adf5ac11f

The complete cFS runtime, flight hardware, EDS configuration, alternate compression adapters, and table-file generation were not exercised. The original MISRA analysis tool was not run; this is not a claim of full MISRA compliance. No third-party code, dependencies, or workflows are changed.

Contributor

Sylvester Kaczmarek, Personal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MM Unused type declarations

2 participants