Remove bogus assertion. This unbreaks mingw, where ConstantSDNode
[oota-llvm.git] / include / llvm / ADT / alist.h
index 46fa1205545e73295f02a10ad1a92ac4ef962bd1..1af3e4a5c0c9d75aa1f3bce391b4f2153a93e686 100644 (file)
@@ -24,15 +24,21 @@ namespace llvm {
 template<class T, class LargestT = T, class ValueT = T,
          class NodeIterT = ilist_iterator<alist_node<T, LargestT> > >
 class alist_iterator : public bidirectional_iterator<ValueT, ptrdiff_t> {
+public:
   typedef bidirectional_iterator<ValueT, ptrdiff_t> super;
   typedef alist_node<T, LargestT> NodeTy;
 
+private:
   /// NodeIter - The underlying iplist iterator that is being wrapped.
   NodeIterT NodeIter;
 
 public:
   typedef size_t size_type;
-  typedef typename super::pointer pointer;
+
+  // FIX for MSVC++.  This should be reviewed more.
+  // typedef typename super::pointer pointer;
+  typedef ValueT* pointer;
+
   typedef typename super::reference reference;
 
   alist_iterator(NodeIterT NI) : NodeIter(NI) {}
@@ -144,9 +150,9 @@ struct simplify_type<const alist_iterator<V, W, X, Y> > {
 ///
 template<class T, class LargestT = T>
 class alist_traits {
+public:
   typedef alist_iterator<T, LargestT> iterator;
 
-public:
   void addNodeToList(T *) {}
   void removeNodeFromList(T *) {}
   void transferNodesFromList(alist_traits &, iterator, iterator) {}
@@ -159,9 +165,8 @@ public:
 ///
 template<class T, class LargestT = T>
 class alist {
-  typedef alist_node<T, LargestT> NodeTy;
-
 public:
+  typedef alist_node<T, LargestT> NodeTy;
   typedef typename ilist<NodeTy>::size_type size_type;
 
 private: