Workaround Clang -Wnontrivial-memcall
, clean up some unnecessary GCC -Wclass-memaccess
pragmas
#404
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The CMake config silences
-Wclass-memaccess
globally, but some of the warnings have been resolved recently with 100ace8 for Emscripten. Clang is also getting similar warnings in its latest versions, sadly they picked a different name than GCC (-Wnontrivial-memcall
), so thediagnostic ignore
pragmas need to exclude all Clang-derived compilers, not just Emscripten.Since you had started working around the warnings with
(void *)
casts I applied the same approach where I could, but please review thoroughly as I didn't check whether this was fully equivalent to previous code / what the intention is.Also added a quick GCC warning fix for
-Wunused-local-typedefs
.Tested compiling on Fedora 42 with CMake 3.31.6 on both
Release
andDebug
builds, with:Didn't test the library itself for potential behavior change.