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

Restructure CA 107 functionally equivalent IFNDR note #3807

Conversation

hubert-reinterpretcast
Copy link
Contributor

Adjusts a note identified in #3782 as being difficult to parse.

Adjusts a note identified in cplusplus#3782 as being difficult to
parse.
@@ -1662,8 +1662,7 @@
\end{codeblock}
\end{example}
This similarity includes the situation where a program is ill-formed, no diagnostic required,
when the meaning of the program depends on whether two constructs are equivalent,
and they are functionally equivalent but not equivalent.
when the meaning of the program would be changed by considering constructs that are merely functionally equivalent to be equivalent.
Copy link
Member

Choose a reason for hiding this comment

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

Would saying "because the meaning of the program depends ..." instead of "when the meaning of the program depends ..." help? Or "due to the meaning of the program depending on ..."

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Although I originally argued against having this be different from the temp.over.link text, I think the new formulation here points at the rationale better. I also found the number of commas awkward before (but had no alternative ready).

Copy link
Member

Choose a reason for hiding this comment

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

I agree that it's formally equivalent to ask "are they functionally equivalent but not equivalent and does the meaning depend on whether they're equivalent?" or to ask "would the meaning be changed if we considered functionally-equivalent constructs to be equivalent?" However, given that this is referring to normative wording specified elsewhere, I'd like to keep the descriptive approach broadly the same between the two.

How about replacing this sentence with:

"As specified in [temp.over.link], if the validity or meaning of the program depends on whether two constructs are equivalent, and they are functionally equivalent but not equivalent, the program is ill-formed, no diagnostic required."

If we're not happy with that formulation, we should change it everywhere.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

How about replacing this sentence with:

"As specified in [temp.over.link], if the validity or meaning of the program depends on whether two constructs are equivalent, and they are functionally equivalent but not equivalent, the program is ill-formed, no diagnostic required."

I'm fine with that. @burblebee, as the person who raised the readability concern with respect to the note, do you have an opinion on this?

Copy link
Contributor

Choose a reason for hiding this comment

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

I too find @zygoloid's suggestion clear and straight-forward, and easier to parse than the current proposal.

@burblebee: What do you think? Could you please update the PR if you agree?

Copy link
Member

Choose a reason for hiding this comment

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

@burblebee , ping?

Copy link
Contributor

Choose a reason for hiding this comment

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

@hubert-reinterpretcast: maybe just go ahead and make the update?

@zygoloid
Copy link
Member

@burblebee Do you have an opinion on this?

@wg21bot wg21bot added the needs rebase The pull request needs a git rebase to resolve merge conflicts. label Jan 19, 2022
@hubert-reinterpretcast
Copy link
Contributor Author

Done by Jens and merged: #5071

@hubert-reinterpretcast hubert-reinterpretcast deleted the ca107_clarify_merely_func_equiv branch May 10, 2022 23:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs rebase The pull request needs a git rebase to resolve merge conflicts.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants