summaryrefslogtreecommitdiffstats
path: root/lldb/include/lldb/Symbol/ClangASTContext.h
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/include/lldb/Symbol/ClangASTContext.h')
-rw-r--r--lldb/include/lldb/Symbol/ClangASTContext.h31
1 files changed, 24 insertions, 7 deletions
diff --git a/lldb/include/lldb/Symbol/ClangASTContext.h b/lldb/include/lldb/Symbol/ClangASTContext.h
index 738d450a81d..c112c5e4a95 100644
--- a/lldb/include/lldb/Symbol/ClangASTContext.h
+++ b/lldb/include/lldb/Symbol/ClangASTContext.h
@@ -1006,10 +1006,18 @@ public:
lldb::AccessType access,
bool is_artificial);
- bool
+ static bool
SetHasExternalStorage (lldb::opaque_compiler_type_t type, bool has_extern);
-
+
+ static bool
+ CanImport (const CompilerType &type, lldb_private::ClangASTImporter &importer);
+
+ static bool
+ Import (const CompilerType &type, lldb_private::ClangASTImporter &importer);
+
+ static bool
+ GetHasExternalStorage (const CompilerType &type);
//------------------------------------------------------------------
// Tag Declarations
//------------------------------------------------------------------
@@ -1092,13 +1100,19 @@ public:
void
DumpTypeDescription (lldb::opaque_compiler_type_t type, Stream *s) override;
-
+
+ static void
+ DumpTypeName (const CompilerType &type);
+
static clang::EnumDecl *
GetAsEnumDecl (const CompilerType& type);
static clang::RecordDecl *
GetAsRecordDecl (const CompilerType& type);
-
+
+ static clang::TagDecl *
+ GetAsTagDecl (const CompilerType& type);
+
clang::CXXRecordDecl *
GetAsCXXRecordDecl (lldb::opaque_compiler_type_t type);
@@ -1109,9 +1123,12 @@ public:
GetQualType (const CompilerType& type)
{
// Make sure we have a clang type before making a clang::QualType
- ClangASTContext *ast = llvm::dyn_cast_or_null<ClangASTContext>(type.GetTypeSystem());
- if (ast)
- return clang::QualType::getFromOpaquePtr(type.GetOpaqueQualType());
+ if (type.GetOpaqueQualType())
+ {
+ ClangASTContext *ast = llvm::dyn_cast_or_null<ClangASTContext>(type.GetTypeSystem());
+ if (ast)
+ return clang::QualType::getFromOpaquePtr(type.GetOpaqueQualType());
+ }
return clang::QualType();
}
OpenPOWER on IntegriCloud