Is there an existing issue for this?
- I have searched the existing issues
Current behaviour
I can’t build master on macOS
Expected behaviour
Builds fine when I checkout tag v26.0. I don’t remember getting this error in the past
Steps to reproduce
The build commands I’ve tried result in this error:
0./autogen.sh &&./configure --with-gui=yes && make clean && make -j 4
0./autogen.sh && ./configure CC=clang CXX=clang++ --without-bdb --with-gui=yes && make clean && make -j 4
0./autogen.sh && ./configure CC=clang CXX=clang++ --with-incompatible-bdb --enable-suppress-external-warnings --with-gui=yes && make clean && make -j 4
Relevant log output
0wallet/interfaces.cpp:611:20: error: call to implicitly-deleted copy constructor of 'util::Result<std::unique_ptr<interfaces::Wallet>>::T' (aka 'std::unique_ptr<interfaces::Wallet>')
1 return wallet;
2 ^~~~~~
3/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/memory:1584:3: note: copy constructor is implicitly deleted because 'unique_ptr<interfaces::Wallet>' has a user-declared move constructor
4 unique_ptr(unique_ptr&& __u) _NOEXCEPT
5 ^
6./util/result.h:47:14: note: passing argument to parameter 'obj' here
7 Result(T obj) : m_variant{std::in_place_index_t<1>{}, std::move(obj)} {}
8 ^
9wallet/interfaces.cpp:625:20: error: call to implicitly-deleted copy constructor of 'util::Result<std::unique_ptr<interfaces::Wallet>>::T' (aka 'std::unique_ptr<interfaces::Wallet>')
10 return wallet;
11 ^~~~~~
12/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/memory:1584:3: note: copy constructor is implicitly deleted because 'unique_ptr<interfaces::Wallet>' has a user-declared move constructor
13 unique_ptr(unique_ptr&& __u) _NOEXCEPT
14 ^
15./util/result.h:47:14: note: passing argument to parameter 'obj' here
16 Result(T obj) : m_variant{std::in_place_index_t<1>{}, std::move(obj)} {}
17 ^
18wallet/interfaces.cpp:636:20: error: call to implicitly-deleted copy constructor of 'util::Result<std::unique_ptr<interfaces::Wallet>>::T' (aka 'std::unique_ptr<interfaces::Wallet>')
19 return wallet;
20 ^~~~~~
21/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/memory:1584:3: note: copy constructor is implicitly deleted because 'unique_ptr<interfaces::Wallet>' has a user-declared move constructor
22 unique_ptr(unique_ptr&& __u) _NOEXCEPT
23 ^
24./util/result.h:47:14: note: passing argument to parameter 'obj' here
25 Result(T obj) : m_variant{std::in_place_index_t<1>{}, std::move(obj)} {}
26 ^
27wallet/interfaces.cpp:651:16: error: call to implicitly-deleted copy constructor of 'util::Result<interfaces::WalletMigrationResult>::T' (aka 'interfaces::WalletMigrationResult')
28 return out;
29 ^~~
30./interfaces/wallet.h:435:29: note: copy constructor of 'WalletMigrationResult' is implicitly deleted because field 'wallet' has a deleted copy constructor
31 std::unique_ptr<Wallet> wallet;
32 ^
33/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/memory:1584:3: note: copy constructor is implicitly deleted because 'unique_ptr<interfaces::Wallet>' has a user-declared move constructor
34 unique_ptr(unique_ptr&& __u) _NOEXCEPT
35 ^
36./util/result.h:47:14: note: passing argument to parameter 'obj' here
37 Result(T obj) : m_variant{std::in_place_index_t<1>{}, std::move(obj)} {}
38 ^
394 errors generated.
40make[2]: *** [wallet/libbitcoin_wallet_a-interfaces.o] Error 1
How did you obtain Bitcoin Core
Compiled from source
What version of Bitcoin Core are you using?
master@03752444cd
Operating system and version
macOS Monterey 12.0.1
Machine specifications
No response