Fixes the MSVC build.
authorFrancois Pichet <pichet2000@gmail.com>
Wed, 14 Mar 2012 22:36:10 +0000 (22:36 +0000)
committerFrancois Pichet <pichet2000@gmail.com>
Wed, 14 Mar 2012 22:36:10 +0000 (22:36 +0000)
Commit r152704 exposed a latent MSVC limitation (aka bug).
Both ilist and and iplist contains the same function:
  template<class InIt> void insert(iterator where, InIt first, InIt last) {
    for (; first != last; ++first) insert(where, *first);
  }

Also ilist inherits from iplist and ilist contains a "using iplist<NodeTy>::insert".
MSVC doesn't know which one to pick and complain with an error.

I think it is safe to delete ilist::insert since it is redundant anyway.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152746 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ADT/ilist.h

index bcacfd9df4266f65289d5efa88f25bda838e9e0c..ba9864a98a7e8d72ee1f0b4df6da69701c2e7f39 100644 (file)
@@ -652,10 +652,6 @@ struct ilist : public iplist<NodeTy> {
   void push_front(const NodeTy &val) { insert(this->begin(), val); }
   void push_back(const NodeTy &val) { insert(this->end(), val); }
 
-  // Special forms of insert...
-  template<class InIt> void insert(iterator where, InIt first, InIt last) {
-    for (; first != last; ++first) insert(where, *first);
-  }
   void insert(iterator where, size_type count, const NodeTy &val) {
     for (; count != 0; --count) insert(where, val);
   }