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

Attachment: pgp4yPuHK3UdM.pgp
Description: PGP signature

Reply via email to