We can also silence -Wunused-perameter by omitting the parameter name in the prototype. No clutter, I'm personally fairly happy with this solution. (Note: the declaration in the header can sill name the parameter, it won't bring the warning back.)
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2510.pdf
(although some C compilers already allowed it in non-pedantic mode)