[cfe-commits] r114978 - in /cfe/trunk: include/clang/Sema/ExternalSemaSource.h lib/Sema/Sema.cpp

Sebastian Redl sebastian.redl at getdesigned.at
Tue Sep 28 13:23:00 PDT 2010


Author: cornedbee
Date: Tue Sep 28 15:23:00 2010
New Revision: 114978

URL: http://llvm.org/viewvc/llvm-project?rev=114978&view=rev
Log:
Move ExternalSemaSource::ReadMethodPool's implementation to Sema.cpp so that the header can get away with forward declarations only for ObjCMethodList and Selector. Fixes <rdar://8467631>.

Modified:
    cfe/trunk/include/clang/Sema/ExternalSemaSource.h
    cfe/trunk/lib/Sema/Sema.cpp

Modified: cfe/trunk/include/clang/Sema/ExternalSemaSource.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/ExternalSemaSource.h?rev=114978&r1=114977&r2=114978&view=diff
==============================================================================
--- cfe/trunk/include/clang/Sema/ExternalSemaSource.h (original)
+++ cfe/trunk/include/clang/Sema/ExternalSemaSource.h Tue Sep 28 15:23:00 2010
@@ -14,10 +14,11 @@
 #define LLVM_CLANG_SEMA_EXTERNAL_SEMA_SOURCE_H
 
 #include "clang/AST/ExternalASTSource.h"
-#include "clang/Sema/ObjCMethodList.h"
+#include <utility>
 
 namespace clang {
 
+class ObjCMethodList;
 class Sema;
 
 /// \brief An abstract interface that should be implemented by
@@ -44,10 +45,7 @@
   ///
   /// \returns a pair of Objective-C methods lists containing the
   /// instance and factory methods, respectively, with this selector.
-  virtual std::pair<ObjCMethodList, ObjCMethodList>
-  ReadMethodPool(Selector Sel) {
-    return std::pair<ObjCMethodList, ObjCMethodList>();
-  }
+  virtual std::pair<ObjCMethodList,ObjCMethodList> ReadMethodPool(Selector Sel);
 
   // isa/cast/dyn_cast support
   static bool classof(const ExternalASTSource *Source) {

Modified: cfe/trunk/lib/Sema/Sema.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/Sema.cpp?rev=114978&r1=114977&r2=114978&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/Sema.cpp (original)
+++ cfe/trunk/lib/Sema/Sema.cpp Tue Sep 28 15:23:00 2010
@@ -20,6 +20,7 @@
 #include "llvm/ADT/APFloat.h"
 #include "clang/Sema/CXXFieldCollector.h"
 #include "clang/Sema/ExternalSemaSource.h"
+#include "clang/Sema/ObjCMethodList.h"
 #include "clang/Sema/PrettyDeclStackTrace.h"
 #include "clang/Sema/Scope.h"
 #include "clang/Sema/ScopeInfo.h"
@@ -553,6 +554,11 @@
 // Pin this vtable to this file.
 ExternalSemaSource::~ExternalSemaSource() {}
 
+std::pair<ObjCMethodList, ObjCMethodList>
+ExternalSemaSource::ReadMethodPool(Selector Sel) {
+  return std::pair<ObjCMethodList, ObjCMethodList>();
+}
+
 void PrettyDeclStackTraceEntry::print(llvm::raw_ostream &OS) const {
   SourceLocation Loc = this->Loc;
   if (!Loc.isValid() && TheDecl) Loc = TheDecl->getLocation();





More information about the cfe-commits mailing list