diff --git a/include/llvm/ADT/EquivalenceClasses.h b/include/llvm/ADT/EquivalenceClasses.h index bed99d3d205..ac9dd4db1fb 100644 --- a/include/llvm/ADT/EquivalenceClasses.h +++ b/include/llvm/ADT/EquivalenceClasses.h @@ -234,8 +234,9 @@ public: } class member_iterator : public std::iterator { - typedef std::iterator super; + const ElemTy, ptrdiff_t> { + typedef std::iterator super; const ECValue *Node; friend class EquivalenceClasses; public: @@ -249,7 +250,7 @@ public: reference operator*() const { assert(Node != 0 && "Dereferencing end()!"); - return const_cast(Node->getData()); // FIXME + return Node->getData(); } reference operator->() const { return operator*(); }