11. Debugging and Troubleshooting
Build failures
confirm feature flags in CMake configure output
verify optional dependencies are either present or disabled
reconfigure from clean build directory when toggling major options
Python import/runtime issues
ensure
PYTHONPATH=<build-dir>/bindings/pythonfor local extension testsverify native module
_dtlwas rebuilt for current Python versioncheck mismatch between wrapper assumptions and native signatures
C ABI runtime issues
validate handle magic/validity checks first
inspect backend availability decision branches
verify destroy paths for partial-initialization failures
Fortran interop issues
confirm
bind(c)signatures match C ABI prototypes exactlycheck
c_ptrand scalar type compatibilityreproduce with
fortran_basic_testbefore broader debugging
Documentation issues
Doxygen param warnings usually indicate signature/comment drift
missing toctree entries hide docs pages from site navigation
run docs build locally before opening PR
Escalation path for hard regressions
isolate minimal reproducer
identify last known good commit
classify by layer (core, C ABI, Python, Fortran, docs)
add regression test before final fix