This is an archive of the discontinued LLVM Phabricator instance.

Heterogeneous lookup for unordered containers (P0919R3)
AbandonedPublic

Authored by zoecarver on Mar 27 2019, 9:20 AM.

Details

Summary

Implements P0919R3.

Diff Detail

Event Timeline

zoecarver created this revision.Mar 27 2019, 9:20 AM
zoecarver marked 3 inline comments as done.Mar 27 2019, 9:22 AM
zoecarver added inline comments.
include/__hash_table
36

Not quite sure if this is the correct place for this to go, but didn't want to duplicate code.

include/unordered_map
428

Also not sure if this is where this should go.

test/std/containers/key_equal.fail.cpp
27

These comments describe errors in other files. What line should they go on and how should they be formatted?

Friendly ping. I am waiting on this patch to get done before I submit a patch for precalculated hashes (which is mostly done).

Friendly ping. I am waiting on this patch to get done before I submit a patch for precalculated hashes (which is mostly done).

Please hold off on the pre-calculated hashes, since I have been informed that there will be a paper discussed in Cologne about reverting that change (removing that feature).

Here's a few nits; I'm still working on the code.

include/unordered_map
176

These all need a comment // C++20

363

// C++20 comments here too

428

This should go in <version>. Then there's a tool to regenerate the version tests.

test/std/containers/key_equal.fail.cpp
27

You just say expected-error@<filename>:<line number> ; and you can use * for the line number (in fact, you should).

zoecarver marked 2 inline comments as done.Jun 22 2019, 10:47 AM
zoecarver added inline comments.
test/std/containers/hetro_lookups.pass.cpp
1

I will split this into four tests.

test/std/containers/key_equal.fail.cpp
27

Will do.

zoecarver abandoned this revision.Oct 9 2020, 11:10 AM

Closing in favor of D87171.