From: Axel Naumann Date: Fri, 26 Sep 2014 14:02:33 +0000 (+0200) Subject: Handle member fun ptr (ROOT-5467). X-Git-Tag: v6-02-00~19 X-Git-Url: https://root.cern.ch/gitweb?p=root.git;a=commitdiff_plain;h=e792c429214e794f0c44f9d73b44c899b31a1138 Handle member fun ptr (ROOT-5467). (cherry picked from commit 20b95e364e969bdbd64a62dc7ae24a170570732e) --- diff --git a/interpreter/cling/lib/Interpreter/ValueExtractionSynthesizer.cpp b/interpreter/cling/lib/Interpreter/ValueExtractionSynthesizer.cpp index e90c633..ccf55bb 100644 --- a/interpreter/cling/lib/Interpreter/ValueExtractionSynthesizer.cpp +++ b/interpreter/cling/lib/Interpreter/ValueExtractionSynthesizer.cpp @@ -266,10 +266,12 @@ namespace { Call = m_Sema->CreateBuiltinBinOp(locStart, BO_Comma, Call.get(), E); } - else if (desugaredTy->isRecordType() || desugaredTy->isConstantArrayType()){ + else if (desugaredTy->isRecordType() || desugaredTy->isConstantArrayType() + || desugaredTy->isMemberPointerType()) { // 2) object types : // check existance of copy constructor before call - if (!availableCopyConstructor(desugaredTy, m_Sema)) + if (!desugaredTy->isMemberPointerType() + && !availableCopyConstructor(desugaredTy, m_Sema)) return E; // call new (setValueWithAlloc(gCling, &SVR, ETy)) (E) Call = m_Sema->ActOnCallExpr(/*Scope*/0, m_UnresolvedWithAlloc,