Functors now work with void return type