Skip to content

Conversation

@lprv
Copy link
Contributor

@lprv lprv commented Jan 26, 2025

Not all templates are instantiated, so limiting this definition to the process template instantiation seems wrong.

Adding braced-init-list updates the definition to match the changes made by P2308.

@tkoeppe
Copy link
Contributor

tkoeppe commented Feb 10, 2025

See also #7396.

@tkoeppe tkoeppe requested a review from jensmaurer February 10, 2025 10:36
@eisenwave eisenwave added the P2-Bug Presentational errors and omissions label Nov 6, 2025
@tkoeppe
Copy link
Contributor

tkoeppe commented Nov 7, 2025

@jensmaurer could you have a look? Seems reasonable to me.

source/intro.tex Outdated
\grammarterm{id-expression} in the comma-separated
\grammarterm{type-id},
\grammarterm{id-expression}, or
\grammarterm{braced-init-list} in the comma-separated
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is incomplete; it could also be the name of a template (as argument for a template template parameter) and arbitrary expressions.

And I'm not seeing braced-init-list in [temp.names], where does this come in?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Expressions are covered by constant-expression; braced-init-list was restored in [temp.names] by #8487. Template template arguments were covered by id-expression at the time this PR was opened, but that was changed to template-name in the definition of template-argument since then.

Rather than keeping the two definitions in sync, I updated this PR to refer to the template-argument production instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P2-Bug Presentational errors and omissions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants