Imported Upstream version 1.72.0
[platform/upstream/boost.git] / boost / test / data / monomorphic / initializer_list.hpp
index f46a085..812f41e 100644 (file)
@@ -77,8 +77,6 @@ public:
 
     enum { arity = 1 };
 
-    typedef std::vector<bool>::const_iterator iterator;
-
     //! Constructor copies content of initializer_list
     init_list( std::initializer_list<bool>&& il )
     : m_data( std::forward<std::initializer_list<bool>>( il ) )
@@ -92,6 +90,24 @@ public:
     { }
 #endif
 
+    struct non_proxy_iterator {
+        std::vector<bool>::const_iterator iterator;
+        non_proxy_iterator(std::vector<bool>::const_iterator &&it)
+        : iterator(std::forward<std::vector<bool>::const_iterator>(it))
+        {}
+
+        bool operator*() const {
+            return *iterator;
+        }
+
+        non_proxy_iterator& operator++() {
+            ++iterator;
+            return *this;
+        }
+    };
+
+    typedef non_proxy_iterator iterator;
+
     //! dataset interface
     data::size_t    size() const    { return m_data.size(); }
     iterator        begin() const   { return m_data.begin(); }