Force functions passed as templates to be functors
There are some special functions/methods that take as an argument a function-like object and then call that function with some arguments. There are some instances where a templated function was passed given the appropriate template. Even though there is a specific function, this gets passed as a function pointer and calling a function pointer on some devices is a no-no.
Replace these function arguments with lambdas, which are constructed as unnamed functor objects.