|
FhSim
3.1.0
Marine systems simulation
|
| ID | 0019 |
| Class | ARCHITECTURE |
| Severity | 1 |
| Status | blocked |
| Models | — |
| Found | 2026-09-15 audit (e3f3107) |
| Decision needed | Is NetSolidityMeshSpec meant to be built? Ideally checked with a Windows build. |
The doubled Test/NetSolidityMesh.cpp / Test/NetSolidityMesh.h entries in src/net/CMakeLists.txt are removed (CMake de-duplicated them, so nothing changes in the build). What remains is the question the duplicate may have been hiding.
src/net/Test/NetSolidityMeshSpec.cpp and .h exist, and src/net/Test/NetSolidityMesh.h:6 includes the header and takes a const NetSolidityMeshSpec* in its constructor (:13). Neither file is in TEST_STRUCTURE_SRC or TEST_STRUCTURE_H (src/net/CMakeLists.txt:9-35). The doubled entry looked like a paste that was meant to add them.
Test/NetSolidityMeshSpec.cpp and .h to the two lists, if the spec is meant to be built.NetSolidityMesh is itself unmaintained (see 0005).is NetSolidityMeshSpec supposed to be built? The whole block is Windows-only, so this cannot be checked from a Linux build.
A Windows build of the library.
Option (a) adds a translation unit to a Windows-only build that nothing in CI covers, so it could break that build in a way this repository cannot detect.
Partially solved. Commit 49918bf in fhsim_marine_elements removed the doubled Test/NetSolidityMesh.cpp and .h entries from src/net/CMakeLists.txt; CMake de-duplicated them, so the build is unchanged. The item text above was rewritten to the remaining question: Test/NetSolidityMeshSpec.{cpp,h} exists, is included by NetSolidityMesh.h:6, and is in no source list. Adding it would add a translation unit to a Windows-only block that no CI covers, so a Linux checkout cannot tell whether that build would still link. Smallest owner decision: whether NetSolidityMeshSpec is meant to be built, ideally checked with a Windows build.