src: Removing unnecessary use of cref() in concert with make_shared
This commit also replaces all usages of shared_ptr<T>(new T) with
make_shared<T> in Face class implementation.
Change-Id: I44971c44eb7f2c25ecfe00e185309973c9cbd246
Refs: #1592
diff --git a/src/util/regex/regex-top-matcher.cpp b/src/util/regex/regex-top-matcher.cpp
index dd2ac03..e2317c7 100644
--- a/src/util/regex/regex-top-matcher.cpp
+++ b/src/util/regex/regex-top-matcher.cpp
@@ -48,14 +48,16 @@
if ('^' != expr[0]) {
m_secondaryMatcher = make_shared<RegexPatternListMatcher>(
"<.*>*" + expr,
- cref(m_secondaryBackrefManager));
+ m_secondaryBackrefManager);
}
else {
expr = expr.substr(1, expr.size() - 1);
}
- m_primaryMatcher = make_shared<RegexPatternListMatcher>(func_lib::cref(expr),
- func_lib::cref(m_primaryBackrefManager));
+ // On OSX 10.9, boost, and C++03 the following doesn't work without ndn::
+ // because the argument-dependent lookup prefers STL to boost
+ m_primaryMatcher = ndn::make_shared<RegexPatternListMatcher>(expr,
+ m_primaryBackrefManager);
}
bool
@@ -199,8 +201,9 @@
if (hasAnchor)
regexStr.append("$");
- // OSX 10.9 has problems with just cref
- return make_shared<RegexTopMatcher>(func_lib::cref(regexStr));
+ // On OSX 10.9, boost, and C++03 the following doesn't work without ndn::
+ // because the argument-dependent lookup prefers STL to boost
+ return ndn::make_shared<RegexTopMatcher>(regexStr);
}
std::string
diff --git a/src/util/scheduler.cpp b/src/util/scheduler.cpp
index 4e74d10..21106e0 100644
--- a/src/util/scheduler.cpp
+++ b/src/util/scheduler.cpp
@@ -102,7 +102,10 @@
const Event& event)
{
EventQueue::iterator i = m_events.insert(EventInfo(after, period, event));
- i->m_eventId = make_shared<EventIdImpl>(func_lib::cref(i));
+
+ // On OSX 10.9, boost, and C++03 the following doesn't work without ndn::
+ // because the argument-dependent lookup prefers STL to boost
+ i->m_eventId = ndn::make_shared<EventIdImpl>(i);
if (!m_isEventExecuting)
{