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

[format.arg] Declaration mismatch #3461

Closed
cpplearner opened this issue Nov 15, 2019 · 3 comments · Fixed by #3465
Closed

[format.arg] Declaration mismatch #3461

cpplearner opened this issue Nov 15, 2019 · 3 comments · Fixed by #3465
Assignees

Comments

@cpplearner
Copy link
Contributor

An exposition-only constructor of basic_format_arg is declared as

draft/source/utilities.tex

Lines 21583 to 21584 in 6deb181

template<class T>
explicit basic_format_arg(const T* p) noexcept; // \expos

in the class template definition, but const is missing in the description:

template<class T> explicit basic_format_arg(T* p) noexcept;

@jensmaurer
Copy link
Member

Given the definition of "value", it seems sufficiently obvious that the description is missing the "const" to fix this editorially.

@cpplearner
Copy link
Contributor Author

Sorry, it seems that this constructor makes more sense without const. This constructor should be selected when the argument is of type void*. But if the parameter is const T* then template<class T> basic_format_arg(const T&) is a better match.

Can we revert #3465 and make it a LWG issue?

@jensmaurer
Copy link
Member

What we did editorially is making the synopsis identical to the function definition. Sorry that this seemingly went the wrong way.

Please feel free to have an LWG issue created, but reverting the editorial fix would re-introduce the inconsistency, which seems to make the situation worse.

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

Successfully merging a pull request may close this issue.

2 participants