diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2017-01-29 20:59:02 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2017-01-29 20:59:02 +0000 |
commit | 3efcd4e54b8b374c90b362d763a726b9e025efae (patch) | |
tree | 11dad958946a61a8fc5051e9e9453d98a2742421 /test/std/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp | |
parent | 90c3c6c2a0a0afd28cbb5e117b278bdcdebfd85f (diff) | |
download | src-3efcd4e54b8b374c90b362d763a726b9e025efae.tar.gz src-3efcd4e54b8b374c90b362d763a726b9e025efae.zip |
Notes
Diffstat (limited to 'test/std/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp')
-rw-r--r-- | test/std/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/test/std/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp b/test/std/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp index e3a35362b186..13773fb1f5f8 100644 --- a/test/std/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp +++ b/test/std/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp @@ -12,6 +12,7 @@ // <deque> // template <class... Args> reference emplace_back(Args&&... args); +// return type is 'reference' in C++17; 'void' before #include <deque> #include <cstddef> @@ -49,15 +50,21 @@ void test(C& c1) { typedef typename C::iterator I; - typedef typename C::reference Ref; std::size_t c1_osize = c1.size(); +#if TEST_STD_VER > 14 + typedef typename C::reference Ref; Ref ref = c1.emplace_back(Emplaceable(1, 2.5)); +#else + c1.emplace_back(Emplaceable(1, 2.5)); +#endif assert(c1.size() == c1_osize + 1); assert(distance(c1.begin(), c1.end()) == static_cast<std::ptrdiff_t>(c1.size())); I i = c1.end(); assert(*--i == Emplaceable(1, 2.5)); +#if TEST_STD_VER > 14 assert(&(*i) == &ref); +#endif } template <class C> |