forked from boostorg/iterator
The constructor would attempt to access a private member of the source iterator, which could have a different type and therefore have that member inaccessible. Also, the storage forwarding constructor had incorrect types used in the forwarding expressions, which caused further compilation errors. Fixes https://github.com/boostorg/iterator/issues/90.