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

iox-#2066 Remove compiler switches for c++17 #2103

Conversation

elBoberido
Copy link
Member

@elBoberido elBoberido commented Nov 18, 2023

Pre-Review Checklist for the PR Author

  1. Add a second reviewer for complex new features or larger refactorings
  2. Code follows the coding style of CONTRIBUTING.md
  3. Tests follow the best practice for testing
  4. Changelog updated in the unreleased section including API breaking changes
  5. Branch follows the naming format (iox-123-this-is-a-branch)
  6. Commits messages are according to this guideline
  7. Update the PR title
    • Follow the same conventions as for commit messages
    • Link to the relevant issue
  8. Relevant issues are linked
  9. Add sensible notes for the reviewer
  10. All checks have passed (except task-list-completed)
  11. All touched (C/C++) source code files from iceoryx_hoofs are added to ./clang-tidy-diff-scans.txt
  12. Assign PR to reviewer

Notes for Reviewer

This PR removes the compiler switches for C++17 and deprecates the IOX_MAYBE_UNUSED, IOX_FALLTHROUGH and IOX_NO_DISCARD macros in favor of the C++17 [[maybe_unused]], [[fallthrough]] and [[no_discard]] attributes.

In addition std::byte is used instead of iox::byte.

Checklist for the PR Reviewer

  • Commits are properly organized and messages are according to the guideline
  • Code according to our coding style and naming conventions
  • Unit tests have been written for new behavior
  • Public API changes are documented via doxygen
  • Copyright owner are updated in the changed files
  • All touched (C/C++) source code files from iceoryx_hoofs have been added to ./clang-tidy-diff-scans.txt
  • PR title describes the changes

Post-review Checklist for the PR Author

  1. All open points are addressed and tracked via issues

References

@elBoberido elBoberido added refactoring Refactor code without adding features technical debt unclean code and design flaws labels Nov 18, 2023
@elBoberido elBoberido self-assigned this Nov 18, 2023
@elBoberido elBoberido changed the title iox-#2066 Remove compiler switches for c++17 [Based on 2098] iox-#2066 Remove compiler switches for c++17 Nov 18, 2023
Copy link

codecov bot commented Nov 18, 2023

Codecov Report

Merging #2103 (b0e68f7) into master (6eb6fb8) will increase coverage by 0.00%.
The diff coverage is 100.00%.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #2103   +/-   ##
=======================================
  Coverage   80.29%   80.29%           
=======================================
  Files         417      417           
  Lines       16130    16132    +2     
  Branches     2251     2253    +2     
=======================================
+ Hits        12951    12953    +2     
  Misses       2384     2384           
  Partials      795      795           
Flag Coverage Δ
unittests 80.08% <100.00%> (+<0.01%) ⬆️
unittests_timing 15.30% <0.00%> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
...container/include/iox/fixed_position_container.hpp 100.00% <100.00%> (ø)
iceoryx_dust/posix/ipc/source/message_queue.cpp 62.96% <ø> (ø)
...oofs/container/include/iox/uninitialized_array.hpp 100.00% <ø> (ø)
...unctional/include/iox/detail/storable_function.hpp 100.00% <ø> (ø)
...clude/iceoryx_hoofs/internal/cxx/variant_queue.inl 80.00% <ø> (ø)
...ceoryx_hoofs/internal/posix_wrapper/posix_call.inl 98.18% <100.00%> (ø)
...include/iceoryx_hoofs/posix_wrapper/posix_call.hpp 100.00% <ø> (ø)
iceoryx_hoofs/posix/filesystem/source/file.cpp 34.71% <ø> (ø)
...ceoryx_hoofs/primitives/include/iox/attributes.hpp 100.00% <ø> (ø)
...ryx_hoofs/vocabulary/include/iox/detail/string.inl 96.16% <100.00%> (+0.02%) ⬆️
... and 11 more

mossmaurice
mossmaurice previously approved these changes Nov 20, 2023
Copy link
Contributor

@mossmaurice mossmaurice left a comment

Choose a reason for hiding this comment

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

LGTM, thanks!

@elBoberido elBoberido dismissed mossmaurice’s stale review November 20, 2023 11:00

The merge-base changed after approval.

@elBoberido elBoberido force-pushed the iox-2066-remove-compiler-switches-for-C++17 branch from 8108449 to 992fef6 Compare November 20, 2023 11:03
@elBoberido elBoberido changed the title [Based on 2098] iox-#2066 Remove compiler switches for c++17 iox-#2066 Remove compiler switches for c++17 Nov 20, 2023
@elBoberido elBoberido force-pushed the iox-2066-remove-compiler-switches-for-C++17 branch from ac7e300 to b0e68f7 Compare November 20, 2023 12:25
@elBoberido elBoberido merged commit 1ac5726 into eclipse-iceoryx:master Nov 20, 2023
29 checks passed
@elBoberido elBoberido deleted the iox-2066-remove-compiler-switches-for-C++17 branch November 20, 2023 16:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactoring Refactor code without adding features technical debt unclean code and design flaws
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Switch to C++17 on all platforms Replace iox::byte_t with std::byte Setting IOX_NO_DISCARD in QNX
2 participants