Use the Support/iterator file to abstract out compiler differences
[oota-llvm.git] / include / llvm / Type.h
index 99e038af8fb7b3926e0ae5323b6c9d595f1d0a64..8cb4b581fcfb322a1d95a32af495ba3328796548 100644 (file)
@@ -28,6 +28,7 @@
 
 #include "llvm/Value.h"
 #include "Support/GraphTraits.h"
+#include "Support/iterator"
 
 class DerivedType;
 class FunctionType;
@@ -228,12 +229,7 @@ public:
 #include "llvm/Type.def"
 
 private:
-  class TypeIterator
-#if __GNUC__ == 3
-    : public std::iterator<std::bidirectional_iterator_tag, const Type> {
-#else
-    : public std::bidirectional_iterator<const Type, ptrdiff_t> {
-#endif
+  class TypeIterator : public bidirectional_iterator<const Type, ptrdiff_t> {
     const Type * const Ty;
     unsigned Idx;