Kaydet (Commit) 4da8281d authored tarafından Stephan Bergmann's avatar Stephan Bergmann

compat for Clang 3.2

Change-Id: I2746abd05edd00dadfe613c17b9874b1035c3be4
üst 37b18359
...@@ -160,6 +160,26 @@ inline std::unique_ptr<llvm::raw_fd_ostream> create_raw_fd_ostream( ...@@ -160,6 +160,26 @@ inline std::unique_ptr<llvm::raw_fd_ostream> create_raw_fd_ostream(
#endif #endif
} }
inline clang::NamedDecl * const * begin(
clang::DeclContextLookupConstResult const & result)
{
#if (__clang_major__ == 3 && __clang_minor__ >= 3) || __clang_major__ > 3
return result.begin();
#else
return result.first;
#endif
}
inline clang::NamedDecl * const * end(
clang::DeclContextLookupConstResult const & result)
{
#if (__clang_major__ == 3 && __clang_minor__ >= 3) || __clang_major__ > 3
return result.end();
#else
return result.second;
#endif
}
} }
#endif #endif
......
...@@ -72,8 +72,10 @@ OverrideKind getOverrideKind(FunctionDecl const * decl) { ...@@ -72,8 +72,10 @@ OverrideKind getOverrideKind(FunctionDecl const * decl) {
// encounter in practice: // encounter in practice:
bool hasBoolOverload(FunctionDecl const * decl, bool mustBeDeleted) { bool hasBoolOverload(FunctionDecl const * decl, bool mustBeDeleted) {
unsigned n = decl->getNumParams(); unsigned n = decl->getNumParams();
for (auto d: decl->getDeclContext()->lookup(decl->getDeclName())) { DeclContextLookupConstResult res
FunctionDecl const * f = dyn_cast<FunctionDecl>(d); = decl->getDeclContext()->lookup(decl->getDeclName());
for (auto d = compat::begin(res); d != compat::end(res); ++d) {
FunctionDecl const * f = dyn_cast<FunctionDecl>(*d);
if (f != nullptr && (!mustBeDeleted || f->isDeleted())) { if (f != nullptr && (!mustBeDeleted || f->isDeleted())) {
if (f->getNumParams() == n) { if (f->getNumParams() == n) {
bool hasSB = false; bool hasSB = false;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment