1*df9167bfSStephan T. Lavavej //===----------------------------------------------------------------------===//
2*df9167bfSStephan T. Lavavej //
3*df9167bfSStephan T. Lavavej // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*df9167bfSStephan T. Lavavej // See https://llvm.org/LICENSE.txt for license information.
5*df9167bfSStephan T. Lavavej // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*df9167bfSStephan T. Lavavej //
7*df9167bfSStephan T. Lavavej //===----------------------------------------------------------------------===//
8*df9167bfSStephan T. Lavavej 
9*df9167bfSStephan T. Lavavej // <map>
10*df9167bfSStephan T. Lavavej 
11*df9167bfSStephan T. Lavavej // class multimap
12*df9167bfSStephan T. Lavavej 
13*df9167bfSStephan T. Lavavej // multimap();
14*df9167bfSStephan T. Lavavej 
15*df9167bfSStephan T. Lavavej #include <map>
16*df9167bfSStephan T. Lavavej 
17*df9167bfSStephan T. Lavavej #include "test_macros.h"
18*df9167bfSStephan T. Lavavej 
19*df9167bfSStephan T. Lavavej struct X {
20*df9167bfSStephan T. Lavavej   std::multimap<int, X> m;
21*df9167bfSStephan T. Lavavej   std::multimap<int, X>::iterator i;
22*df9167bfSStephan T. Lavavej   std::multimap<int, X>::const_iterator ci;
23*df9167bfSStephan T. Lavavej #if TEST_STD_VER <= 17
24*df9167bfSStephan T. Lavavej   // These reverse_iterator specializations require X to be complete in C++20.
25*df9167bfSStephan T. Lavavej   std::multimap<int, X>::reverse_iterator ri;
26*df9167bfSStephan T. Lavavej   std::multimap<int, X>::const_reverse_iterator cri;
27*df9167bfSStephan T. Lavavej #endif // TEST_STD_VER <= 17
28*df9167bfSStephan T. Lavavej };
29