Package: g++-mingw-w64-i686 Version: 8.2.0-1+21~exp2 Severity: normal Including filesystem header results in compilation errors, e.g.:
% echo '#include <filesystem>' | i686-w64-mingw32-g++ -std=c++17 -x c++ -
In file included from
/usr/lib/gcc/i686-w64-mingw32/8.2-win32/include/c++/filesystem:37,
from fs.cpp:6:
/usr/lib/gcc/i686-w64-mingw32/8.2-win32/include/c++/bits/fs_path.h: In member
function ‘std::filesystem::__cxx11::path&
std::filesystem::__cxx11::path::operator/=(const
std::filesystem::__cxx11::path&)’:
/usr/lib/gcc/i686-w64-mingw32/8.2-win32/include/c++/bits/fs_path.h:237:47:
error: no match for ‘operator!=’ (operand types are
‘std::filesystem::__cxx11::path’ and ‘std::filesystem::__cxx11::path’)
|| (__p.has_root_name() && __p.root_name() != root_name()))
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
...
This is due to the fact that Windows-specific code in this header uses
operator==(path, path) which is only defined later, so the error makes
sense.
I'm not sure where exactly does this code come from as it differs from the
upstream code (in gcc repository), but I can't find the Debian patch with
it neither. FWIW it looks like using the upstream version would fix this
problem.
-- System Information:
Debian Release: buster/sid
APT prefers unstable
APT policy: (990, 'unstable'), (500, 'unstable-debug'), (100, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.6.0-0.bpo.1-amd64 (SMP w/8 CPU cores)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to
C.UTF-8), LANGUAGE=C.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to C.UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: unable to detect
Versions of packages g++-mingw-w64-i686 depends on:
ii gcc-mingw-w64-base 8.2.0-1+21~exp2
ii gcc-mingw-w64-i686 8.2.0-1+21~exp2
ii libc6 2.27-5
ii libgcc1 1:8.2.0-4
ii libgmp10 2:6.1.2+dfsg-3
ii libisl19 0.20-2
ii libmpc3 1.1.0-1
ii libmpfr6 4.0.1-1
ii libstdc++6 8.2.0-4
ii zlib1g 1:1.2.11.dfsg-1
g++-mingw-w64-i686 recommends no packages.
Versions of packages g++-mingw-w64-i686 suggests:
pn gcc-8-locales <none>
-- no debconf information
pgp4yPuHK3UdM.pgp
Description: PGP signature

