Skip to content

Commit

Permalink
aligned CMake and Makefile compiler warnings
Browse files Browse the repository at this point in the history
  • Loading branch information
firewave committed Sep 29, 2023
1 parent da847bc commit 6d75912
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 14 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ ifeq (clang++, $(findstring clang++,$(CXX)))
CPPCHK_GLIBCXX_DEBUG=
endif
ifndef CXXFLAGS
CXXFLAGS=-pedantic -Wall -Wextra -Wcast-qual -Wno-deprecated-declarations -Wfloat-equal -Wmissing-declarations -Wmissing-format-attribute -Wno-long-long -Wpacked -Wredundant-decls -Wundef -Wno-shadow -Wno-missing-field-initializers -Wno-missing-braces -Wno-sign-compare -Wno-multichar $(CPPCHK_GLIBCXX_DEBUG) -g
CXXFLAGS=-pedantic -Wall -Wextra -Wcast-qual -Wfloat-equal -Wmissing-declarations -Wmissing-format-attribute -Wno-long-long -Wpacked -Wredundant-decls -Wundef -Wno-shadow -Wno-missing-field-initializers -Wno-missing-braces -Wno-sign-compare -Wno-multichar -Woverloaded-virtual $(CPPCHK_GLIBCXX_DEBUG) -g
endif

ifeq (g++, $(findstring g++,$(CXX)))
Expand Down
9 changes: 8 additions & 1 deletion cmake/compileroptions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -43,13 +43,20 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang
add_compile_options(-Wno-missing-braces)
add_compile_options(-Wno-sign-compare)
add_compile_options(-Wno-multichar)
add_compile_options(-Woverloaded-virtual) # when a function declaration hides virtual functions from a base class

# TODO: evaluate
#add_compile_options(-Wconversion) # danmar: gives fp. for instance: unsigned int sizeof_pointer = sizeof(void *);
#add_compile_options(-Wlogical-op) # doesn't work on older GCC
#add_compile_options(-Wsign-conversion) # too many warnings
#add_compile_options(-Wunreachable-code) # some GCC versions report lots of warnings
#add_compile_options(-Wsign-promo)
endif()

if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
# use pipes instead of temporary files - greatly reduces I/O usage
add_compile_options(-pipe)

add_compile_options(-Woverloaded-virtual) # when a function declaration hides virtual functions from a base class
add_compile_options(-Wno-maybe-uninitialized) # there are some false positives
add_compile_options(-Wsuggest-attribute=noreturn)
add_compile_options(-Wno-shadow) # whenever a local variable or type declaration shadows another one
Expand Down
14 changes: 2 additions & 12 deletions tools/dmake.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -591,34 +591,24 @@ int main(int argc, char **argv)
if (release) {
makeConditionalVariable(fout, "CXXFLAGS", "-std=c++0x -O2 -DNDEBUG -Wall -Wno-sign-compare -Wno-multichar");
} else {
// TODO: add more compiler warnings.
// -Wlogical-op : doesn't work on older GCC
// -Wsign-conversion : too many warnings
// -Wunreachable-code : some GCC versions report lots of warnings
makeConditionalVariable(fout, "CXXFLAGS",
"-pedantic "
"-Wall "
"-Wextra "
"-Wcast-qual "
// "-Wconversion " // danmar: gives fp. for instance: unsigned int sizeof_pointer = sizeof(void *);
"-Wno-deprecated-declarations "
"-Wfloat-equal "
// "-Wlogical-op "
"-Wmissing-declarations "
"-Wmissing-format-attribute "
"-Wno-long-long "
// "-Woverloaded-virtual " // danmar: we get fp when overloading analyseWholeProgram()
"-Wpacked "
"-Wredundant-decls "
"-Wundef "
"-Wno-shadow "
// "-Wsign-conversion "
// "-Wsign-promo "
"-Wno-missing-field-initializers "
"-Wno-missing-braces "
// "-Wunreachable-code "
"-Wno-sign-compare " // danmar: I don't like this warning, it's very rarely a bug
"-Wno-sign-compare "
"-Wno-multichar "
"-Woverloaded-virtual "
"$(CPPCHK_GLIBCXX_DEBUG) "
"-g");
}
Expand Down

0 comments on commit 6d75912

Please sign in to comment.