aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManuel Klimek <klimek@google.com>2011-12-20 11:04:23 +0000
committerManuel Klimek <klimek@google.com>2011-12-20 11:04:23 +0000
commit093147abf423428d338979a839273369810698cc (patch)
tree00cad23560a4ad36ade27866b26a80dc21f0c121
parent9ce6937701cd28fb2aafdd3ec950fb0e70bae8cd (diff)
Fixes a potential compilation error.
Pulling the template implementation into the header to guarantee that it's visible to all possible instantiations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146973 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/Support/JSONParser.h11
-rw-r--r--lib/Support/JSONParser.cpp12
2 files changed, 10 insertions, 13 deletions
diff --git a/include/llvm/Support/JSONParser.h b/include/llvm/Support/JSONParser.h
index 0150646bc3..f4cdfa5608 100644
--- a/include/llvm/Support/JSONParser.h
+++ b/include/llvm/Support/JSONParser.h
@@ -128,7 +128,16 @@ private:
/// \brief Skips all elements in the given container.
template <typename ContainerT>
- bool skipContainer(const ContainerT &Container);
+ bool skipContainer(const ContainerT &Container) {
+ for (typename ContainerT::const_iterator I = Container.current(),
+ E = Container.end();
+ I != E; ++I) {
+ assert(*I != 0);
+ if (!skip(**I))
+ return false;
+ }
+ return !failed();
+ }
/// \brief Skips to the next position behind the given JSON atom.
bool skip(const JSONAtom &Atom);
diff --git a/lib/Support/JSONParser.cpp b/lib/Support/JSONParser.cpp
index 02187409cb..994ca9fc96 100644
--- a/lib/Support/JSONParser.cpp
+++ b/lib/Support/JSONParser.cpp
@@ -43,18 +43,6 @@ bool JSONParser::validate() {
return skip(*parseRoot());
}
-template <typename ContainerT>
-bool JSONParser::skipContainer(const ContainerT &Container) {
- for (typename ContainerT::const_iterator I = Container.current(),
- E = Container.end();
- I != E; ++I) {
- assert(*I != 0);
- if (!skip(**I))
- return false;
- }
- return !failed();
-}
-
bool JSONParser::skip(const JSONAtom &Atom) {
switch(Atom.getKind()) {
case JSONAtom::JK_Array: return skipContainer(*cast<JSONArray>(&Atom));