summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/scripts/build-llvm.pl2
-rw-r--r--lldb/source/Symbol/ClangASTContext.cpp25
-rw-r--r--lldb/source/Symbol/ClangASTType.cpp10
3 files changed, 20 insertions, 17 deletions
diff --git a/lldb/scripts/build-llvm.pl b/lldb/scripts/build-llvm.pl
index 02ce2e19107..01c4af6794e 100644
--- a/lldb/scripts/build-llvm.pl
+++ b/lldb/scripts/build-llvm.pl
@@ -25,7 +25,7 @@ our @llvm_clang_slices; # paths to the single architecture static libraries (arc
our $llvm_configuration = $ENV{LLVM_CONFIGURATION};
-our $llvm_revision = "120727";
+our $llvm_revision = "121655";
our $llvm_source_dir = "$ENV{SRCROOT}";
our $cc = "$ENV{DEVELOPER_BIN_DIR}/gcc-4.2";
our $cxx = "$ENV{DEVELOPER_BIN_DIR}/g++-4.2";
diff --git a/lldb/source/Symbol/ClangASTContext.cpp b/lldb/source/Symbol/ClangASTContext.cpp
index 9f73faf65e0..c8ad302a309 100644
--- a/lldb/source/Symbol/ClangASTContext.cpp
+++ b/lldb/source/Symbol/ClangASTContext.cpp
@@ -1829,7 +1829,7 @@ ClangASTContext::GetTypeInfo
case clang::Type::TemplateSpecialization: return eTypeIsTemplate;
case clang::Type::Typedef:
- return eTypeIsTypedef | ClangASTContext::GetTypeInfo (cast<TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr(),
+ return eTypeIsTypedef | ClangASTContext::GetTypeInfo (cast<TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr(),
ast_context,
pointee_or_element_clang_type);
@@ -1867,7 +1867,7 @@ ClangASTContext::IsAggregateType (clang_type_t clang_type)
return true;
case clang::Type::Typedef:
- return ClangASTContext::IsAggregateType (cast<TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr());
+ return ClangASTContext::IsAggregateType (cast<TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr());
default:
break;
@@ -2021,7 +2021,7 @@ ClangASTContext::GetNumChildren (clang_type_t clang_qual_type, bool omit_empty_b
case clang::Type::Typedef:
- num_children = ClangASTContext::GetNumChildren (cast<TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr(), omit_empty_base_classes);
+ num_children = ClangASTContext::GetNumChildren (cast<TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr(), omit_empty_base_classes);
break;
default:
@@ -2423,7 +2423,7 @@ ClangASTContext::GetChildClangTypeAtIndex
case clang::Type::Typedef:
return GetChildClangTypeAtIndex (ast_context,
parent_name,
- cast<TypedefType>(parent_qual_type)->LookThroughTypedefs().getAsOpaquePtr(),
+ cast<TypedefType>(parent_qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr(),
idx,
transparent_pointers,
omit_empty_base_classes,
@@ -2877,7 +2877,7 @@ ClangASTContext::GetIndexOfChildMemberWithName
case clang::Type::Typedef:
return GetIndexOfChildMemberWithName (ast_context,
- cast<TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr(),
+ cast<TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr(),
name,
omit_empty_base_classes,
child_indexes);
@@ -3088,7 +3088,7 @@ ClangASTContext::GetIndexOfChildWithName
case clang::Type::Typedef:
return GetIndexOfChildWithName (ast_context,
- cast<TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr(),
+ cast<TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr(),
name,
omit_empty_base_classes);
@@ -3157,7 +3157,7 @@ ClangASTContext::GetDeclContextForType (clang_type_t clang_type)
case clang::Type::ObjCObjectPointer: return ClangASTContext::GetDeclContextForType (cast<ObjCObjectPointerType>(qual_type.getTypePtr())->getPointeeType().getAsOpaquePtr());
case clang::Type::Record: return cast<RecordType>(qual_type)->getDecl();
case clang::Type::Enum: return cast<EnumType>(qual_type)->getDecl();
- case clang::Type::Typedef: return ClangASTContext::GetDeclContextForType (cast<TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr());
+ case clang::Type::Typedef: return ClangASTContext::GetDeclContextForType (cast<TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr());
case clang::Type::TypeOfExpr: break;
case clang::Type::TypeOf: break;
@@ -3401,7 +3401,10 @@ ClangASTContext::CreateEnumerationType (const Declaration &decl, const char *nam
SourceLocation(),
name && name[0] ? &ast_context->Idents.get(name) : NULL,
SourceLocation(),
- NULL, false, false); //IsScoped, IsFixed);
+ NULL,
+ false, // IsScoped
+ false, // IsScopedUsingClassTag
+ false); // IsFixed
if (enum_decl)
{
// TODO: check if we should be setting the promotion type too?
@@ -3580,7 +3583,7 @@ ClangASTContext::IsPointerOrReferenceType (clang_type_t clang_type, clang_type_t
*target_type = cast<LValueReferenceType>(qual_type)->desugar().getAsOpaquePtr();
return true;
case clang::Type::Typedef:
- return ClangASTContext::IsPointerOrReferenceType (cast<TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr());
+ return ClangASTContext::IsPointerOrReferenceType (cast<TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr());
default:
break;
}
@@ -3643,7 +3646,7 @@ ClangASTContext::IsPointerType (clang_type_t clang_type, clang_type_t*target_typ
*target_type = cast<MemberPointerType>(qual_type)->getPointeeType().getAsOpaquePtr();
return true;
case clang::Type::Typedef:
- return ClangASTContext::IsPointerOrReferenceType (cast<TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr(), target_type);
+ return ClangASTContext::IsPointerOrReferenceType (cast<TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr(), target_type);
default:
break;
}
@@ -3791,7 +3794,7 @@ ClangASTContext::IsFunctionPointerType (clang_type_t clang_type)
switch (type_class)
{
case clang::Type::Typedef:
- return ClangASTContext::IsFunctionPointerType (cast<TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr());
+ return ClangASTContext::IsFunctionPointerType (cast<TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr());
case clang::Type::LValueReference:
case clang::Type::RValueReference:
diff --git a/lldb/source/Symbol/ClangASTType.cpp b/lldb/source/Symbol/ClangASTType.cpp
index 9a2d9227c08..db2ed981aaa 100644
--- a/lldb/source/Symbol/ClangASTType.cpp
+++ b/lldb/source/Symbol/ClangASTType.cpp
@@ -185,7 +185,7 @@ ClangASTType::GetEncoding (clang_type_t clang_type, uint32_t &count)
case clang::Type::Record: break;
case clang::Type::Enum: return lldb::eEncodingSint;
case clang::Type::Typedef:
- return GetEncoding(cast<clang::TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr(), count);
+ return GetEncoding(cast<clang::TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr(), count);
break;
case clang::Type::TypeOfExpr:
@@ -274,7 +274,7 @@ ClangASTType::GetFormat (clang_type_t clang_type)
case clang::Type::Record: break;
case clang::Type::Enum: return lldb::eFormatEnum;
case clang::Type::Typedef:
- return ClangASTType::GetFormat(cast<clang::TypedefType>(qual_type)->LookThroughTypedefs().getAsOpaquePtr());
+ return ClangASTType::GetFormat(cast<clang::TypedefType>(qual_type)->getDecl()->getUnderlyingType().getAsOpaquePtr());
case clang::Type::TypeOfExpr:
case clang::Type::TypeOf:
@@ -565,7 +565,7 @@ ClangASTType::DumpValue
case clang::Type::Typedef:
{
- clang::QualType typedef_qual_type = cast<clang::TypedefType>(qual_type)->LookThroughTypedefs();
+ clang::QualType typedef_qual_type = cast<clang::TypedefType>(qual_type)->getDecl()->getUnderlyingType();
lldb::Format typedef_format = ClangASTType::GetFormat(typedef_qual_type.getAsOpaquePtr());
std::pair<uint64_t, unsigned> typedef_type_info = ast_context->getTypeInfo(typedef_qual_type);
uint64_t typedef_byte_size = typedef_type_info.first / 8;
@@ -673,7 +673,7 @@ ClangASTType::DumpTypeValue
case clang::Type::Typedef:
{
- clang::QualType typedef_qual_type = cast<clang::TypedefType>(qual_type)->LookThroughTypedefs();
+ clang::QualType typedef_qual_type = cast<clang::TypedefType>(qual_type)->getDecl()->getUnderlyingType();
lldb::Format typedef_format = ClangASTType::GetFormat(typedef_qual_type.getAsOpaquePtr());
std::pair<uint64_t, unsigned> typedef_type_info = ast_context->getTypeInfo(typedef_qual_type);
uint64_t typedef_byte_size = typedef_type_info.first / 8;
@@ -1295,6 +1295,6 @@ lldb::clang_type_t
ClangASTType::RemoveFastQualifiers (lldb::clang_type_t clang_type)
{
clang::QualType qual_type(clang::QualType::getFromOpaquePtr(clang_type));
- qual_type.removeFastQualifiers();
+ qual_type.getQualifiers().removeFastQualifiers();
return qual_type.getAsOpaquePtr();
}
OpenPOWER on IntegriCloud