Browse Source

Clean all C++ warnings in the parser

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
pull/1344/head
Dimitar Dobrev 5 years ago
parent
commit
78ed7c72a1
  1. 45
      src/CppParser/Parser.cpp

45
src/CppParser/Parser.cpp

@ -342,18 +342,10 @@ void Parser::Setup() @@ -342,18 +342,10 @@ void Parser::Setup()
clang::driver::ToolChain *TC = nullptr;
llvm::Triple Target(TO->Triple);
switch (Target.getOS()) {
case llvm::Triple::Linux:
TC = new clang::driver::toolchains::Linux(D, Target, Args);
break;
case llvm::Triple::Win32:
switch (Target.getEnvironment()) {
case llvm::Triple::MSVC:
TC = new clang::driver::toolchains::MSVCToolChain(D, Target, Args);
break;
}
break;
}
if (Target.getOS() == llvm::Triple::Linux)
TC = new clang::driver::toolchains::Linux(D, Target, Args);
else if (Target.getEnvironment() == llvm::Triple::EnvironmentType::MSVC)
TC = new clang::driver::toolchains::MSVCToolChain(D, Target, Args);
if (TC && !opts->noStandardIncludes) {
llvm::opt::ArgStringList Includes;
@ -927,12 +919,12 @@ static RecordArgABI GetRecordArgABI( @@ -927,12 +919,12 @@ static RecordArgABI GetRecordArgABI(
using namespace clang::CodeGen;
switch (argAbi)
{
case CGCXXABI::RecordArgABI::RAA_Default:
return RecordArgABI::Default;
case CGCXXABI::RecordArgABI::RAA_DirectInMemory:
return RecordArgABI::DirectInMemory;
case CGCXXABI::RecordArgABI::RAA_Indirect:
return RecordArgABI::Indirect;
default:
return RecordArgABI::Default;
}
}
@ -1007,6 +999,8 @@ void Parser::WalkRecord(const clang::RecordDecl* Record, Class* RC) @@ -1007,6 +999,8 @@ void Parser::WalkRecord(const clang::RecordDecl* Record, Class* RC)
WalkDeclaration(MD);
break;
}
default:
break;
}
}
}
@ -3093,6 +3087,8 @@ static bool IsInvalid(clang::Stmt* Body, std::unordered_set<clang::Stmt*>& Bodie @@ -3093,6 +3087,8 @@ static bool IsInvalid(clang::Stmt* Body, std::unordered_set<clang::Stmt*>& Bodie
case clang::Stmt::StmtClass::MemberExprClass:
D = cast<clang::MemberExpr>(Body)->getMemberDecl();
break;
default:
break;
}
if (D)
{
@ -3286,8 +3282,8 @@ void Parser::WalkFunction(const clang::FunctionDecl* FD, Function* F, @@ -3286,8 +3282,8 @@ void Parser::WalkFunction(const clang::FunctionDecl* FD, Function* F,
const CXXMethodDecl* MD;
if (FD->isDependentContext() ||
(MD = dyn_cast<CXXMethodDecl>(FD)) && !MD->isStatic() &&
!HasLayout(cast<CXXRecordDecl>(MD->getDeclContext())) ||
((MD = dyn_cast<CXXMethodDecl>(FD)) && !MD->isStatic() &&
!HasLayout(cast<CXXRecordDecl>(MD->getDeclContext()))) ||
!CanCheckCodeGenInfo(c->getSema(), FD->getReturnType().getTypePtr()) ||
std::any_of(FD->parameters().begin(), FD->parameters().end(),
[this](auto* P) { return !CanCheckCodeGenInfo(c->getSema(), P->getType().getTypePtr()); }))
@ -4103,6 +4099,8 @@ Declaration* Parser::WalkDeclaration(const clang::Decl* D) @@ -4103,6 +4099,8 @@ Declaration* Parser::WalkDeclaration(const clang::Decl* D)
Decl->isDeprecated = true;
break;
}
default:
break;
}
}
}
@ -4412,17 +4410,12 @@ ParserResultKind Parser::ParseSharedLib(llvm::StringRef File, @@ -4412,17 +4410,12 @@ ParserResultKind Parser::ParseSharedLib(llvm::StringRef File,
// see https://bugs.llvm.org/show_bug.cgi?id=44433
for (const auto& Symbol : MachOObjectFile->symbols())
{
if (Symbol.getName())
{
if ((Symbol.getFlags() & llvm::object::BasicSymbolRef::Flags::SF_Exported) &&
!(Symbol.getFlags() & llvm::object::BasicSymbolRef::Flags::SF_Undefined))
NativeLib->Symbols.push_back(Symbol.getName().get().str());
}
else
{
Symbol.getName().takeError();
if (Symbol.getName().takeError())
return ParserResultKind::Error;
}
if ((Symbol.getFlags() & llvm::object::BasicSymbolRef::Flags::SF_Exported) &&
!(Symbol.getFlags() & llvm::object::BasicSymbolRef::Flags::SF_Undefined))
NativeLib->Symbols.push_back(Symbol.getName().get().str());
}
return ParserResultKind::Success;
}

Loading…
Cancel
Save