Skip to content
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

18.11.4.3/4: class-name and namespace-name for closure and global scope #71

Open
hubert-reinterpretcast opened this issue Sep 23, 2019 · 3 comments

Comments

@hubert-reinterpretcast
Copy link

The response to CH 057 cuts out the interpretation that closure types and the global scope would be considered unnamed. This leaves another problem: get_name_v is now not supposed to be the empty string for closure types and for the global scope, but there is no clear name to produce.

@camio
Copy link

camio commented Oct 16, 2019

What would you suggest we do here?

@hubert-reinterpretcast
Copy link
Author

get_name_v should probably be the empty string for a closure type (yes, it means that is_unnamed for a meta-object type reflecting a closure type true, but the closure type is not an unnamed type). For the global scope, I guess :: is okay?

@Axel-Naumann
Copy link
Contributor

Axel-Naumann commented Feb 13, 2020

To me the current wording requires implementations to give out the impl-defined name of the closure type, hitting the case

for T reflecting a cv-unqualified type that is .. a class type, its class-name;

For the global namespace we hit

for T reflecting ... a namespace, its namespace-name;

That's broken - the global scope has no namespace-name. We can leave the first issue (leaking implementation-defined closure name) until after publication. The second issue is a wording defect; propose we modify the bullet (4.5.1) as follows:

(4.5.1) a namespace other than the global scope, its namespace-name;

As this is non-editorial we should fix this as an issue on the TS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants