extend_invoke: added volatile overloads to to_reference