[Lldb-commits] [PATCH] Introduce a TypeSystem interface to support adding non-clang languages.

Greg Clayton clayborg at gmail.com
Fri Apr 3 10:58:14 PDT 2015


Looks great. Very few changes needed. See inline comments.


REPOSITORY
  rL LLVM

================
Comment at: include/lldb/Symbol/ClangASTType.h:443-447
@@ -452,108 +442,7 @@
     //----------------------------------------------------------------------
-    clang::FieldDecl *
-    AddFieldToRecordType (const char *name,
-                          const ClangASTType &field_type,
-                          lldb::AccessType access,
-                          uint32_t bitfield_bit_size);
-    
-    void
-    BuildIndirectFields ();
-    
-    void
-    SetIsPacked ();
-    
-    clang::VarDecl *
-    AddVariableToRecordType (const char *name,
-                             const ClangASTType &var_type,
-                             lldb::AccessType access);
-
-    clang::CXXMethodDecl *
-    AddMethodToCXXRecordType (const char *name,
-                              const ClangASTType &method_type,
-                              lldb::AccessType access,
-                              bool is_virtual,
-                              bool is_static,
-                              bool is_inline,
-                              bool is_explicit,
-                              bool is_attr_used,
-                              bool is_artificial);
-    
-    // C++ Base Classes
-    clang::CXXBaseSpecifier *
-    CreateBaseClassSpecifier (lldb::AccessType access,
-                              bool is_virtual,
-                              bool base_of_class);
     
     static void
     DeleteBaseClassSpecifiers (clang::CXXBaseSpecifier **base_classes,
                                unsigned num_base_classes);
-    
-    bool
-    SetBaseClassesForClassType (clang::CXXBaseSpecifier const * const *base_classes,
-                                unsigned num_base_classes);
-    
-
-    bool
-    SetObjCSuperClass (const ClangASTType &superclass_clang_type);
-    
-    bool
-    AddObjCClassProperty (const char *property_name,
-                          const ClangASTType &property_clang_type,
-                          clang::ObjCIvarDecl *ivar_decl,
-                          const char *property_setter_name,
-                          const char *property_getter_name,
-                          uint32_t property_attributes,
-                          ClangASTMetadata *metadata);
-
-    clang::ObjCMethodDecl *
-    AddMethodToObjCObjectType (const char *name,  // the full symbol name as seen in the symbol table ("-[NString stringWithCString:]")
-                               const ClangASTType &method_clang_type,
-                               lldb::AccessType access,
-                               bool is_artificial);
 
     //------------------------------------------------------------------
----------------
This shouldn't be here, it should probably be moved as a static function to where the above functions moved.

================
Comment at: include/lldb/lldb-forward.h:225
@@ -224,2 +224,3 @@
 class   TypeFilterImpl;
+class TypeSystem;
 #ifndef LLDB_DISABLE_PYTHON
----------------
Fix spacing to match. If this is a tab, this should be spaces as we don't use tabs in LLDB sources.

http://reviews.llvm.org/D8712

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the lldb-commits mailing list