mainly unused parameter and unused function some parameters are indeed used in a debug built, I used the (void)(param) trick warnings reported by clang 4