It doesn't help modules to add extra includes for things that are already transitively included. What's needed is additional module exports.
This reverts commit 79702f7f593dece7afb67fec03df884d50525b96.
Paths
| Differential D153210
Revert "[libc++][Modules] Add missing includes and exports" AbandonedPublic Authored by iana on Jun 17 2023, 6:54 PM.
Details Summary It doesn't help modules to add extra includes for things that are already transitively included. What's needed is additional module exports. This reverts commit 79702f7f593dece7afb67fec03df884d50525b96.
Diff Detail
Event Timelineiana added a parent revision: D153209: Revert "[libc++][PSTL] Add missing includes to PSTL headers".Jun 17 2023, 6:59 PM iana added a child revision: D153211: [libc++][Modules] Make module exports consistent with header includes. iana removed a child revision: D153211: [libc++][Modules] Make module exports consistent with header includes.Jun 18 2023, 7:31 PM iana added a child revision: D153212: [libc++][Modules] Remove explicit exports from modules that `export *`.Jun 18 2023, 7:35 PM iana removed a child revision: D153212: [libc++][Modules] Remove explicit exports from modules that `export *`.Jun 20 2023, 12:47 PM iana added a child revision: D153212: [libc++][Modules] Remove explicit exports from modules that `export *`.Jun 20 2023, 4:08 PM Comment Actions This is removing a bunch of includes that are used by the files in which they appear(ed). I don't understand why we'd want to do this. Can you explain? This revision now requires changes to proceed.Jul 4 2023, 12:08 PM Comment Actions
This was a fix I originally did for some errors that I was seeing in D144322. It turned out that once I fixed these compile errors, I just got link errors. Those needed module exports to fix, and it was easier to go back to the original state to figure out which of the transitive includes, that are visible in a mega-module setup, are the load bearing ones for the linker. But I agree that in the end it it's more correct to have all of these includes so I'll drop this review. iana removed a child revision: D153212: [libc++][Modules] Remove explicit exports from modules that `export *`.Jul 4 2023, 10:14 PM
Revision Contents
Diff 535640 libcxx/include/__algorithm/ranges_minmax.h
libcxx/include/__algorithm/ranges_partition_copy.h
libcxx/include/__format/format_arg.h
libcxx/include/__functional/bind.h
libcxx/include/__functional/bind_back.h
libcxx/include/__functional/bind_front.h
libcxx/include/__functional/boyer_moore_searcher.h
libcxx/include/__functional/compose.h
libcxx/include/__functional/function.h
libcxx/include/__functional/not_fn.h
libcxx/include/__hash_table
libcxx/include/__locale
libcxx/include/__ranges/filter_view.h
libcxx/include/__ranges/join_view.h
libcxx/include/__ranges/range_adaptor.h
libcxx/include/__ranges/transform_view.h
libcxx/include/__ranges/zip_view.h
libcxx/include/__tree
libcxx/include/module.modulemap.in
libcxx/include/optional
libcxx/include/string_view
libcxx/include/tuple
libcxx/include/unordered_map
|