address Jens-G's comment
diff --git a/lib/cpp/src/thrift/Thrift.h b/lib/cpp/src/thrift/Thrift.h
index 55511d6..f3fe708 100644
--- a/lib/cpp/src/thrift/Thrift.h
+++ b/lib/cpp/src/thrift/Thrift.h
@@ -62,10 +62,8 @@
     return ii_ == rhs.ii_ && n_ == rhs.n_;
   }
 
-  bool operator!=(const TEnumIterator& end) const {
-    THRIFT_UNUSED_VARIABLE(end);
-    assert(end.n_ == -1);
-    return (ii_ != n_);
+  bool operator!=(const TEnumIterator& rhs) const {
+    return ii_ != rhs.ii_ || n_ != rhs.n_;
   }
 
   std::pair<int, const char*> operator*() const { return std::make_pair(enums_[ii_], names_[ii_]); }