1 | | Replying to [ticket:64055 tenzap]: |
2 | | > Originally, when building KeePassXC on macOS 10.11 with a compiler that supports the -fsized-deallocation (like clang++-mp-9.0, or a recent AppleClang, probably >= 8) there is this error: |
3 | | > |
4 | | > {{{ |
5 | | > error: call to unavailable function 'operator delete': introduced in macOS 10.12 |
6 | | > }}} |
7 | | > |
8 | | > Test case file to compile with `-fsized-deallocation` flag: |
9 | | > {{{ |
10 | | > #include <new> |
11 | | > int main() { |
12 | | > void * ptr = nullptr; |
13 | | > std::size_t size = 1; |
14 | | > ::operator delete(ptr, size); |
15 | | > } |
16 | | > |
17 | | > }}} |
18 | | > |
19 | | > |
20 | | > Maybe this is part of the things that could be addressed by legacysupport? |
21 | | > |
22 | | > There may be other related functions missing since delete is 'overloaded' |
23 | | > https://en.cppreference.com/w/cpp/memory/new/operator_delete |
24 | | > https://en.cppreference.com/w/cpp/header/new |
25 | | > |
26 | | > For now this is worked around in KeePassXC with a patch that disables use of -fsized-deallocation on macos < 10.12. |
27 | | > |