diff options
author | Marshall Clow <mclow.lists@gmail.com> | 2013-07-10 18:01:34 +0000 |
---|---|---|
committer | Marshall Clow <mclow.lists@gmail.com> | 2013-07-10 18:01:34 +0000 |
commit | 48c9fe29b2e4d09ead9b21b3cfddd68f284cc046 (patch) | |
tree | f66dca3846ce00eee5f9bf8dc4bc492948c592bb /libcxx | |
parent | b34939aaf5ea8755a03a6a6c4fc406e5fb2b191b (diff) | |
download | bcm5719-llvm-48c9fe29b2e4d09ead9b21b3cfddd68f284cc046.tar.gz bcm5719-llvm-48c9fe29b2e4d09ead9b21b3cfddd68f284cc046.zip |
Improved tests (and fixed a bug in the tests); thanks to Richard Smith for the suggestion
llvm-svn: 186022
Diffstat (limited to 'libcxx')
-rw-r--r-- | libcxx/test/utilities/utility/exchange/exchange.pass.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/libcxx/test/utilities/utility/exchange/exchange.pass.cpp b/libcxx/test/utilities/utility/exchange/exchange.pass.cpp index f8b366ac209..620b4149d1d 100644 --- a/libcxx/test/utilities/utility/exchange/exchange.pass.cpp +++ b/libcxx/test/utilities/utility/exchange/exchange.pass.cpp @@ -23,7 +23,11 @@ int main() assert ( std::exchange ( v, 23 ) == 12 ); assert ( v == 23 ); assert ( std::exchange ( v, 67.2 ) == 23 ); - assert ( v = 67 ); + assert ( v == 67 ); + + assert ((std::exchange<int, float> ( v, {} )) == 67 ); + assert ( v == 0 ); + } { @@ -40,8 +44,15 @@ int main() assert ( s3 == s2 ); assert ( std::exchange ( s3, "Hi Mom!" ) == s2 ); assert ( s3 == s1 ); - assert ( std::exchange ( s3, "" ) == s1 ); + + s3 = s2; // Dad + assert ( std::exchange ( s3, {} ) == s2 ); + assert ( s3.size () == 0 ); + + s3 = s2; // Dad + assert ( std::exchange ( s3, "" ) == s2 ); assert ( s3.size () == 0 ); } + #endif } |