Skip to content

util: add Utf8ToWide helper#89

Draft
l0rinc wants to merge 4 commits intomasterfrom
detached480
Draft

util: add Utf8ToWide helper#89
l0rinc wants to merge 4 commits intomasterfrom
detached480

Conversation

@l0rinc
Copy link
Copy Markdown
Owner

@l0rinc l0rinc commented Jan 4, 2026

Cross compiling ....................... TRUE, for Windows, x86_64
C++ compiler .......................... Clang 19.1.6, /home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/bin/x86_64-w64-mingw32-clang++

gmake[1]: Warning: File 'CMakeFiles/Makefile2' has modification time 1 s in the future
gmake[2]: Warning: File 'src/CMakeFiles/generate_build_info.dir/progress.make' has modification time 0.63 s in the future
gmake[2]: Warning: File 'src/CMakeFiles/crc32c.dir/progress.make' has modification time 0.58 s in the future
gmake[2]: Warning: File 'src/CMakeFiles/leveldb.dir/progress.make' has modification time 0.63 s in the future
gmake[2]: Warning: File 'src/univalue/CMakeFiles/univalue.dir/progress.make' has modification time 0.77 s in the future
gmake[2]: Warning: File 'src/crypto/CMakeFiles/bitcoin_crypto.dir/progress.make' has modification time 0.45 s in the future
gmake[2]: Warning: File 'src/secp256k1/src/CMakeFiles/secp256k1_precomputed.dir/progress.make' has modification time 0.68 s in the future
gmake[2]: Warning: File 'src/CMakeFiles/minisketch.dir/progress.make' has modification time 0.59 s in the future
gmake[2]: Warning: File 'src/CMakeFiles/bitcoin_consensus.dir/progress.make' has modification time 0.41 s in the future
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
gmake[2]: Warning: File 'src/CMakeFiles/generate_build_info.dir/progress.make' has modification time 0.45 s in the future
gmake[2]: Warning: File 'src/CMakeFiles/crc32c.dir/progress.make' has modification time 0.41 s in the future
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
gmake[2]: Warning: File 'src/univalue/CMakeFiles/univalue.dir/progress.make' has modification time 0.42 s in the future
gmake[2]: Warning: File 'src/CMakeFiles/bitcoin_consensus.dir/progress.make' has modification time 0.092 s in the future
gmake[2]: Warning: File 'src/secp256k1/src/CMakeFiles/secp256k1_precomputed.dir/progress.make' has modification time 0.29 s in the future
gmake[2]: Warning: File 'src/CMakeFiles/minisketch.dir/progress.make' has modification time 0.13 s in the future
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
[  2%] Building C object src/secp256k1/src/CMakeFiles/secp256k1_precomputed.dir/precomputed_ecmult.c.obj
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
[  4%] Building C object src/secp256k1/src/CMakeFiles/secp256k1_precomputed.dir/precomputed_ecmult_gen.c.obj
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
[  8%] Building C object src/secp256k1/src/CMakeFiles/exhaustive_tests.dir/tests_exhaustive.c.obj
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
[ 11%] Linking C executable ../bin/exhaustive_tests.exe
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
[ 15%] Building C object src/secp256k1/src/CMakeFiles/secp256k1.dir/secp256k1.c.obj
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
[ 27%] Linking C static library ../lib/libsecp256k1.a
[ 28%] Building C object src/secp256k1/src/CMakeFiles/noverify_tests.dir/tests.c.obj
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
[ 29%] Building C object src/secp256k1/src/CMakeFiles/tests.dir/tests.c.obj
[ 32%] Linking C executable ../bin/tests.exe
[ 33%] Linking C executable ../bin/noverify_tests.exe
/mnt/my_storage/bitcoin/src/leveldb/util/env_windows.cc:84:17: warning: unused member function 'operator=' [-Wunused-member-function]
   84 |   ScopedHandle& operator=(ScopedHandle&& rhs) noexcept {
      |                 ^~~~~~~~
1 warning generated.
In file included from /mnt/my_storage/bitcoin/src/util/exec.cpp:8:
/mnt/my_storage/bitcoin/src/util/subprocess.h:1105:29: warning: 'codecvt_utf8_utf16<wchar_t>' is deprecated [-Wdeprecated-declarations]
 1105 |   std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
      |                             ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/codecvt:568:28: note: 'codecvt_utf8_utf16<wchar_t>' has been explicitly marked deprecated here
  568 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 codecvt_utf8_utf16 : public __codecvt_utf8_utf16<_Elem> {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
In file included from /mnt/my_storage/bitcoin/src/util/exec.cpp:8:
/mnt/my_storage/bitcoin/src/util/subprocess.h:1105:8: warning: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' is deprecated [-Wdeprecated-declarations]
 1105 |   std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
      |        ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/locale:3145:28: note: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' has been explicitly marked deprecated here
 3145 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 wstring_convert {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
/mnt/my_storage/bitcoin/src/util/exec.cpp:27:31: warning: 'codecvt_utf8_utf16<wchar_t>' is deprecated [-Wdeprecated-declarations]
   27 |     std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
      |                               ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/codecvt:568:28: note: 'codecvt_utf8_utf16<wchar_t>' has been explicitly marked deprecated here
  568 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 codecvt_utf8_utf16 : public __codecvt_utf8_utf16<_Elem> {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
/mnt/my_storage/bitcoin/src/util/exec.cpp:27:10: warning: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' is deprecated [-Wdeprecated-declarations]
   27 |     std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
      |          ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/locale:3145:28: note: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' has been explicitly marked deprecated here
 3145 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 wstring_convert {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
In file included from /mnt/my_storage/bitcoin/src/util/exec.cpp:8:
/mnt/my_storage/bitcoin/src/util/subprocess.h:759:10: warning: private field 'parent_' is not used [-Wunused-private-field]
  759 |   Popen* parent_ = nullptr;
      |          ^
/mnt/my_storage/bitcoin/src/util/subprocess.h:760:7: warning: private field 'err_wr_pipe_' is not used [-Wunused-private-field]
  760 |   int err_wr_pipe_ = -1;
      |       ^
/mnt/my_storage/bitcoin/src/util/subprocess.h:1038:7: warning: private field 'child_pid_' is not used [-Wunused-private-field]
 1038 |   int child_pid_ = -1;
      |       ^
7 warnings generated.
In file included from /mnt/my_storage/bitcoin/src/common/run_command.cpp:13:
/mnt/my_storage/bitcoin/src/util/subprocess.h:1105:29: warning: 'codecvt_utf8_utf16<wchar_t>' is deprecated [-Wdeprecated-declarations]
 1105 |   std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
      |                             ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/codecvt:568:28: note: 'codecvt_utf8_utf16<wchar_t>' has been explicitly marked deprecated here
  568 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 codecvt_utf8_utf16 : public __codecvt_utf8_utf16<_Elem> {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
In file included from /mnt/my_storage/bitcoin/src/common/run_command.cpp:13:
/mnt/my_storage/bitcoin/src/util/subprocess.h:1105:8: warning: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' is deprecated [-Wdeprecated-declarations]
 1105 |   std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
      |        ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/locale:3145:28: note: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' has been explicitly marked deprecated here
 3145 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 wstring_convert {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
In file included from /mnt/my_storage/bitcoin/src/common/run_command.cpp:13:
/mnt/my_storage/bitcoin/src/util/subprocess.h:759:10: warning: private field 'parent_' is not used [-Wunused-private-field]
  759 |   Popen* parent_ = nullptr;
      |          ^
/mnt/my_storage/bitcoin/src/util/subprocess.h:760:7: warning: private field 'err_wr_pipe_' is not used [-Wunused-private-field]
  760 |   int err_wr_pipe_ = -1;
      |       ^
/mnt/my_storage/bitcoin/src/util/subprocess.h:1038:7: warning: private field 'child_pid_' is not used [-Wunused-private-field]
 1038 |   int child_pid_ = -1;
      |       ^
5 warnings generated.
/mnt/my_storage/bitcoin/src/common/system.cpp:59:53: warning: 'codecvt_utf8_utf16<wchar_t>' is deprecated [-Wdeprecated-declarations]
   59 |     int nErr = ::_wsystem(std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>,wchar_t>().from_bytes(strCommand).c_str());
      |                                                     ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/codecvt:568:28: note: 'codecvt_utf8_utf16<wchar_t>' has been explicitly marked deprecated here
  568 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 codecvt_utf8_utf16 : public __codecvt_utf8_utf16<_Elem> {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
/mnt/my_storage/bitcoin/src/common/system.cpp:59:32: warning: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' is deprecated [-Wdeprecated-declarations]
   59 |     int nErr = ::_wsystem(std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>,wchar_t>().from_bytes(strCommand).c_str());
      |                                ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/locale:3145:28: note: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' has been explicitly marked deprecated here
 3145 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 wstring_convert {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
2 warnings generated.

Scanning dependencies of target bitcoin
gmake[2]: Warning: File 'src/CMakeFiles/bitcoin.dir/depend.make' has modification time 1.1 s in the future
[ 59%] Building RC object src/CMakeFiles/bitcoin.dir/bitcoin-res.rc.res
[ 59%] Building RC object src/CMakeFiles/bitcoin.dir/bitcoin-manifest.rc.res
Scanning dependencies of target bitcoin-cli
gmake[2]: Warning: File 'src/CMakeFiles/bitcoin-cli.dir/depend.make' has modification time 1.2 s in the future
[ 60%] Building RC object src/CMakeFiles/bitcoin-cli.dir/bitcoin-cli-res.rc.res
[ 60%] Building RC object src/CMakeFiles/bitcoin-cli.dir/bitcoin-cli-manifest.rc.res
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
Scanning dependencies of target bitcoin-tx
gmake[2]: Warning: File 'src/CMakeFiles/bitcoin-tx.dir/depend.make' has modification time 1.2 s in the future
win@WIN-A2EHOAU4JET:/mnt/my_storage/bitcoin$
Scanning dependencies of target bitcoin-util
gmake[2]: Warning: File 'src/CMakeFiles/bitcoin-util.dir/depend.make' has modification time 1.2 s in the future
[ 61%] Building RC object src/CMakeFiles/bitcoin-util.dir/bitcoin-util-res.rc.res
[ 61%] Building RC object src/CMakeFiles/bitcoin-util.dir/bitcoin-util-manifest.rc.res
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
[ 61%] Building RC object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx-res.rc.res
[ 61%] Building RC object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx-manifest.rc.res
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
Scanning dependencies of target bitcoin-wallet
gmake[2]: Warning: File 'src/CMakeFiles/bitcoin-wallet.dir/depend.make' has modification time 1.1 s in the future
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
[ 65%] Building RC object src/CMakeFiles/bitcoin-wallet.dir/bitcoin-wallet-res.rc.res
[ 65%] Building RC object src/CMakeFiles/bitcoin-wallet.dir/bitcoin-wallet-manifest.rc.res
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
Scanning dependencies of target bitcoind
gmake[2]: Warning: File 'src/CMakeFiles/bitcoind.dir/depend.make' has modification time 1.1 s in the future
[ 75%] Building RC object src/CMakeFiles/bitcoind.dir/bitcoind-manifest.rc.res
[ 75%] Building RC object src/CMakeFiles/bitcoind.dir/bitcoind-res.rc.res
Scanning dependencies of target test_bitcoin
gmake[2]: Warning: File 'src/test/CMakeFiles/test_bitcoin.dir/depend.make' has modification time 0.96 s in the future
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.
In file included from /mnt/my_storage/bitcoin/src/test/system_tests.cpp:12:
/mnt/my_storage/bitcoin/src/util/subprocess.h:1105:29: warning: 'codecvt_utf8_utf16<wchar_t>' is deprecated [-Wdeprecated-declarations]
 1105 |   std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
      |                             ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/codecvt:568:28: note: 'codecvt_utf8_utf16<wchar_t>' has been explicitly marked deprecated here
  568 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 codecvt_utf8_utf16 : public __codecvt_utf8_utf16<_Elem> {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
In file included from /mnt/my_storage/bitcoin/src/test/system_tests.cpp:12:
/mnt/my_storage/bitcoin/src/util/subprocess.h:1105:8: warning: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' is deprecated [-Wdeprecated-declarations]
 1105 |   std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
      |        ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/locale:3145:28: note: 'wstring_convert<std::codecvt_utf8_utf16<wchar_t>>' has been explicitly marked deprecated here
 3145 | class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 wstring_convert {
      |                            ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:723:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
  723 | #    define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
      |                                         ^
/home/win/llvm-mingw-20241217-ucrt-ubuntu-20.04-x86_64/x86_64-w64-mingw32/include/c++/v1/__config:688:49: note: expanded from macro '_LIBCPP_DEPRECATED'
  688 | #      define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
      |                                                 ^
In file included from /mnt/my_storage/bitcoin/src/test/system_tests.cpp:12:
/mnt/my_storage/bitcoin/src/util/subprocess.h:759:10: warning: private field 'parent_' is not used [-Wunused-private-field]
  759 |   Popen* parent_ = nullptr;
      |          ^
/mnt/my_storage/bitcoin/src/util/subprocess.h:760:7: warning: private field 'err_wr_pipe_' is not used [-Wunused-private-field]
  760 |   int err_wr_pipe_ = -1;
      |       ^
/mnt/my_storage/bitcoin/src/util/subprocess.h:1038:7: warning: private field 'child_pid_' is not used [-Wunused-private-field]
 1038 |   int child_pid_ = -1;
      |       ^
5 warnings generated.
[ 96%] Building RC object src/test/CMakeFiles/test_bitcoin.dir/test_bitcoin-manifest.rc.res
gmake[2]: warning:  Clock skew detected.  Your build may be incomplete.

l0rinc added 4 commits January 4, 2026 22:54
Add a Windows UTF-8-to-wide conversion helper using `MultiByteToWideChar(CP_UTF8, ...)`, so call sites can avoid deprecated `<codecvt>` / `std::wstring_convert` conversions.
Clang warns that `std::wstring_convert` and `std::codecvt_utf8_utf16<wchar_t>` are deprecated. Use the shared `util::Utf8ToWide` helper when preparing wide strings for Windows APIs in `runCommand`, `ExecVp`, and `subprocess`.
When building for Windows, the fork/exec-specific `detail::Child` helper and `Popen::child_pid_` are compiled out, leaving their members unused and triggering `-Wunused-private-field` warnings. Guard these POSIX-only declarations with `#ifndef __USING_WINDOWS__`.
Clang `-Wunused-member-function` warns about the unused `ScopedHandle::operator=(ScopedHandle&&)` helper in `env_windows.cc`. Remove it since this is an internal type only moved via construction, and keeping the dead operator provides no benefit.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant