work around to fix build failure with clang 3.4
This commit is contained in:
@@ -810,7 +810,11 @@ Property *PropertyExpressionEngine::CopyOnImportExternal(
|
||||
{
|
||||
std::unique_ptr<PropertyExpressionEngine> engine;
|
||||
for(auto it=expressions.begin();it!=expressions.end();++it) {
|
||||
#ifdef BOOST_NO_CXX11_SMART_PTR
|
||||
boost::shared_ptr<Expression> expr(it->second.expression->importSubNames(nameMap).release());
|
||||
#else
|
||||
boost::shared_ptr<Expression> expr(it->second.expression->importSubNames(nameMap));
|
||||
#endif
|
||||
if(!expr && !engine)
|
||||
continue;
|
||||
if(!engine) {
|
||||
@@ -834,7 +838,11 @@ Property *PropertyExpressionEngine::CopyOnLabelChange(App::DocumentObject *obj,
|
||||
{
|
||||
std::unique_ptr<PropertyExpressionEngine> engine;
|
||||
for(auto it=expressions.begin();it!=expressions.end();++it) {
|
||||
#ifdef BOOST_NO_CXX11_SMART_PTR
|
||||
boost::shared_ptr<Expression> expr(it->second.expression->updateLabelReference(obj,ref,newLabel).release());
|
||||
#else
|
||||
boost::shared_ptr<Expression> expr(it->second.expression->updateLabelReference(obj,ref,newLabel));
|
||||
#endif
|
||||
if(!expr && !engine)
|
||||
continue;
|
||||
if(!engine) {
|
||||
@@ -858,8 +866,13 @@ Property *PropertyExpressionEngine::CopyOnLinkReplace(const App::DocumentObject
|
||||
{
|
||||
std::unique_ptr<PropertyExpressionEngine> engine;
|
||||
for(auto it=expressions.begin();it!=expressions.end();++it) {
|
||||
#ifdef BOOST_NO_CXX11_SMART_PTR
|
||||
boost::shared_ptr<Expression> expr(
|
||||
it->second.expression->replaceObject(parent,oldObj,newObj).release());
|
||||
#else
|
||||
boost::shared_ptr<Expression> expr(
|
||||
it->second.expression->replaceObject(parent,oldObj,newObj));
|
||||
#endif
|
||||
if(!expr && !engine)
|
||||
continue;
|
||||
if(!engine) {
|
||||
@@ -891,8 +904,13 @@ void PropertyExpressionEngine::setExpressions(
|
||||
std::map<App::ObjectIdentifier, App::ExpressionPtr> &&exprs)
|
||||
{
|
||||
AtomicPropertyChange signaller(*this);
|
||||
#ifdef BOOST_NO_CXX11_SMART_PTR
|
||||
for(auto &v : exprs)
|
||||
setValue(v.first,boost::shared_ptr<Expression>(v.second.release()));
|
||||
#else
|
||||
for(auto &v : exprs)
|
||||
setValue(v.first,std::move(v.second));
|
||||
#endif
|
||||
}
|
||||
|
||||
void PropertyExpressionEngine::onRelabeledDocument(const App::Document &doc)
|
||||
|
||||
Reference in New Issue
Block a user