Fix GCC return-type on exhaustive enum switches #4
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "initial-development"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
CI on the Ubuntu runner (GCC 13) failed configuring
guitar_prometheus_core because the three switch-returns in
ArticulationCoding.cpp don't have a fallthrough. Apple Clang
trusts exhaustive enum-class switches and stays silent;
GCC's -Werror=return-type doesn't and rejects the unit.
Add a trailing
return {}after each switch. The-Wswitch-enum guard still fires if a new Articulation
enumerator is added without a matching case, so the
exhaustiveness check is preserved.
CI on the Ubuntu runner (GCC 13) failed configuring guitar_prometheus_core because the three switch-returns in ArticulationCoding.cpp don't have a fallthrough. Apple Clang trusts exhaustive enum-class switches and stays silent; GCC's -Werror=return-type doesn't and rejects the unit. Add a trailing `return {}` after each switch. The -Wswitch-enum guard still fires if a new Articulation enumerator is added without a matching case, so the exhaustiveness check is preserved.