[PR #953] Apply [[nodiscard]] to functions returning error codes #24423

Open
opened 2026-01-31 09:03:14 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/953

State: closed
Merged: Yes


Summary of the Pull Request

Functions returning status codes should use nodiscard as mentioned recently by @adiviness.

They should also use noexcept, but that's a much more invasive change, so this issue is just about nodiscard.

References

#897

PR Checklist

  • Closes Terminal: UIA test harness (#951)
  • CLA signed. If not, go over here and sign the CLA
  • Tests added/passed
  • Requires documentation to be updated
  • I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #897

Detailed Description of the Pull Request / Additional comments

  • applied nodiscard for all HRESULT, LRESULT, and NTSTATUS functions
  • fixed IntelliSense declaration complaints leading to function not
    implemented warnings
  • deleted declared but never implemented functions
  • fixed unused parameter warnings

Please note I only checked for functions that had a declaration in a header file of some kind, so there might still be some functions only defined and used within .cpp files that don't have nodiscard applied.

How verified:

  • bcz dbg
  • opencon
  • testcon
  • VS2019 debug build
**Original Pull Request:** https://github.com/microsoft/terminal/pull/953 **State:** closed **Merged:** Yes --- <!-- Enter a brief description/summary of your PR here. What does it fix/what does it change/how was it tested (even manually, if necessary)? --> ## Summary of the Pull Request Functions returning status codes should use [[nodiscard]] as [mentioned recently](https://github.com/microsoft/terminal/pull/897#discussion_r286205725) by @adiviness. They should also use noexcept, but that's a much more invasive change, so this issue is just about [[nodiscard]]. <!-- Other than the issue solved, is this relevant to any other issues/existing PRs? --> ## References #897 <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist * [X] Closes #951 * [X] CLA signed. If not, go over [here](https://cla.opensource.microsoft.com/microsoft/Terminal) and sign the CLA * [X] Tests added/passed * [ ] Requires documentation to be updated * [ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #897 <!-- Provide a more detailed description of the PR, other things fixed or any additional comments/features here --> ## Detailed Description of the Pull Request / Additional comments - applied [[nodiscard]] for all HRESULT, LRESULT, and NTSTATUS functions - fixed IntelliSense declaration complaints leading to function not implemented warnings - deleted declared but never implemented functions - fixed unused parameter warnings Please note I only checked for functions that had a declaration in a header file of some kind, so there might still be some functions only defined and used within .cpp files that don't have [[nodiscard]] applied. How verified: - bcz dbg - opencon - testcon - VS2019 debug build
claunia added the pull-request label 2026-01-31 09:03:14 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#24423