https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64111

            Bug ID: 64111
           Summary: [5.0 regression] ICE: conversion of register to a
                    different size
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: thiago at kde dot org

When compiling the attached preprocessed source, GCC 5 (trunk 218173) prints
the following ICE:

/home/thiago/src/qt/qt5/qtbase/src/corelib/io/qresource.cpp: In member function
‘QResourceRoot::findNode(QString const&, QLocale const&) const’:
/home/thiago/src/qt/qt5/qtbase/src/corelib/io/qresource.cpp:616:5: error:
conversion of register to a different size
 int QResourceRoot::findNode(const QString &_path, const QLocale &locale) const
     ^
VIEW_CONVERT_EXPR<vector(16) short unsigned int>(vect__655.937_1129);

vect__656.938_1127 = VIEW_CONVERT_EXPR<vector(16) short unsigned
int>(vect__655.937_1129);
/home/thiago/src/qt/qt5/qtbase/src/corelib/io/qresource.cpp:616:5: error:
conversion of register to a different size
VIEW_CONVERT_EXPR<vector(16) short unsigned int>(vect__655.937_1128);

vect__656.938_1126 = VIEW_CONVERT_EXPR<vector(16) short unsigned
int>(vect__655.937_1128);
/home/thiago/src/qt/qt5/qtbase/src/corelib/io/qresource.cpp:616:5: internal
compiler error: verify_gimple failed
0xcc5cd1 verify_gimple_in_cfg(function*, bool)
        /home/thiago/src/gcc/gcc/tree-cfg.c:5049
0xbcbe3f execute_function_todo
        /home/thiago/src/gcc/gcc/passes.c:1940
0xbcc713 execute_todo
        /home/thiago/src/gcc/gcc/passes.c:1997

Original command-line:
g++ -c -include .pch/Qt5Core -pipe -pipe -march=core-avx2 -mno-rtm -mno-hle
-std=c++0x -pthread -O3 -g -maccumulate-outgoing-args -O3 -fvisibility=hidden
-fvisibility-inlines-hidden -std=c++0x -flto -ffat-lto-objects -Wall -W -Werror
-Wno-error=cpp -Wno-error=deprecated-declarations -Wno-error=strict-overflow
-D_REENTRANT -fPIC -DQT_NO_USING_NAMESPACE -DQT_BUILD_CORE_LIB -DQT_BUILDING_QT
-DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT
-DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS
-DQT_DISABLE_DEPRECATED_BEFORE=0x050000
-DELF_INTERPRETER=\"/lib64/ld-linux-x86-64.so.2\" -DQT_USE_ICU -DQT_CORE_LIB
-D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG
-I/home/thiago/src/qt/qt5/qtbase/mkspecs/linux-g++-optimised
-I/home/thiago/src/qt/qt5/qtbase/src/corelib -I../../include
-I../../include/QtCore -I../../include/QtCore/5.4.0
-I../../include/QtCore/5.4.0/QtCore -Iglobal
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/harfbuzz/src
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/md5
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/md4
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/sha3
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/forkfd -isystem
/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I.moc -I. -o
.obj/qresource.o /home/thiago/src/qt/qt5/qtbase/src/corelib/io/qresource.cpp

This error disappears when the -include $(PCH) option is removed. Here's the
command-line for the precompilation:
g++ -pipe -pipe -march=core-avx2 -mno-rtm -mno-hle -std=c++0x -pthread -O3 -g
-maccumulate-outgoing-args -O3 -fvisibility=hidden -fvisibility-inlines-hidden
-std=c++0x -flto -ffat-lto-objects -Wall -W -Werror -Wno-error=cpp
-Wno-error=deprecated-declarations -Wno-error=strict-overflow -D_REENTRANT
-fPIC -DQT_NO_USING_NAMESPACE -DQT_BUILD_CORE_LIB -DQT_BUILDING_QT
-DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT
-DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS
-DQT_DISABLE_DEPRECATED_BEFORE=0x050000
-DELF_INTERPRETER=\"/lib64/ld-linux-x86-64.so.2\" -DQT_USE_ICU -DQT_CORE_LIB
-D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG
-I/home/thiago/src/qt/qt5/qtbase/mkspecs/linux-g++-optimised
-I/home/thiago/src/qt/qt5/qtbase/src/corelib -I../../include
-I../../include/QtCore -I../../include/QtCore/5.4.0
-I../../include/QtCore/5.4.0/QtCore -Iglobal
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/harfbuzz/src
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/md5
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/md4
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/sha3
-I/home/thiago/src/qt/qt5/qtbase/src/3rdparty/forkfd -isystem
/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I.moc -I. -x c++-header -c
/home/thiago/src/qt/qt5/qtbase/src/corelib/global/qt_pch.h -o
.pch/Qt5Core.gch/c++

Reply via email to