This is another patch from my tool colobot-lint.
This adds a new check misc-old-style-function, which checks for instances of functions written in legacy C style.
As before, I hope I did everything according to LLVM style, including testcases and documentation.
If time allows, I will post another patch to extend this check with FixIt hints to localize variable declarations.
I think, this class could be replaced with an AST matcher (functionDecl(forEachDescendant(stmt( ... )))) that you could run using the clang::ast_matchers::match() function. Where the ... part would contain the matcher-based implementation of the isInteresting method.
The result would be a more local and clear code that expresses the constraints on the AST nodes you're interested in.