Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#54492 - [gcc] internal error and compiler SEGV; code compiles/runs fine in gcc 6.3.1-2

Attached to Project: Arch Linux
Opened by Huw Rogers (djnz00) - Saturday, 17 June 2017, 13:33 GMT
Last edited by Bartłomiej Piotrowski (Barthalion) - Monday, 26 June 2017, 09:03 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Bartłomiej Piotrowski (Barthalion)
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Minimal test case attached (source and pre-processed source).
Compiles/runs printing "hello world" on gcc 6.3.1-2.
Causes internal error and segmentation violation (compiler SEGV) on gcc 7.1.1

] g++ -v -save-temps gccbug.cpp -o gccbug
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/7.1.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --enable-libmpx --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --disable-multilib --disable-werror --enable-checking=release
Thread model: posix
gcc version 7.1.1 20170516 (GCC)
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-o' 'gccbug' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
/usr/lib/gcc/x86_64-pc-linux-gnu/7.1.1/cc1plus -E -quiet -v -D_GNU_SOURCE gccbug.cpp -mtune=generic -march=x86-64 -fpch-preprocess -o gccbug.ii
ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1
/usr/lib/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1/x86_64-pc-linux-gnu
/usr/lib/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1/backward
/usr/lib/gcc/x86_64-pc-linux-gnu/7.1.1/include
/usr/local/include
/usr/lib/gcc/x86_64-pc-linux-gnu/7.1.1/include-fixed
/usr/include
End of search list.
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-o' 'gccbug' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
/usr/lib/gcc/x86_64-pc-linux-gnu/7.1.1/cc1plus -fpreprocessed gccbug.ii -quiet -dumpbase gccbug.cpp -mtune=generic -march=x86-64 -auxbase gccbug -version -o gccbug.s
GNU C++14 (GCC) version 7.1.1 20170516 (x86_64-pc-linux-gnu)
compiled by GNU C version 7.1.1 20170516, GMP version 6.1.2, MPFR version 3.1.5-p2, MPC version 1.0.3, isl version isl-0.18-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C++14 (GCC) version 7.1.1 20170516 (x86_64-pc-linux-gnu)
compiled by GNU C version 7.1.1 20170516, GMP version 6.1.2, MPFR version 3.1.5-p2, MPC version 1.0.3, isl version isl-0.18-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 74aace2f6deb87bb86dbfd7a28ebe524
gccbug.cpp: In substitution of 'template<class O, void (* Fn)(O*)> struct ZmFn<>::BoundInvoker<O, void, Fn> [with O = C; void (* Fn)(O*) = foo]':
gccbug.cpp:38:29: required from 'static ZmFn<Args> ZmFn<Args>::boundFn(O*) [with O = C; R = void; R (* Fn)(O*, Args ...) = foo; Args = {}]'
gccbug.cpp:68:48: required from here
gccbug.cpp:38:29: internal compiler error: Segmentation fault
return ZmFn(o, (Invoker)&BoundInvoker<O, R, Fn>::invoke);
^~~~~~~~~~~~~~~~~~~~~~~
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://bugs.archlinux.org/> for instructions.
This task depends upon

Closed by  Bartłomiej Piotrowski (Barthalion)
Monday, 26 June 2017, 09:03 GMT
Reason for closing:  Fixed
Comment by Bartłomiej Piotrowski (Barthalion) - Sunday, 25 June 2017, 19:40 GMT
Looks to be fine in gcc 7.1.1 20170621 which is in [testing] now. I will move it to stable tomorrow.

Loading...