diff --git a/src/CppParser/Parser.cpp b/src/CppParser/Parser.cpp index bc11335e..c201ef76 100644 --- a/src/CppParser/Parser.cpp +++ b/src/CppParser/Parser.cpp @@ -119,7 +119,6 @@ void Parser::SetupHeader() TargetOptions& TO = Inv->getTargetOpts(); TargetABI = (Opts->Abi == CppAbi::Microsoft) ? TargetCXXABI::Microsoft : TargetCXXABI::GenericItanium; - TO.CXXABI = GetCXXABIString(TargetABI); TO.Triple = llvm::sys::getDefaultTargetTriple(); if (!Opts->TargetTriple.empty()) @@ -939,7 +938,7 @@ Method* Parser::WalkMethodCXX(clang::CXXMethodDecl* MD) else if (const CXXConversionDecl* CD = dyn_cast(MD)) { auto TL = MD->getTypeSourceInfo()->getTypeLoc().castAs(); - auto RTL = TL.getResultLoc(); + auto RTL = TL.getReturnLoc(); auto ConvTy = WalkType(CD->getConversionType(), &RTL); Method->ConversionType = GetQualifiedType(CD->getConversionType(), ConvTy); } @@ -1398,20 +1397,20 @@ Type* Parser::WalkType(clang::QualType QualType, clang::TypeLoc* TL, if (TL && !TL->isNull()) { FTL = TL->getAs(); - RL = FTL.getResultLoc(); + RL = FTL.getReturnLoc(); } auto F = new FunctionType(); - F->ReturnType = GetQualifiedType(FP->getResultType(), - WalkType(FP->getResultType(), &RL)); + F->ReturnType = GetQualifiedType(FP->getReturnType(), + WalkType(FP->getReturnType(), &RL)); F->CallingConvention = ConvertCallConv(FP->getCallConv()); - for (unsigned i = 0; i < FP->getNumArgs(); ++i) + for (unsigned i = 0; i < FP->getNumParams(); ++i) { auto FA = new Parameter(); if (FTL) { - auto PVD = FTL.getArg(i); + auto PVD = FTL.getParam(i); HandleDeclaration(PVD, FA); @@ -1422,7 +1421,7 @@ Type* Parser::WalkType(clang::QualType QualType, clang::TypeLoc* TL, } else { - auto Arg = FP->getArgType(i); + auto Arg = FP->getParamType(i); FA->Name = ""; FA->QualifiedType = GetQualifiedType(Arg, WalkType(Arg)); } @@ -1754,7 +1753,7 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, Function* F, FunctionTypeLoc FTL = TSI->getTypeLoc().getAs(); if (FTL) { - RTL = FTL.getResultLoc(); + RTL = FTL.getReturnLoc(); auto &SM = C->getSourceManager(); auto headStartLoc = GetDeclStartLocation(C.get(), FD); @@ -1768,8 +1767,8 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, Function* F, } } - F->ReturnType = GetQualifiedType(FD->getResultType(), - WalkType(FD->getResultType(), &RTL)); + F->ReturnType = GetQualifiedType(FD->getReturnType(), + WalkType(FD->getReturnType(), &RTL)); String Mangled = GetDeclMangledName(FD, TargetABI, IsDependent); F->Mangled = Mangled; @@ -1790,7 +1789,7 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, Function* F, assert (!FTInfo.isNull()); ParamStartLoc = FTInfo.getRParenLoc(); - ResultLoc = FTInfo.getResultLoc().getLocStart(); + ResultLoc = FTInfo.getReturnLoc().getLocStart(); } } @@ -1829,7 +1828,7 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, Function* F, } bool CheckCodeGenInfo = !FD->isDependentContext() && !FD->isInvalidDecl(); - CheckCodeGenInfo &= CanCheckCodeGenInfo(FD->getResultType().getTypePtr()); + CheckCodeGenInfo &= CanCheckCodeGenInfo(FD->getReturnType().getTypePtr()); for (auto I = FD->param_begin(), E = FD->param_end(); I != E; ++I) CheckCodeGenInfo &= CanCheckCodeGenInfo((*I)->getType().getTypePtr()); @@ -2556,7 +2555,7 @@ ParserResultKind Parser::ParseArchive(llvm::StringRef File, NativeLib = new NativeLibrary(); NativeLib->FileName = LibName; - for(auto it = Archive.begin_symbols(); it != Archive.end_symbols(); ++it) + for(auto it = Archive.symbol_begin(); it != Archive.symbol_end(); ++it) { llvm::StringRef SymRef; @@ -2583,7 +2582,7 @@ ParserResultKind Parser::ParseSharedLib(llvm::StringRef File, NativeLib->FileName = LibName; llvm::error_code ec; - for(auto it = Object->begin_symbols(); it != Object->end_symbols(); it.increment(ec)) + for(auto it = Object.get()->begin_symbols(); it != Object.get()->end_symbols(); it.increment(ec)) { llvm::StringRef SymRef; @@ -2593,7 +2592,7 @@ ParserResultKind Parser::ParseSharedLib(llvm::StringRef File, NativeLib->Symbols.push_back(SymRef); } - for(auto it = Object->begin_dynamic_symbols(); it != Object->end_dynamic_symbols(); + for (auto it = Object.get()->begin_dynamic_symbols(); it != Object.get()->end_dynamic_symbols(); it.increment(ec)) { llvm::StringRef SymRef; diff --git a/src/Parser/Parser.cpp b/src/Parser/Parser.cpp index 166ffb6a..fbc53f0b 100644 --- a/src/Parser/Parser.cpp +++ b/src/Parser/Parser.cpp @@ -122,7 +122,6 @@ void Parser::SetupHeader() TargetOptions& TO = Inv->getTargetOpts(); TargetABI = (Opts->Abi == CppAbi::Microsoft) ? TargetCXXABI::Microsoft : TargetCXXABI::GenericItanium; - TO.CXXABI = GetCXXABIString(TargetABI); TO.Triple = llvm::sys::getDefaultTargetTriple(); if (!System::String::IsNullOrWhiteSpace(Opts->TargetTriple)) @@ -952,7 +951,7 @@ CppSharp::AST::Method^ Parser::WalkMethodCXX(clang::CXXMethodDecl* MD) else if (const CXXConversionDecl* CD = dyn_cast(MD)) { auto TL = MD->getTypeSourceInfo()->getTypeLoc().castAs(); - auto RTL = TL.getResultLoc(); + auto RTL = TL.getReturnLoc(); auto ConvTy = WalkType(CD->getConversionType(), &RTL); Method->ConversionType = GetQualifiedType(CD->getConversionType(), ConvTy); } @@ -1421,20 +1420,20 @@ CppSharp::AST::Type^ Parser::WalkType(clang::QualType QualType, clang::TypeLoc* if (TL && !TL->isNull()) { FTL = TL->getAs(); - RL = FTL.getResultLoc(); + RL = FTL.getReturnLoc(); } auto F = gcnew CppSharp::AST::FunctionType(); - F->ReturnType = GetQualifiedType(FP->getResultType(), - WalkType(FP->getResultType(), &RL)); + F->ReturnType = GetQualifiedType(FP->getReturnType(), + WalkType(FP->getReturnType(), &RL)); F->CallingConvention = ConvertCallConv(FP->getCallConv()); - for (unsigned i = 0; i < FP->getNumArgs(); ++i) + for (unsigned i = 0; i < FP->getNumParams(); ++i) { auto FA = gcnew CppSharp::AST::Parameter(); if (FTL) { - auto PVD = FTL.getArg(i); + auto PVD = FTL.getParam(i); HandleDeclaration(PVD, FA); @@ -1445,7 +1444,7 @@ CppSharp::AST::Type^ Parser::WalkType(clang::QualType QualType, clang::TypeLoc* } else { - auto Arg = FP->getArgType(i); + auto Arg = FP->getParamType(i); FA->Name = ""; FA->QualifiedType = GetQualifiedType(Arg, WalkType(Arg)); } @@ -1775,7 +1774,7 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, CppSharp::AST::Function^ F, FunctionTypeLoc FTL = TSI->getTypeLoc().getAs(); if (FTL) { - RTL = FTL.getResultLoc(); + RTL = FTL.getReturnLoc(); auto &SM = C->getSourceManager(); auto headStartLoc = GetDeclStartLocation(C.get(), FD); @@ -1789,8 +1788,8 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, CppSharp::AST::Function^ F, } } - F->ReturnType = GetQualifiedType(FD->getResultType(), - WalkType(FD->getResultType(), &RTL)); + F->ReturnType = GetQualifiedType(FD->getReturnType(), + WalkType(FD->getReturnType(), &RTL)); String Mangled = GetDeclMangledName(FD, TargetABI, IsDependent); F->Mangled = marshalString(Mangled); @@ -1811,7 +1810,7 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, CppSharp::AST::Function^ F, assert (!FTInfo.isNull()); ParamStartLoc = FTInfo.getRParenLoc(); - ResultLoc = FTInfo.getResultLoc().getLocStart(); + ResultLoc = FTInfo.getReturnLoc().getLocStart(); } } @@ -1850,7 +1849,7 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, CppSharp::AST::Function^ F, } bool CheckCodeGenInfo = !FD->isDependentContext() && !FD->isInvalidDecl(); - CheckCodeGenInfo &= CanCheckCodeGenInfo(FD->getResultType().getTypePtr()); + CheckCodeGenInfo &= CanCheckCodeGenInfo(FD->getReturnType().getTypePtr()); for (auto I = FD->param_begin(), E = FD->param_end(); I != E; ++I) CheckCodeGenInfo &= CanCheckCodeGenInfo((*I)->getType().getTypePtr()); @@ -2570,7 +2569,7 @@ ParserResultKind Parser::ParseArchive(llvm::StringRef File, auto LibName = clix::marshalString(File); NativeLib->FileName = LibName; - for(auto it = Archive.begin_symbols(); it != Archive.end_symbols(); ++it) + for(auto it = Archive.symbol_begin(); it != Archive.symbol_end(); ++it) { llvm::StringRef SymRef; @@ -2597,7 +2596,7 @@ ParserResultKind Parser::ParseSharedLib(llvm::StringRef File, NativeLib->FileName = LibName; llvm::error_code ec; - for(auto it = Object->begin_symbols(); it != Object->end_symbols(); it.increment(ec)) + for(auto it = Object.get()->begin_symbols(); it != Object.get()->end_symbols(); it.increment(ec)) { llvm::StringRef SymRef; @@ -2608,7 +2607,7 @@ ParserResultKind Parser::ParseSharedLib(llvm::StringRef File, NativeLib->Symbols->Add(SymName); } - for(auto it = Object->begin_dynamic_symbols(); it != Object->end_dynamic_symbols(); + for(auto it = Object.get()->begin_dynamic_symbols(); it != Object.get()->end_dynamic_symbols(); it.increment(ec)) { llvm::StringRef SymRef;