--- testcrange.cpp.orig 2004-05-05 18:05:00.000000000 +0400 +++ testcrange.cpp 2004-05-06 09:56:27.000000000 +0400 @@ -101,6 +101,7 @@ #include #include #include +#include // contains a number, as a string struct str_sequence { @@ -189,14 +190,14 @@ clock_t start = clock(); test_func call = f; for ( int idx = 0; idx < times; ++idx) - for ( container::iterator b = c.begin(), e = c.end(); b != e; ++b) + for ( typename container::iterator b = c.begin(), e = c.end(); b != e; ++b) call(*b); clock_t end = clock(); double raw_secs = (double)(end - start) / CLOCKS_PER_SEC; // use func_calls iterators c = copy; // run all tests on exactly the same content of the container - typedef container::value_type value; + typedef typename container::value_type value; start = clock(); call = f; { using namespace func_calls; @@ -208,7 +209,7 @@ // use vtable_calls iterators c = copy; // run all tests on exactly the same content of the container - typedef container::value_type value; + typedef typename container::value_type value; start = clock(); call = f; { using namespace vtable_calls; @@ -220,7 +221,7 @@ // use EricNiebler's for_each c = copy; // run all tests on exactly the same content of the container - typedef container::value_type value; + typedef typename container::value_type value; start = clock(); call = f; { using namespace vtable_calls;