Skip to content

[dcl.attr.grammar] Add note about the semantic ignorability of standard attributes CWG2695 #6076

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

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions source/declarations.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8505,6 +8505,9 @@
the rules specifying to which entity or statement the attribute can apply or
the syntax rules for the attribute's \grammarterm{attribute-argument-clause}, if any.
\end{note}
\begin{note}
The \grammarterm{attribute}s specified in \ref{dcl.attr} have optional semantics: given a well-formed program, removing all instances of a particular such \grammarterm{attribute} results in a program whose observable behavior is a conforming realization of the original program.
Copy link
Member

@jensmaurer jensmaurer Feb 9, 2023

Choose a reason for hiding this comment

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

Suggested change
The \grammarterm{attribute}s specified in \ref{dcl.attr} have optional semantics: given a well-formed program, removing all instances of a particular such \grammarterm{attribute} results in a program whose observable behavior is a conforming realization of the original program.
The \grammarterm{attribute}s specified in \ref{dcl.attr} have optional semantics: given a well-formed program, removing all instances of any one of those \grammarterm{attribute}s results in a program whose set of possible executions ([intro.abstract]) for a given input is a subset of those of the original program for the same input, absent implementation-defined guarantees with respect to that \grammarterm{attribute}.

Copy link
Contributor

@JohelEGP JohelEGP Feb 9, 2023

Choose a reason for hiding this comment

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

([intro.abstract]) should be \iref{intro.abstract}.

\end{note}
An \grammarterm{attribute-token} is reserved for future standardization if
\begin{itemize}
\item it is not an \grammarterm{attribute-scoped-token} and
Expand Down