Opened 6 years ago

Closed 4 years ago

#57109 closed defect (fixed)

cquery @20180718 shared_timed_mutex introduced in macOS 10.12

Reported by: rurban (Reini Urban) Owned by: wyuenho (Jimmy Yuen Ho Wong)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc:
Port: cquery

Description (last modified by rurban (Reini Urban))

cquery-20180718_0.darwin_15 fails to build on darwin 15.6:

cquery-20180718/src/import_manager.h:30:8: error: 'shared_timed_mutex' is unavailable: introduced in macOS 10.12
:info:build   std::shared_timed_mutex dependency_mutex_;
:info:build        ^
:info:build /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/..
/include/c++/v1/shared_mutex:202:58: note: 'shared_timed_mutex' has been explicitly marked unavailable here

needs to be worked around somehow for older darwin's. attached patch fixe it for me. See also https://github.com/cquery-project/cquery/issues/733 (without fix yet, but they kept working on it)

Attachments (1)

shared_timed_mutex.patch (2.0 KB) - added by rurban (Reini Urban) 6 years ago.

Download all attachments as: .zip

Change History (6)

comment:1 Changed 6 years ago by rurban (Reini Urban)

Changed 6 years ago by rurban (Reini Urban)

Attachment: shared_timed_mutex.patch added

comment:2 Changed 6 years ago by rurban (Reini Urban)

Description: modified (diff)

comment:3 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

Keywords: haspatch added
Owner: set to wyuenho
Status: newassigned

comment:4 Changed 6 years ago by wyuenho (Jimmy Yuen Ho Wong)

I feel like this patch should be submitted upstream, and guarded by some preprocessor constants so only systems that don't support C++14 will revert back to the slower mutex.

comment:5 Changed 4 years ago by chrstphrchvz (Christopher Chavez)

Resolution: fixed
Status: assignedclosed

In 2144f5060538c593406997a4e97ef4bbf4f0f454/macports-ports (master):

cquery: remove port

Upstream project discontinued, suggests using clangd or ccls instead.

Closes: #57109

Note: See TracTickets for help on using tickets.