diff options
author | Sebastian Redl <sebastian.redl@getdesigned.at> | 2010-09-28 20:23:00 +0000 |
---|---|---|
committer | Sebastian Redl <sebastian.redl@getdesigned.at> | 2010-09-28 20:23:00 +0000 |
commit | c1ca90a246a87fb9d7828e4e45828e476ce14c76 (patch) | |
tree | 7e7ab66f3b1eb9abc1a1f19cca915ae2789c7929 | |
parent | a832d3e2ccdecaf8f081b183f823f4627c0fbea3 (diff) | |
download | bcm5719-llvm-c1ca90a246a87fb9d7828e4e45828e476ce14c76.tar.gz bcm5719-llvm-c1ca90a246a87fb9d7828e4e45828e476ce14c76.zip |
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>.
llvm-svn: 114978
-rw-r--r-- | clang/include/clang/Sema/ExternalSemaSource.h | 8 | ||||
-rw-r--r-- | clang/lib/Sema/Sema.cpp | 6 |
2 files changed, 9 insertions, 5 deletions
diff --git a/clang/include/clang/Sema/ExternalSemaSource.h b/clang/include/clang/Sema/ExternalSemaSource.h index 7be003390b1..8244cd92f69 100644 --- a/clang/include/clang/Sema/ExternalSemaSource.h +++ b/clang/include/clang/Sema/ExternalSemaSource.h @@ -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 @@ public: /// /// \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) { diff --git a/clang/lib/Sema/Sema.cpp b/clang/lib/Sema/Sema.cpp index e8d2c1e4201..a0046a2caa1 100644 --- a/clang/lib/Sema/Sema.cpp +++ b/clang/lib/Sema/Sema.cpp @@ -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 @@ BlockScopeInfo *Sema::getCurBlock() { // 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(); |