Make some typedefs public to make MSVC++ happy.
authorTed Kremenek <kremenek@apple.com>
Thu, 10 Jul 2008 23:09:45 +0000 (23:09 +0000)
committerTed Kremenek <kremenek@apple.com>
Thu, 10 Jul 2008 23:09:45 +0000 (23:09 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53432 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ADT/alist.h

index 46fa1205545e73295f02a10ad1a92ac4ef962bd1..f4b8cf9a1dfbec2f2714f9e2cef30412bf5a8085 100644 (file)
@@ -24,9 +24,11 @@ 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;
 
@@ -144,9 +146,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 +161,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: