--- //h/systems/boost/libs/tuple/test/tuple_test_bench.cpp Mon Sep 24 23:21:16 2001 +++ //c/dev/lib/boost_1_25_0_old/libs/tuple/test/tuple_test_bench.cpp Thu Nov 15 15:34:32 2001 @@ -169,12 +169,44 @@ #if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) double d = 2.7; A a; - tuple t(1, d, a); - const tuple ct = t; + tuple t(1, d, a, 2); + const tuple ct = t; - int i = tuples::get<0>(t); - int j = tuples::get<0>(ct); - BOOST_TEST(i == 1 && j == 1); + int i = tuples::get<0>(t); + int i2 = tuples::get<3>(t); + + BOOST_TEST(i == 1 && i2 == 2); + + int j = tuples::get<0>(ct); + BOOST_TEST(j == 1); + + tuples::get<0>(t) = 5; + BOOST_TEST(t.head == 5); + + // tuples::get<0>(ct) = 5; // can't assign to const + + double e = tuples::get<1>(t); + BOOST_TEST(e > 2.69 && e < 2.71); + + tuples::get<1>(t) = 3.14+i; + BOOST_TEST(tuples::get<1>(t) > 4.13 && tuples::get<1>(t) < 4.15); + + // tuples::get<4>(t) = A(); // can't assign to const + // dummy(tuples::get<5>(ct)); // illegal index + + ++tuples::get<0>(t); + BOOST_TEST(tuples::get<0>(t) == 6); + + dummy(i); dummy(i2); dummy(j); dummy(e); // avoid warns for unused variables +#else + double d = 2.7; + A a; + tuple t(1, d, a, 2); + + int i = tuples::get<0>(t); + int i2 = tuples::get<3>(t); + + BOOST_TEST(i == 1 && i2 == 2); tuples::get<0>(t) = 5; BOOST_TEST(t.head == 5); @@ -193,7 +225,7 @@ ++tuples::get<0>(t); BOOST_TEST(tuples::get<0>(t) == 6); - dummy(i); dummy(j); dummy(e); // avoid warns for unused variables + dummy(i); dummy(i2); dummy(e); // avoid warns for unused variables #endif }