[Bug libstdc++/87135] [C++17] unordered containers violate iterator validity requirements

2018-09-21 Thread fdumont at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87135

--- Comment #4 from François Dumont  ---
Author: fdumont
Date: Fri Sep 21 20:39:07 2018
New Revision: 264494

URL: https://gcc.gnu.org/viewcvs?rev=264494=gcc=rev
Log:
2018-09-21  François Dumont  

PR libstdc++/87135
* src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
Use __builtin_floor to compute _M_next_resize.
* testsuite/23_containers/unordered_set/hash_policy/71181.cc: Adapt.
* testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc:
Adapt.

Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/src/c++11/hashtable_c++0x.cc
   
trunk/libstdc++-v3/testsuite/23_containers/unordered_set/hash_policy/71181.cc
   
trunk/libstdc++-v3/testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc

[Bug libstdc++/87135] [C++17] unordered containers violate iterator validity requirements

2018-09-19 Thread fdumont at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87135

François Dumont  changed:

   What|Removed |Added

   Target Milestone|--- |9.0

[Bug libstdc++/87135] [C++17] unordered containers violate iterator validity requirements

2018-09-18 Thread fdumont at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87135

François Dumont  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED
   Assignee|unassigned at gcc dot gnu.org  |fdumont at gcc dot 
gnu.org

--- Comment #3 from François Dumont  ---
Rehash policy has been reviewed, rehash will take place only when reserved size
is overwhelmed.

[Bug libstdc++/87135] [C++17] unordered containers violate iterator validity requirements

2018-09-18 Thread fdumont at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87135

--- Comment #2 from François Dumont  ---
Author: fdumont
Date: Tue Sep 18 20:36:16 2018
New Revision: 264413

URL: https://gcc.gnu.org/viewcvs?rev=264413=gcc=rev
Log:
2018-09-18  François Dumont  

PR libstdc++/87135
* src/c++11/hashtable_c++0x.cc:
(_Prime_rehash_policy::_M_next_bkt): Return a prime no smaller than
requested size, but not necessarily greater.
(_Prime_rehash_policy::_M_need_rehash): Rehash only if target size is
strictly greater than next resize threshold.
* testsuite/23_containers/unordered_map/modifiers/reserve.cc: Adapt
test
to validate that there is no rehash as long as number of insertion is
lower or equal to the reserved number of elements.

Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/src/c++11/hashtable_c++0x.cc
   
trunk/libstdc++-v3/testsuite/23_containers/unordered_map/modifiers/reserve.cc

[Bug libstdc++/87135] [C++17] unordered containers violate iterator validity requirements

2018-08-30 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87135

--- Comment #1 from Jonathan Wakely  ---
This changed with https://wg21.link/lwg2156

[Bug libstdc++/87135] [C++17] unordered containers violate iterator validity requirements

2018-08-30 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87135

Jonathan Wakely  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-08-30
 CC||fdumont at gcc dot gnu.org
 Ever confirmed|0   |1