Closed ma8ma closed 8 months ago
clang 17を使ってビルドしコンパイラー警告を数えました 偽陽性(false positive)の疑いや改善が困難な診断もあるため修正するか判断しながら大きな修正や変更の合間に少しずつ取り組みたいと思います
条件
meson setup のコマンドライン引数
CC=clang-17 CXX=clang++-17 meson setup weverythingclang17-unity -Dwarning_level=everything -Dpangolayout=enabled -Dalsa=enabled -Dcpp_args="-isystem /usr/include/glib-2.0 -isystem /usr/include/gtk-3.0 -isystem /usr/include/glibmm-2.4 -isystem /usr/include/giomm-2.4 -isystem /usr/include/gtkmm-3.0 -isystem /usr/include/pangomm-1.4 -isystem /usr/include/sigc++-2.0 -isystem /usr/include/gtest -D_DEBUG -Wno-c++98-compat -Wno-c++98-compat-pedantic" -Dunity=on -Dunity_size=1000
</details
対象のコミット
-Weverything (clang++ 17) | Count |
---|---|
-Wc++20-compat | 100 |
-Wcast-function-type-strict | 2 |
-Wconditional-uninitialized | 2 |
-Wcovered-switch-default | 2 |
-Wdisabled-macro-expansion | 2 |
-Wdocumentation-html | 1 |
-Wdocumentation-unknown-command | 15 |
-Wdocumentation | 1 |
-Wexit-time-destructors | 78 |
-Wextra-semi-stmt | 39 |
-Wextra-semi | 55 |
-Wglobal-constructors | 614 |
-Wheader-hygiene | 222 |
-Wimplicit-int-conversion | 30 |
-Wimplicit-int-float-conversion | 2 |
-Winconsistent-missing-destructor-override | 359 |
-Wmissing-prototypes | 24 |
-Wmissing-variable-declarations | 234 |
-Wold-style-cast | 249 |
-Wpadded | 740 |
-Wreserved-macro-identifier | 950 |
-Wshadow | 2 |
-Wshorten-64-to-32 | 202 |
-Wsign-conversion | 516 |
-Wsuggest-destructor-override | 65 |
-Wunsafe-buffer-usage | 1110 |
-Wweak-vtables | 142 |
https://github.com/orgs/JDimproved/projects/6/views/1?pane=issue&itemId=44330735 で状態を更新したいと思います
静的でないグローバル変数に変数宣言がないとコンパイラーに指摘されたため静的変数に変更してコンパイラー警告を修正します。
clang-17のレポート (file pathを一部省略)