This is an archive of the discontinued LLVM Phabricator instance.

[coroutines] Switch to using std::experimental namespace per P0057R5
ClosedPublic

Authored by GorNishanov on Sep 29 2016, 9:39 PM.

Diff Detail

Event Timeline

GorNishanov retitled this revision from to [coroutines] Switch to using std::experimental namespace per P0057R5.
GorNishanov updated this object.
GorNishanov added reviewers: EricWF, rsmith, cfe-commits.
majnemer added inline comments.
lib/Sema/SemaDeclCXX.cpp
8279–8282

Is this clang-format'd?

EricWF commandeered this revision.Sep 30 2016, 1:01 AM
EricWF updated this revision to Diff 73000.
EricWF edited reviewers, added: GorNishanov; removed: EricWF.

Run patch through clang-format.

Hijacked to address review comments. @GorNishanov feel free to commandeer this revision back.

GorNishanov accepted this revision.Sep 30 2016, 10:17 AM
GorNishanov edited edge metadata.
This revision is now accepted and ready to land.Sep 30 2016, 10:17 AM
rsmith added inline comments.Sep 30 2016, 4:29 PM
lib/Sema/SemaDeclCXX.cpp
8157–8160

If you're going to track the namespace on creation, you need to add serialization code for your Sema::StdExperimentalNamespace storage. But I'd suggest taking a different approach: just treat this as a cache, and do a lookup for experimental within namespace std if the namespace is requested and not in the cache.

EricWF updated this revision to Diff 73181.Sep 30 2016, 5:54 PM
EricWF edited edge metadata.

Address comments about caching the std::experimental namespace. @rsmith could you please double check that lookupStdExperimentalNamespace() is correct?

EricWF marked an inline comment as done.Sep 30 2016, 5:55 PM
EricWF added inline comments.
lib/Sema/SemaDeclCXX.cpp
8157–8160

Done. Could you please double check I got it correct?

GorNishanov requested changes to this revision.Oct 3 2016, 9:54 AM
GorNishanov edited edge metadata.
test/SemaCXX/coroutines.cpp
1

Change to -fcoroutines-ts

This revision now requires changes to proceed.Oct 3 2016, 9:54 AM
rsmith accepted this revision.Oct 3 2016, 11:32 AM
rsmith edited edge metadata.
rsmith added inline comments.
include/clang/Sema/Sema.h
720–723

This is in the middle of a block of implicitly-declared library entities (std::bad_alloc, std::align_val_t). Please reorder it after these and rename it to include the word Cache.

GorNishanov commandeered this revision.Oct 3 2016, 3:33 PM
GorNishanov edited reviewers, added: EricWF; removed: GorNishanov.
This revision is now accepted and ready to land.Oct 3 2016, 3:33 PM
GorNishanov updated this revision to Diff 73378.Oct 3 2016, 5:20 PM
GorNishanov edited edge metadata.
GorNishanov marked an inline comment as done.

Implemented review feedback. Landing is imminent.

GorNishanov closed this revision.Oct 3 2016, 8:05 PM

Closed by: r283170 - [coroutines] Switch to using std::experimental namespace per P0057R5