cplusplus / draft

C++ standards drafts
http://www.open-std.org/jtc1/sc22/wg21/
5.7k stars 751 forks source link

Assorted review comments for P1787R6 #4403

Open tkoeppe opened 3 years ago

tkoeppe commented 3 years ago

See #4379 for context.

Please feel free to derive new Issues from this material or email the wording reflectors.

Also feel free to directly edit the posts below with updated information.

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529197110

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r528984720

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r528987386

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529003267

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r528987146

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529018079

Addressed below: https://github.com/cplusplus/draft/issues/4403#issuecomment-743321663

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529026436

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529028230

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r530176892

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r530681396

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r530874564

Please consider opening a separate issue or a PR for this.

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r530894725

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r530907561

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531133933

PR welcome.

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531163099

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531192830

Might be worth a small PR?

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r532044227 (request for example)

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r532045961 -- typo, @opensdh?

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r533011119 (question for clarification)

@opensdh says:

It means the latter; "the scope of X" is used throughout to mean that introduced by X (which might be an entity or a grammar production like a compound-statement) or its declaration(s). We could of course define an explicit term for it in [basic.scope.scope] if desired.

consider whether we need an explicit term

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r533045446 (define "component name")

See also https://github.com/cplusplus/draft/pull/4379#discussion_r529180504

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r533048853 and https://github.com/cplusplus/draft/pull/4379#discussion_r533050251 -- meaning of parentheticals

also https://github.com/cplusplus/draft/pull/4379#discussion_r529122078, https://github.com/cplusplus/draft/pull/4379#discussion_r529162570

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r533055065 - @jensmaurer?

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r533059181 -- prefer to use bullets

also https://github.com/cplusplus/draft/pull/4379#discussion_r531226311

also https://github.com/cplusplus/draft/pull/4379#discussion_r531126457

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531348083, https://github.com/cplusplus/draft/pull/4379#discussion_r531348083 -- requests for rewording

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531230199

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531098787 (@tkoeppe )

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r530775310

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r530208739 -- request for rewording

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531169215

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531205309 -- ambiguous pronoun

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531210196 -- placement of cross reference

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r531212307, https://github.com/cplusplus/draft/pull/4379#discussion_r531216483 -- questions for clarification

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529032752 -- define "program point"

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529036870 -- define "type-only"

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529063125 - request for rewording

also https://github.com/cplusplus/draft/pull/4379#discussion_r529066769, https://github.com/cplusplus/draft/pull/4379#discussion_r529075374, https://github.com/cplusplus/draft/issues/4403#issuecomment-743311550

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529092079 -- what's the point?

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529099209 -- what is it?

opensdh commented 3 years ago

Having written some things at #4379, I now realize this is the correct place for practical reasons; I'll make further comments here. I don't have the permissions to edit the points in place, though, so I'm not sure how to attach them to the correct comment-identifying comment.

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529104829

tkoeppe commented 3 years ago

@opensdh: Thank you! I copied some of the material out. I don't yet know how to organize this best. Could you maybe just start a new post, leading with the original comment link, and maybe (if you can) also link the comment here that lists it? But I can also do that latter step later.

I'm just trying to somehow keep track of everything, this is far from thought out :-(

Thanks again!

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529110651

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529121667 -- "constructor name"

tkoeppe commented 3 years ago

@opensdh: Dealing with the parentheticals is perhaps the most fruitful post-merge cleanup for now, since it seems to have the biggest potential for confusion.

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529127228 -- request for rewrite

also https://github.com/cplusplus/draft/pull/4379#discussion_r529052759

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529194123 -- clarify pronoun

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529188884

tkoeppe commented 3 years ago

https://github.com/cplusplus/draft/pull/4379#discussion_r529189790 -- "result of what"

opensdh commented 3 years ago

subject

We need to actually say that such a scope is introduced, which was the motivation for the current phrasing. If definitions must be in terms of "to be", we can say

A parameter-declaration-clause P introduces a scope. A function parameter scope is any such scope. The scope includes P.

(where the last bit is put in its own sentence to connect to the subsequent potential expansions of the scope). If we can use "called", we can use the simpler formulation

A parameter-declaration-clause P introduces a scope, called a function parameter scope, that includes P.

Whatever the rules for definitions are, we should document them.

opensdh commented 3 years ago

P1787R6 doesn't introduce this (poor) definition of "extends"; that should be a separate issue.

opensdh commented 3 years ago

Proposal:

or that nominates a class other than with an elaborated-type-specifier of the form class identifier