commit ba331e783334feb20f30f1b92a93d8c9d8f895be Author: Jonathan Wakely Date: Mon Jan 26 10:43:16 2015 +0000 * testsuite/23_containers/set/operations/2.cc: Add test for non-transparent comparison function. diff --git a/libstdc++-v3/testsuite/23_containers/set/operations/2.cc b/libstdc++-v3/testsuite/23_containers/set/operations/2.cc index 752bc7d..84ddd1f 100644 --- a/libstdc++-v3/testsuite/23_containers/set/operations/2.cc +++ b/libstdc++-v3/testsuite/23_containers/set/operations/2.cc @@ -128,6 +128,22 @@ test05() VERIFY( Cmp::count == 0); } +void +test06() +{ + // https://gcc.gnu.org/ml/libstdc++/2015-01/msg00176.html + // Verify the new function template overloads do not cause problems + // when the comparison function is not transparent. + struct I + { + int i; + operator int() const { return i; } + }; + + std::set s; + I i = { }; + s.find(i); +} int main() @@ -137,4 +153,5 @@ main() test03(); test04(); test05(); + test06(); }