1 //===----------------------------------------------------------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 // UNSUPPORTED: c++03 10 11 // <unordered_map> 12 13 // template <class Key, class T, class Hash = hash<Key>, class Pred = equal_to<Key>, 14 // class Alloc = allocator<pair<const Key, T>>> 15 // class unordered_map 16 17 // unordered_map(unordered_map&& u) 18 // noexcept( 19 // is_nothrow_move_constructible<hasher>::value && 20 // is_nothrow_move_constructible<key_equal>::value && 21 // is_nothrow_move_constructible<allocator_type>::value); 22 23 // Validate whether the operation properly guards against ADL-hijacking operator& 24 25 #include <unordered_map> 26 27 #include "test_macros.h" 28 #include "operator_hijacker.h" 29 test()30void test() { 31 std::unordered_map<operator_hijacker, operator_hijacker> mo; 32 std::unordered_map<operator_hijacker, operator_hijacker> m(std::move(mo)); 33 } 34