------- Comment #20 from hjl dot tools at gmail dot com 2008-12-11 17:33 ------- We created a temporary because
(gdb) bt #0 pair<const __gnu_pbds::test::basic_type, __gnu_pbds::test::basic_type> ( this=0x7fffffffc6c0, _...@0x7fffffffc750) at /export/build/gnu/gcc-work/build-x86_64-linux/x86_64-unknown-linux-gnu/libstdc++-v3/include/bits/stl_pair.h:106 #1 0x0000000000420a26 in __gnu_pbds::test::detail::regression_test_type_traits<__gnu_pbds::trie<__gnu_pbds::test::basic_type, __gnu_pbds::test::basic_type, __gnu_pbds::string_trie_e_access_traits<__gnu_pbds::test::basic_type, (char)97, (char)100, false, __gnu_cxx::throw_allocator<__gnu_pbds::test::basic_type> >, __gnu_pbds::pat_trie_tag, __gnu_pbds::null_trie_node_update, __gnu_cxx::throw_allocator<__gnu_pbds::test::basic_type> > >::extract_key (r_v...@0x7fffffffc750) at /export/gnu/src/gcc-work/gcc/libstdc++-v3/testsuite/util/regression/trait/assoc/type_trait.hpp:82 #2 0x0000000000413cef in __gnu_pbds::test::detail::regression_test_traits<__gnu_pbds::trie<__gnu_pbds::test::basic_type, __gnu_pbds::test::basic_type, __gnu_pbds::string_trie_e_access_traits<__gnu_pbds::test::basic_type, (char)97, (char)100, false, __gnu_cxx::throw_allocator<__gnu_pbds::test::basic_type> >, __gnu_pbds::pat_trie_tag, __gnu_pbds::null_trie_node_update, __gnu_cxx::throw_allocator<__gnu_pbds::test::basic_type> > >::extract_key (r_v...@0x7fffffffc750) at /export/gnu/src/gcc-work/gcc/libstdc++-v3/testsuite/util/regression/trait/assoc/trait.hpp:164 #3 0x000000000040cdfb in __gnu_pbds::test::detail::container_rand_regression_test<__gnu_pbds::trie<__gnu_pbds::test::basic_type, __gnu_pbds::test::basic_type, __gnu_pbds::string_trie_e_access_traits<__gnu_pbds::test::basic_type, (char)97, ---Type <return> to continue, or q <return> to quit---q Quit (gdb) p &__p $13 = ( const std::pair<const __gnu_pbds::test::basic_type, __gnu_pbds::test::basic_type> *) 0x7fffffffc750 (gdb) p this $14 = ( class std::pair<__gnu_pbds::test::basic_type, __gnu_pbds::test::basic_type> * const) 0x7fffffffc6c0 (gdb) Those 2 types are slightly different. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37144