Noizu – GCC/Clang warnings formatter

Noizu is GCC/Clang warnings formatter which lets you exclude specific paths or filenames to suppress their warnings from stderr compiler output. This can be handy for filtering warnings in code bases wich rely a lot on implementation defined behavior (e.g. DSP or SIMD libraries) or simply to separate own warnings from external ones.

Here is an example of an embedded C/C++ project which contains the CMSIS library. Running the unfiltered error log through Noizu returned a huge list of warnings.

-Wsign-conversion                                                 2403
-Wconversion                                                      324
-Wpedantic                                                        16
-Wunused                                                          7
-Wunused-parameter                                                6
-Wsign-compare                                                    4
-Wstrict-aliasing                                                 3
-Wattributes                                                      2
-Wshadow                                                          1
-Wunused-variable                                                 1

2700+ lines of references...

Whereas filtering external libraries by path only showed a couple.

-Wunused                                                          2
-Wunused-parameter                                                1
-Wsign-compare                                                    1
-Wstrict-aliasing                                                 1
-Wshadow                                                          1
-Wunused-variable                                                 1

-Wunused
src/actual_warnings.cpp:7:11
src/actual_warnings.cpp:5:26

-Wunused-parameter
src/actual_warnings.cpp:5:26

-Wsign-compare
src/actual_warnings.cpp:11:9

-Wstrict-aliasing
src/actual_warnings.cpp:16:5

-Wshadow
src/actual_warnings.cpp:20:9

-Wunused-variable
src/actual_warnings.cpp:7:11