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

Cleanup C++ references in the language spec #215

Merged

Conversation

llvm-beanz
Copy link
Collaborator

@llvm-beanz llvm-beanz commented Apr 24, 2024

This just cleans up the C++ references in the document. It includes the following changes:

  • Made the name in the glossaries human readable rather than the ISO/IEC number, and included the year.
  • Changed two places where \glsdesc was called to \gls
  • Extended the description text to have the ISO/IEC number and full standard title.
  • Formalize general C/C++ references to C11 and C++11.

With this change references from \gls{...} will expand to a readable name (e.g. "ISO C Standard (2011)") rather than the ISO/IEC number.

This change also makes general references to C and C++ (the isoC and isoCPP glossary entries) point to C11 and C++11 respectively. We still have an explicit reference to C23 for integer value behaviors (C23 adopted two's compliement).

The intent of basing on C11 and C++11 is that HLSL 202x is unlikely to support most C++ features beyond C++98, but C11 and C++11 contained a lot of improvements and clarifications in wording. Also C++11 features are highly requested, so HLSL 202y will almost certainly gain C++11 (and maybe later version) features.

I did not want to base on newer C++ because the differences between HLSL and C++17+ are substantial, so the benefit of citing a base specification is limited in those cases.

We should continue to cite newer specifictions by version explicitly where it is helpful.

specs/language/basic.tex Outdated Show resolved Hide resolved
@damyanp
Copy link
Member

damyanp commented Apr 24, 2024

This change also makes general references to C and C++ (the isoC and isoCPP glossar entries)

Should that be "glossary"?

Copy link
Collaborator

@coopp coopp left a comment

Choose a reason for hiding this comment

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

looks good

This just cleans up the C++ references in the document. It includes the following changes:

* Made the name in the glossaries human readable rather than the ISO/IEC number, and included the year.
* Changed two places whwere \glsdesc was called to \gls
* Extended the description text to have the ISO/IEC number and full standard title.
* Formalize general C/C++ references to C11 and C++11.

With this change references from `\gls{...}` will expand to a readable name (e.g. "ISO C Standard (2011)") rather than the ISO/IEC number.

This change also makes general references to C and C++ (the isoC and isoCPP glossar entries) point to C11 and C++11 respectively. We still have an explicit reference to C23 for integer value behaviors (C23 adopted two's compliement).

The intent of basing on C11 and C++11 is that HLSL 202x is unlikely to support most C++ features beyond C++98, but C11 and C++11 contained a lot of improvements and clarifications in wording. Also C++11 features are highly requested, so HLSL 202y will almost certainly gain C++11 (and maybe later version) features.

I did not want to base on newer C++ because the differences between HLSL and C++17+ are substantial, so the benefit of citing a base specification is limited in those cases.

We should continue to cite newer specifictions by version explicitly where it is helpful.
@llvm-beanz llvm-beanz force-pushed the cbieneman/cleanup-c-c++-glossary branch from 17c08f4 to 8330ae3 Compare April 24, 2024 16:53
Copy link
Contributor

@dmpots dmpots left a comment

Choose a reason for hiding this comment

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

Small typo in description whwere

Changed two places whwere \glsdesc was called to \gls

Co-authored-by: S. Bharadwaj Yadavalli <[email protected]>
@llvm-beanz llvm-beanz merged commit 99d189c into microsoft:main Apr 24, 2024
3 checks passed
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 this pull request may close these issues.

5 participants