diff --git a/src/detail/face-impl.hpp b/src/detail/face-impl.hpp
index f6d7d91..c13906a 100644
--- a/src/detail/face-impl.hpp
+++ b/src/detail/face-impl.hpp
@@ -218,13 +218,12 @@
       unregistrator = static_cast<Registrator>(&Controller::start<FibRemoveNextHopCommand>);
     }
 
-    RegisteredPrefix::Unregistrator bindedUnregistrator =
-        std::bind(unregistrator, m_face.m_nfdController, unregisterParameters, _1, _2,
+    RegisteredPrefix::Unregistrator boundUnregistrator =
+        bind(unregistrator, m_face.m_nfdController.get(), unregisterParameters, _1, _2,
                   options);
-    // @todo get rid of "std::" after #2109
 
     shared_ptr<RegisteredPrefix> prefixToRegister =
-      make_shared<RegisteredPrefix>(prefix, filter, bindedUnregistrator);
+      make_shared<RegisteredPrefix>(prefix, filter, boundUnregistrator);
 
     ((*m_face.m_nfdController).*registrator)(registerParameters,
                                              bind(&Impl::afterPrefixRegistered, this,
@@ -267,7 +266,6 @@
             // it was a combined operation
             m_interestFilterTable.remove(filter);
           }
-
         (*i)->unregister(bind(&Impl::finalizeUnregisterPrefix, this, i, onSuccess),
                          bind(onFailure, _2));
       }
