
1 Oct
2006
1 Oct
'06
5:28 p.m.
Hi gurus, under RC_1_34, #include <boost/range.hpp> #include <boost/iterator/counting_iterator.hpp> int main() { boost::make_iterator_range( boost::make_counting_iterator(0), boost::make_counting_iterator(5) )[2]; } VC++7.1 and GCC3.4 says a warning something like "returning address of local variable or temporary". counting_iterator is implemented by iterator_facade, whose operator[] returns *value*. In fact, the result type of iterator_facade's operator[] seems unspecified. Is it possible to do forwarding of iterator's operator[], which is tried by iterator_range? -- Shunsuke Sogame