Skip to content

Fix the incompatibility with Clang and C++20 #408

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

Merged
merged 2 commits into from
Mar 3, 2024

Conversation

BewareMyPower
Copy link
Contributor

@BewareMyPower BewareMyPower commented Mar 3, 2024

Motivation

When I built with Clang and C++20, there were the following errors:

ISO C++20 considers use of overloaded operator '==' (with operand types 'pulsar::NamespaceName' and 'pulsar::NamespaceName') to be ambiguous despite there being a unique best viable function [-Werror,-Wambiguous-reversed-operator]

See the detailed answer here: https://stackoverflow.com/questions/60386792/c20-comparison-warning-about-ambiguous-reversed-operator

Modifications

Make the member functions of operator= const in TopicName and NamespaceName and add a workflow to cover this case.

@BewareMyPower BewareMyPower marked this pull request as draft March 3, 2024 15:16
@BewareMyPower BewareMyPower force-pushed the bewaremypower/cpp-20-clang branch from d444a03 to 68feec9 Compare March 3, 2024 15:16
@BewareMyPower BewareMyPower changed the title (WIP) Test if it's compatible with Clang and C++20 Fix the incompatibility with Clang and C++20 Mar 3, 2024
@BewareMyPower BewareMyPower self-assigned this Mar 3, 2024
@BewareMyPower BewareMyPower added the bug Something isn't working label Mar 3, 2024
@BewareMyPower BewareMyPower added this to the 3.5.0 milestone Mar 3, 2024
@BewareMyPower BewareMyPower marked this pull request as ready for review March 3, 2024 17:23
@BewareMyPower BewareMyPower merged commit e2cacb7 into apache:main Mar 3, 2024
@BewareMyPower BewareMyPower deleted the bewaremypower/cpp-20-clang branch March 3, 2024 17:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants