[SERVER-76814] Fix mongodb compilation with libc++ Created: 03/May/23 Updated: 29/Oct/23 Resolved: 10/May/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 7.1.0-rc0, 7.0.0-rc1 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Mark Benvenuto | Assignee: | Mark Benvenuto |
| Resolution: | Fixed | Votes: | 1 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Backwards Compatibility: | Fully Compatible | ||||
| Operating System: | ALL | ||||
| Backport Requested: |
v7.0
|
||||
| Sprint: | Security 2023-05-15 | ||||
| Participants: | |||||
| Description |
|
MongoDB now compiles with C++ 20 but some of the third-party code uses removed C++ features. src/third_party/asio-master/asio/include/asio/detail/type_traits.hpp is using std::result_of which was removed in C++20. This can be worked around by either ASIO_HAS_STD_INVOKE_RESULT to make ASIO define it or _LIBCPP_ENABLE_CXX20_REMOVED_TYPE_TRAITS to undo the removal. The former is likely better since it has a more narrow affect in the code base. |
| Comments |
| Comment by Githook User [ 11/May/23 ] |
|
Author: {'name': 'Mark Benvenuto', 'email': 'mark.benvenuto@mongodb.com', 'username': 'markbenvenuto'}Message: (cherry picked from commit ad8a74f5782fb8b3f24f74305c44da725732616a) |
| Comment by Githook User [ 10/May/23 ] |
|
Author: {'name': 'Mark Benvenuto', 'email': 'mark.benvenuto@mongodb.com', 'username': 'markbenvenuto'}Message: |