https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85091
--- Comment #3 from Vadim Zeitlin <vz-gcc at zeitlins dot org> --- (In reply to Richard Biener from comment #2) > This looks like a GC / memory corruption issue to me. Can you check whether > using -fchecking uncovers anything? Using -fchecking doesn't change anything, using -fchecking=2 makes the bug disappear. > I expect the issue will be impossible to reproduce for us, If you can install Debian Buster (current testing), it should be reproducible. At the very least, I've tested this on 2 completely different machines and the behaviour was exactly the same. > can you nevertheless please reproduce the output of > > i686-w64-mingw32-g++ -c -std=c++17 -Wnonnull -Woverloaded-virtual -O2 -v > 16795.cpp > > ? That is, if you append '-v'? Sure: % i686-w64-mingw32-g++ -c -std=c++17 -O2 -Wnonnull -Woverloaded-virtual -v 16795.cpp -o warn.o Using built-in specs. COLLECT_GCC=i686-w64-mingw32-g++ Target: i686-w64-mingw32 Configured with: ../../src/configure --build=i686-linux-gnu --prefix=/usr --includedir='/usr/include' --mandir='/usr/share/man' --infodir='/usr/share/info' --sysconfdir=/etc --localstatedir=/var --disable-silent-rules --libdir='/usr/lib/i386-linux-gnu' --libexecdir='/usr/lib/i386-linux-gnu' --disable-maintainer-mode --disable-dependency-tracking --prefix=/usr --enable-shared --enable-static --disable-multilib --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --libdir=/usr/lib --enable-libstdcxx-time=yes --with-tune=generic --with-headers=/usr/i686-w64-mingw32/include --enable-version-specific-runtime-libs --enable-fully-dynamic-string --enable-libgomp --enable-languages=c,c++,fortran,objc,obj-c++,ada --enable-lto --with-plugin-ld --enable-threads=win32 --program-suffix=-win32 --program-prefix=i686-w64-mingw32- --target=i686-w64-mingw32 --with-as=/usr/bin/i686-w64-mingw32-as --with-ld=/usr/bin/i686-w64-mingw32-ld --enable-libatomic --enable-libstdcxx-filesystem-ts=yes Thread model: win32 gcc version 7.2-win32 20180123 (GCC) COLLECT_GCC_OPTIONS='-c' '-std=c++1z' '-O2' '-Wnonnull' '-Woverloaded-virtual' '-v' '-o' 'warn.o' '-shared-libgcc' '-mtune=generic' '-march=pentiumpro' /usr/lib/gcc/i686-w64-mingw32/7.2-win32/cc1plus -quiet -v -U_REENTRANT 16795.cpp -quiet -dumpbase 16795.cpp -mtune=generic -march=pentiumpro -auxbase-strip warn.o -O2 -Wnonnull -Woverloaded-virtual -std=c++1z -version -o /tmp/ccmscJ4Y.s GNU C++14 (GCC) version 7.2-win32 20180123 (i686-w64-mingw32) compiled by GNU C version 7.2.0, GMP version 6.1.2, MPFR version 4.0.1-rc1, MPC version 1.1.0, isl version isl-0.18-GMP warning: MPFR header version 4.0.1-rc1 differs from library version 4.0.1. GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 ignoring nonexistent directory "/usr/lib/gcc/i686-w64-mingw32/7.2-win32/../../../../i686-w64-mingw32/sys-include" #include "..." search starts here: #include <...> search starts here: /usr/lib/gcc/i686-w64-mingw32/7.2-win32/include/c++ /usr/lib/gcc/i686-w64-mingw32/7.2-win32/include/c++/i686-w64-mingw32 /usr/lib/gcc/i686-w64-mingw32/7.2-win32/include/c++/backward /usr/lib/gcc/i686-w64-mingw32/7.2-win32/include /usr/lib/gcc/i686-w64-mingw32/7.2-win32/include-fixed /usr/lib/gcc/i686-w64-mingw32/7.2-win32/../../../../i686-w64-mingw32/include End of search list. GNU C++14 (GCC) version 7.2-win32 20180123 (i686-w64-mingw32) compiled by GNU C version 7.2.0, GMP version 6.1.2, MPFR version 4.0.1-rc1, MPC version 1.1.0, isl version isl-0.18-GMP warning: MPFR header version 4.0.1-rc1 differs from library version 4.0.1. GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: 9c828bbeabdb83d01b583e6b48da537a 16795.cpp: In function ‘unsigned int _get_output_format()’: 16795.cpp:316:25: warning: ‘unsigned int _get_output_format()’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes] extern "C" unsigned int _get_output_format(void) {return 1;} ^~~~~~~~~~~~~~~~~~ COLLECT_GCC_OPTIONS='-c' '-std=c++1z' '-O2' '-Wnonnull' '-Woverloaded-virtual' '-v' '-o' 'warn.o' '-shared-libgcc' '-mtune=generic' '-march=pentiumpro' /usr/bin/i686-w64-mingw32-as -v -o warn.o /tmp/ccmscJ4Y.s GNU assembler version 2.29.1 (i686-w64-mingw32) using BFD version (GNU Binutils) 2.29.1 COMPILER_PATH=/usr/lib/gcc/i686-w64-mingw32/7.2-win32/:/usr/lib/gcc/i686-w64-mingw32/7.2-win32/:/usr/lib/gcc/i686-w64-mingw32/:/usr/lib/gcc/i686-w64-mingw32/7.2-win32/:/usr/lib/gcc/i686-w64-mingw32/:/usr/lib/gcc/i686-w64-mingw32/7.2-win32/../../../../i686-w64-mingw32/bin/ LIBRARY_PATH=/usr/lib/gcc/i686-w64-mingw32/7.2-win32/:/usr/lib/gcc/i686-w64-mingw32/7.2-win32/../../../../i686-w64-mingw32/lib/../lib/:/usr/lib/gcc/i686-w64-mingw32/7.2-win32/../../../../i686-w64-mingw32/lib/ COLLECT_GCC_OPTIONS='-c' '-std=c++1z' '-O2' '-Wnonnull' '-Woverloaded-virtual' '-v' '-o' 'warn.o' '-shared-libgcc' '-mtune=generic' '-march=pentiumpro'