Skip to content

Commit 9a3c28c

Browse files
committed
Revert "[libc++] Implement P0429R9 std::flat_map (llvm#98643)"
This reverts commit 0be1883.
1 parent 35a4bfb commit 9a3c28c

File tree

112 files changed

+13
-12038
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

112 files changed

+13
-12038
lines changed

libcxx/docs/ReleaseNotes/20.rst

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ Implemented Papers
4444
- P2985R0: A type trait for detecting virtual base classes (`Github <https://github.com/llvm/llvm-project/issues/105432>`__)
4545
- ``std::jthread`` and ``<stop_token>`` are not guarded behind ``-fexperimental-library`` anymore
4646
- P2674R1: A trait for implicit lifetime types (`Github <https://github.com/llvm/llvm-project/issues/105259>`__)
47-
- P0429R9: A Standard ``flat_map`` is partially implemented and ``flat_map`` is provided (`Github <https://github.com/llvm/llvm-project/issues/105190>`__)
4847

4948
Improvements and New Features
5049
-----------------------------

libcxx/docs/Status/Cxx23Papers.csv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
"`P2443R1 <https://wg21.link/P2443R1>`__","``views::chunk_by``","2022-02 (Virtual)","|Complete|","18",""
5353
"","","","","",""
5454
"`P0009R18 <https://wg21.link/P0009R18>`__","mdspan: A Non-Owning Multidimensional Array Reference","2022-07 (Virtual)","|Complete|","18",""
55-
"`P0429R9 <https://wg21.link/P0429R9>`__","A Standard ``flat_map``","2022-07 (Virtual)","|In Progress|","",""
55+
"`P0429R9 <https://wg21.link/P0429R9>`__","A Standard ``flat_map``","2022-07 (Virtual)","","",""
5656
"`P1169R4 <https://wg21.link/P1169R4>`__","``static operator()``","2022-07 (Virtual)","|Complete|","16",""
5757
"`P1222R4 <https://wg21.link/P1222R4>`__","A Standard ``flat_set``","2022-07 (Virtual)","","",""
5858
"`P1223R5 <https://wg21.link/P1223R5>`__","``ranges::find_last()``, ``ranges::find_last_if()``, and ``ranges::find_last_if_not()``","2022-07 (Virtual)","|Complete|","19",""

libcxx/include/CMakeLists.txt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -361,9 +361,6 @@ set(files
361361
__filesystem/recursive_directory_iterator.h
362362
__filesystem/space_info.h
363363
__filesystem/u8path.h
364-
__flat_map/flat_map.h
365-
__flat_map/key_value_iterator.h
366-
__flat_map/sorted_unique.h
367364
__format/buffer.h
368365
__format/concepts.h
369366
__format/container_adaptor.h
@@ -982,7 +979,6 @@ set(files
982979
ext/hash_set
983980
fenv.h
984981
filesystem
985-
flat_map
986982
float.h
987983
format
988984
forward_list

libcxx/include/__flat_map/flat_map.h

Lines changed: 0 additions & 1248 deletions
This file was deleted.

libcxx/include/__flat_map/key_value_iterator.h

Lines changed: 0 additions & 176 deletions
This file was deleted.

libcxx/include/__flat_map/sorted_unique.h

Lines changed: 0 additions & 31 deletions
This file was deleted.

libcxx/include/flat_map

Lines changed: 0 additions & 62 deletions
This file was deleted.

libcxx/include/module.modulemap

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1243,15 +1243,6 @@ module std [system] {
12431243
export *
12441244
}
12451245

1246-
module flat_map {
1247-
module flat_map { header "__flat_map/flat_map.h" }
1248-
module key_value_iterator { header "__flat_map/key_value_iterator.h" }
1249-
module sorted_unique { header "__flat_map/sorted_unique.h" }
1250-
1251-
header "flat_map"
1252-
export *
1253-
}
1254-
12551246
module format {
12561247
module buffer {
12571248
header "__format/buffer.h"

libcxx/modules/std.compat.cppm.in

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@ module;
5353
# if __has_include(<debugging>)
5454
# error "please update the header information for <debugging> in headers_not_available in utils/libcxx/header_information.py"
5555
# endif // __has_include(<debugging>)
56+
# if __has_include(<flat_map>)
57+
# error "please update the header information for <flat_map> in headers_not_available in utils/libcxx/header_information.py"
58+
# endif // __has_include(<flat_map>)
5659
# if __has_include(<flat_set>)
5760
# error "please update the header information for <flat_set> in headers_not_available in utils/libcxx/header_information.py"
5861
# endif // __has_include(<flat_set>)

libcxx/modules/std.cppm.in

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ module;
6464
#include <execution>
6565
#include <expected>
6666
#include <filesystem>
67-
#include <flat_map>
6867
#include <format>
6968
#include <forward_list>
7069
#if _LIBCPP_HAS_LOCALIZATION
@@ -162,6 +161,9 @@ module;
162161
# if __has_include(<debugging>)
163162
# error "please update the header information for <debugging> in headers_not_available in utils/libcxx/header_information.py"
164163
# endif // __has_include(<debugging>)
164+
# if __has_include(<flat_map>)
165+
# error "please update the header information for <flat_map> in headers_not_available in utils/libcxx/header_information.py"
166+
# endif // __has_include(<flat_map>)
165167
# if __has_include(<flat_set>)
166168
# error "please update the header information for <flat_set> in headers_not_available in utils/libcxx/header_information.py"
167169
# endif // __has_include(<flat_set>)

libcxx/modules/std/flat_map.inc

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,26 +8,24 @@
88
//===----------------------------------------------------------------------===//
99

1010
export namespace std {
11-
#if _LIBCPP_STD_VER >= 23
12-
// [flat.map], class template flat_map
11+
#if 0
12+
// [flat.map], class template flat_­map
1313
using std::flat_map;
1414

1515
using std::sorted_unique;
1616
using std::sorted_unique_t;
1717

1818
using std::uses_allocator;
1919

20-
// [flat.map.erasure], erasure for flat_map
20+
// [flat.map.erasure], erasure for flat_­map
2121
using std::erase_if;
2222

23-
#endif // _LIBCPP_STD_VER >= 23
24-
#if 0
25-
// [flat.multimap], class template flat_multimap
23+
// [flat.multimap], class template flat_­multimap
2624
using std::flat_multimap;
2725

2826
using std::sorted_equivalent;
2927
using std::sorted_equivalent_t;
3028

31-
// [flat.multimap.erasure], erasure for flat_multimap
29+
// [flat.multimap.erasure], erasure for flat_­multimap
3230
#endif
3331
} // namespace std

0 commit comments

Comments
 (0)