- Notifications
You must be signed in to change notification settings - Fork 15.2k
[libc++] Make <map> std::map constexpr as part of P3372R3 #134330
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
vinay-deshmukh wants to merge 316 commits into llvm:main Choose a base branch from vinay-deshmukh:vinay-issue-128660-P3372-constexpr-map
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline, and old review comments may become outdated.
Open
Changes from 250 commits
Commits
Show all changes
316 commits Select commit Hold shift + click to select a range
900d449 pass map.modifiers/emplace_hint.pass.cpp
vinay-deshmukh 71b4ffb WIP:Merge remote-tracking branch 'upstream/main' into vinay-issue-128…
vinay-deshmukh f470158 at.pass.cpp passes again
vinay-deshmukh 687ca5f iterator.pass.cpp passes
vinay-deshmukh eb3c0f8 move_assign.pass.cpp constexpr fixed
vinay-deshmukh b5577a6 move_alloc.pass.cpp constexpr fixed, other remains
vinay-deshmukh dda93ff copy_assign.pass.cpp constexpr fixed, other remains
vinay-deshmukh ab52bea erase_iter.pass.cpp
vinay-deshmukh f9a4e70 fix typo
vinay-deshmukh 37110f1 map.ops pass
vinay-deshmukh fedf39b Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh f3b5970 Partially fix assign_initializer_list.pass.cpp
vinay-deshmukh 1d9e310 Fix assign_initializer_list.pass.cpp
vinay-deshmukh d8095a7 fix placement new to use std::addressof
vinay-deshmukh 01d8633 fix copy_assign.pass.cpp
vinay-deshmukh e2f3b8f move alloc failure location
vinay-deshmukh 0cce96e git-clang-format upstream/main
vinay-deshmukh 2b8603c featuer test generation
vinay-deshmukh fa77a07 <__type_traits/is_constant_evaluated.h>
vinay-deshmukh 62f137a __node_value_type
vinay-deshmukh 4cb5709 Use __libcpp_is_constant_evaluated, still at 7 failures
vinay-deshmukh 8fbff81 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 8b84759 fix feature gen?
vinay-deshmukh c1b827d feature macros
vinay-deshmukh 664b3c6 ? lang support
vinay-deshmukh 92482b7 cf
vinay-deshmukh e24ff11 restore pair to main
vinay-deshmukh a492d0d back at 7 failures due to min_allocator.h
vinay-deshmukh a205de2 cf?
vinay-deshmukh adc5f50 insert_range.pass.cpp, empty passes, stuck at next
vinay-deshmukh 47943d9 min_allocator to main
vinay-deshmukh db54c2c tree
vinay-deshmukh 1e3bd1c Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 75e3cd1 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh bd0d751 clang format
vinay-deshmukh b73e365 fix CI?
vinay-deshmukh b9d4d95 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 254b686 try CI fix?
vinay-deshmukh e48e585 readability-identifier-naming
vinay-deshmukh 281e462 libcpp-hide-from-abi
vinay-deshmukh 812c167 cf
vinay-deshmukh e631266 _Args not Args
vinay-deshmukh 3a24e31 map?
vinay-deshmukh 1744e8a generic-cxx03
vinay-deshmukh a31f09b libcpp-hide-from-abi
vinay-deshmukh 8c401a6 cxx03
vinay-deshmukh 7c72e0e tmp
vinay-deshmukh 54107af WIP???
vinay-deshmukh a34f7af Merge commit 'afcf76bda18c09cffd88cb562768385f97ebf894' into vinay-is…
vinay-deshmukh 7dfa7c1 constexpr test ID*
vinay-deshmukh 1549261 at.pass.cpp works
vinay-deshmukh 17f8361 empty.pass.cpp
vinay-deshmukh e9bdbb7 index_key.pass.cpp -> static_assert
vinay-deshmukh c695518 iterator.pass.cpp
vinay-deshmukh 0790081 size.pass.cpp
vinay-deshmukh 16828a5 map.cons/assign_initializer_list.pass.cpp
vinay-deshmukh 0dbe3d5 map.modifiers/emplace.pass.cpp
vinay-deshmukh e2938a5 map.modifiers/emplace_hint.pass.cpp
vinay-deshmukh ce082a3 map.modifiers/erase_key.pass.cpp
vinay-deshmukh 64b93db map.ops/count.pass.cpp
vinay-deshmukh bed849d map.ops/equal_range.pass.cpp
vinay-deshmukh be3ac37 map.ops/find.pass.cpp
vinay-deshmukh f5a26ab map.ops/upper_bound.pass.cpp
vinay-deshmukh 07034d1 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh e28df17 clang-format
vinay-deshmukh 72912ac fix error
vinay-deshmukh 9356bb2 value_comp bad merge
vinay-deshmukh 2a1d335 _root cannot be redeclared
vinay-deshmukh 33fea96 remove base and cast
vinay-deshmukh 0f3d0f1 copy_assign.pass.cpp
vinay-deshmukh c2f8451 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh cca780a fails largely because of constexpr limit, because for Container<int,…
vinay-deshmukh f1fabdc use __node_traits::construct over placement new, copy_assing copy_all…
vinay-deshmukh d1de5b1 cf
vinay-deshmukh 51cb5e2 note for failure
vinay-deshmukh 446a15a TODO
vinay-deshmukh f95216d Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh d08023d add constexpr cpp26
vinay-deshmukh d2a453a Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 1d9a7e9 mistake
vinay-deshmukh 61cc3cb 6 failures
vinay-deshmukh 4b6bd5f something
vinay-deshmukh a563260 clean
vinay-deshmukh 325c9b7 clean more
vinay-deshmukh a5d575d fix same_as allocate issues in index_rv_key
vinay-deshmukh 1c46326 failures at move_alloc and move_assign
vinay-deshmukh f636597 allocator for copy_assign
vinay-deshmukh e57be9e index_rv_key at it again
vinay-deshmukh d96f38b haxxx
vinay-deshmukh ca06b8a Temporary solution for UB & restriction
vinay-deshmukh ef90a64 copy_assign.pass.cpp
vinay-deshmukh 9f27c4f Finally only 2 tests fail
vinay-deshmukh 36c1cc9 insert_key.pass.cpp
vinay-deshmukh 8cafae7 Move_alloc.pass.cpp fails
vinay-deshmukh d72cf89 add docs
vinay-deshmukh a6c74cf move_alloc and move_assign, fail in __insert_unique_from_orphaned_nod…
vinay-deshmukh 8da6b53 kind of fixed it, almost
vinay-deshmukh c4a3034 Fix for move_assign
vinay-deshmukh 77a9d5d almost a fix for move_assign.pass.cpp
vinay-deshmukh 27604a5 insert_range_maps_sets.h, needs a lot of constexpr depth
vinay-deshmukh d8d6278 add why sfinae
vinay-deshmukh 187b86f insert_and_emplace_allocator_requirements.pass.cpp passes
vinay-deshmukh b3deeb1 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 2143eb5 use the typedef
vinay-deshmukh 209f88d remove concepts, collapse unnecessary sfinae
vinay-deshmukh a7235cb some docs
vinay-deshmukh ee0a6b5 breaks correctly
vinay-deshmukh c8e907f still correct failures with cleanup
vinay-deshmukh bfea79f more cleans
vinay-deshmukh 03a6a4a more clean
vinay-deshmukh 4fbb472 PR review comment
vinay-deshmukh b3e9926 include __memory/construct_at
vinay-deshmukh efd9f96 `Assertion `getConstructController()->isInAllocatorConstruct()' faile…
vinay-deshmukh ae13527 one clean
vinay-deshmukh ebfc34d cleanup for libcxx/test/support/container_test_types.h
vinay-deshmukh 4133867 clean back
vinay-deshmukh 78fc8ca clang-format
vinay-deshmukh 0aa760e adjust constexpr steps arg
vinay-deshmukh 2edf9ac clean
vinay-deshmukh 7760d51 Redundant check
vinay-deshmukh 06e38db Add ReleaseNotes
vinay-deshmukh 71e88c8 use allocator as template arg and allocator_traits, tests passed in c…
vinay-deshmukh 88f7743 cf
vinay-deshmukh ae3a7b5 hide from abi
vinay-deshmukh 85d3a4d Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 2f689f9 use allocator as template arg and allocator_traits, tests passed in c…
vinay-deshmukh bbc637a remove UB using list
vinay-deshmukh 99c2829 cf
vinay-deshmukh 5afe3a4 doc-fix
vinay-deshmukh ca72744 Replace __value_ with __get_value() for __tree_node
vinay-deshmukh 47b71f8 miss typo
vinay-deshmukh d16fabf fix ctor for cpp03 buffer
vinay-deshmukh dcd4cb4 cf
vinay-deshmukh 08f5328 rename in map as well
vinay-deshmukh 4b5609c cf
vinay-deshmukh d24dbc2 include
vinay-deshmukh 9c47574 more?
vinay-deshmukh 8b1278e hide from abi
vinay-deshmukh 2dcaacf Attempt fix for gcc-15 std=c++26
vinay-deshmukh 3bc7443 try
vinay-deshmukh 5443a8f format and arm fix attempt'
vinay-deshmukh 96a1ec1 cf
vinay-deshmukh 55bf409 fix non-ascii
vinay-deshmukh f829a9f =default;
vinay-deshmukh 3eba630 noop
vinay-deshmukh b989b99 abi
vinay-deshmukh 47e4c08 constexpr-dtor
vinay-deshmukh b241636 terser
vinay-deshmukh 88ef82a WIP: gcc-15 failure investigation
vinay-deshmukh f5cc9c3 redundant launder
vinay-deshmukh c1a776e single branch
vinay-deshmukh 4e905fe remove the & from buffer
vinay-deshmukh 225b03c remove _LIBCPP_STANDALONE_DEBUG
vinay-deshmukh 1b01b80 cf
vinay-deshmukh 62df872 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh e035df9 Merge branch 'main' into vinay-issue-128660-map-ub
vinay-deshmukh fe18363 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 47a1376 fix the first failure with ptr_ is uninitialized
vinay-deshmukh ca741fe fix map
vinay-deshmukh 5823758 revert min_allocator default construction
vinay-deshmukh 675a0ca Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 54951dd Merge branch 'vinay-issue-128660-map-ub' of out:vinay-deshmukh/llvm-p…
vinay-deshmukh 5494264 _ptr is not initialized
vinay-deshmukh 459f610 Merge branch 'vinay-issue-128660-map-ub' into vinay-issue-128660-P337…
vinay-deshmukh bcb160b disable test for g++-15
vinay-deshmukh 72f203d remove debugging attempts
vinay-deshmukh 968b396 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 19c4395 Remove debugging attempt
vinay-deshmukh ad96d23 Fix testing at runtime as well
vinay-deshmukh 27e2117 Description and links
vinay-deshmukh 9fa48e6 partial fix for }
vinay-deshmukh 666f6a8 restore TEST_HAS_NO_EXCEPTIONS
vinay-deshmukh 7641f61 Remove extra include
vinay-deshmukh 549703c remove set -x
vinay-deshmukh 9147482 undo debug attempts
vinay-deshmukh 1d4eed8 Refactor libcxx/test/std/containers/associative/map/map.modifiers/ins…
vinay-deshmukh 9cdfd46 CWG1514: key() is not constexpr
vinay-deshmukh f717c27 static can't be constexpr
vinay-deshmukh 580a70d Refactor libcxx/test/std/containers/associative/map/map.cons/from_ran…
vinay-deshmukh ad00104 Refactor libcxx/test/std/containers/associative/map/map.cons/copy_all…
vinay-deshmukh ba628f0 Refactor libcxx/test/std/containers/associative/map/map.cons/copy.pas…
vinay-deshmukh e1f6851 Refactor libcxx/test/std/containers/associative/map/map.access/index_…
vinay-deshmukh f921550 Refactor libcxx/test/std/containers/associative/map/map.access/index_…
vinay-deshmukh 8b752b4 grammar
vinay-deshmukh 7315286 Pass the generic-hardening-mode-debug
vinay-deshmukh 32a7276 cf and remove non-ascii
vinay-deshmukh fa5d9d2 Remove hide abi
vinay-deshmukh b61c18e Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 2ef6175 obsolete comment
vinay-deshmukh 8c78c45 Add FIXME
vinay-deshmukh 7616770 Apply cf
vinay-deshmukh a6c32e1 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh a6eb443 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh dcc1533 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 28ed94b cf
vinay-deshmukh 3bbf31d add constexpr
vinay-deshmukh a209fb5 cf
vinay-deshmukh b083bea Move ReleaseNotes to Implemented papers
vinay-deshmukh d1dfb7f Fix order of annotations
vinay-deshmukh cdac01f node-handle doc
vinay-deshmukh 0e10680 unrelated defaulting
vinay-deshmukh c7307a8 undo previous
vinay-deshmukh b556c84 unnecessary destructor for __tree_node_base
vinay-deshmukh 8ecbbb5 Remove constexpr from cpp03 code
vinay-deshmukh 2f2bec2 Unnecessary annotation on deleted function
vinay-deshmukh 2661937 simplify type_trait
vinay-deshmukh c28aac0 Allow runtime decision for __insert_unique_from_orphaned_node
vinay-deshmukh c448834 Allow runtime decision for __assign_value
vinay-deshmukh f732308 local cf
vinay-deshmukh d358aed Simplify at.pass.cpp
vinay-deshmukh 986e713 use TEST_IS_CONSTANT_EVALUATED over libcxx function
vinay-deshmukh 5c84f1f Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 839c373 Remove extra arm CI hack
vinay-deshmukh 80b2f06 missing space
vinay-deshmukh c5d73dd Avoid creating a __tmp
vinay-deshmukh c4a0092 explicit copy
vinay-deshmukh d4a0430 Remove constexpr annotations from multimap
vinay-deshmukh 87d28d5 CI fix for clang <=20
vinay-deshmukh 3193936 Check clang<20 only for clang based compilers
vinay-deshmukh e93ea65 Fix apple-clang macro lookup
vinay-deshmukh b2ccf29 Fixme, not todo
vinay-deshmukh 29acf01 Updated FIXME
vinay-deshmukh 20a256c Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 2e4f30b and manual fixes, Merge remote-tracking branch 'upstream/main' into v…
vinay-deshmukh 9f931f5 Remove assert(test());
vinay-deshmukh bee52bf clang-format?
vinay-deshmukh c493c71 Synopsis attach: // constexpr since C++26
vinay-deshmukh 3b772fd Revert "Remove assert(test());"
vinay-deshmukh 5bba72f Fix the sed script
vinay-deshmukh 57183b4 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh f2a5a94 Add constexpr to the signature
vinay-deshmukh b4fed32 remove arm and freebsd from warning
vinay-deshmukh 66b4d6f comments alignment
vinay-deshmukh 6258613 unnecessary comment
vinay-deshmukh e0e9f9f remove the second //
vinay-deshmukh 69bb9d3 formatting redo
vinay-deshmukh adc2589 Add constexpr to test signatures
vinay-deshmukh e751289 add constexpr for insert_node_type and insert_node_type_hint
vinay-deshmukh 483a33b remove releasenote from 22.rst
vinay-deshmukh 18c8d32 align spaces
vinay-deshmukh ecb88ef more cleanup
vinay-deshmukh 0bcdb71 Change every static_cast to std::__static_fancy_pointer_cast in __tree
vinay-deshmukh a03604f Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 6d3ebd3 Merge branch 'main' into vinay-issue-128660-P3372-constexpr-map
vinay-deshmukh 2701291 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 41847ef Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh fd62583 Merge remote-tracking branch 'upstream/main' into vinay-issue-128660-…
vinay-deshmukh 731a987 merge.pass.cpp
vinay-deshmukh 4af614d insert_node_type*
vinay-deshmukh 376399d Use only _, and not __ in names
vinay-deshmukh File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You don't need to add this release note for a partially implemented paper. You can update the status page though.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was looking at this PR for a reference:
https://github.com/llvm/llvm-project/pull/137453/files
So Cxx2cPapers.csv already has an entry for it:
llvm-project/libcxx/docs/Status/Cxx2cPapers.csv
Line 107 in f5ae102
and I originally added it here using this as a reference:
llvm-project/libcxx/docs/ReleaseNotes/21.rst
Line 51 in f5ae102
So perhaps should I just remove this line for this review?removed in 483a33b