This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/80534] New: 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: "freddie_chopin at op dot pl" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 26 Apr 2017 20:04:00 +0000
- Subject: [Bug c++/80534] New: 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- Auto-submitted: auto-generated
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80534
Bug ID: 80534
Summary: 7.1 RC - internal compiler error: in
finish_member_declaration, at cp/semantics.c:2963
Product: gcc
Version: 7.0.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: freddie_chopin at op dot pl
Target Milestone: ---
Target: arm-none-eabi
Created attachment 41275
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=41275&action=edit
preprocessed source which causes the problem
When building my C++ project with the GCC 7.1 RC I get following compiler
error:
-- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 --
arm-none-eabi-g++ -Wall -Wextra -Wshadow -std=gnu++11 -g -ggdb3 -mcpu=cortex-m4
-mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O2 -ffunction-sections
-fdata-sections -fno-rtti -fno-exceptions -I../../output/include
-I../../include -I../../source/architecture/ARM/ARMv6-M-ARMv7-M/include -c
lowLevelInitialization.cpp -o
../../output/source/scheduler/lowLevelInitialization.o
In file included from
/home/freddie/bleeding-edge-toolchain/arm-none-eabi-gcc-7.0.1-RC-20170425-170426/arm-none-eabi-gcc-7.0.1-RC-20170425-170426/arm-none-eabi/include/c++/7.0.1/memory:80:0,
from
../../include/distortos/internal/synchronization/SignalInformationQueue.hpp:19,
from
../../include/distortos/SignalInformationQueueWrapper.hpp:15,
from ../../include/distortos/StaticSignalsReceiver.hpp:15,
from ../../include/distortos/StaticThread.hpp:16,
from lowLevelInitialization.cpp:15:
/home/freddie/bleeding-edge-toolchain/arm-none-eabi-gcc-7.0.1-RC-20170425-170426/arm-none-eabi-gcc-7.0.1-RC-20170425-170426/arm-none-eabi/include/c++/7.0.1/bits/unique_ptr.h:
In instantiation of 'class std::unique_ptr<std::aligned_storage<12, 4>::type
[], void (&)(std::aligned_storage<12, 4>::type*)>':
/home/freddie/bleeding-edge-toolchain/arm-none-eabi-gcc-7.0.1-RC-20170425-170426/arm-none-eabi-gcc-7.0.1-RC-20170425-170426/arm-none-eabi/include/c++/7.0.1/bits/unique_ptr.h:588:16:
required from 'std::unique_ptr<_Tp [], _Dp>::pointer std::unique_ptr<_Tp [],
_Dp>::get() const [with _Tp = std::aligned_storage<12, 4>::type; _Dp = void
(&)(std::aligned_storage<12, 4>::type*); std::unique_ptr<_Tp [], _Dp>::pointer
= std::aligned_storage<12, 4>::type*]'
../../include/distortos/internal/synchronization/SignalsCatcherControlBlock.hpp:186:67:
required from here
/home/freddie/bleeding-edge-toolchain/arm-none-eabi-gcc-7.0.1-RC-20170425-170426/arm-none-eabi-gcc-7.0.1-RC-20170425-170426/arm-none-eabi/include/c++/7.0.1/bits/unique_ptr.h:398:5:
internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
{
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://gcc.gnu.org/bugs/> for instructions.
-- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 --
I'm attaching preprocessed source file.
Compiler version:
-- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 --
$ arm-none-eabi-gcc --version
arm-none-eabi-gcc (bleeding-edge-toolchain) 7.0.1 20170425 (prerelease)
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 --
There's no error with GCC 6.3 and there was no error with 7-20170409 snapshot.
Additionally - maybe this is related - I'm now seeing a few new warnings:
-- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 --
warning: dereferencing type-punned pointer will break strict-aliasing rules
[-Wstrict-aliasing]
-- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 -- >8 --
These were also not present with the mentioned snapshot or with latest stable
version.
This problem appears on a toolchain compiled for "arm-none-eabi" target. The
toolchain was built with this script:
https://github.com/FreddieChopin/bleeding-edge-toolchain/tree/gcc-7-experimental
The problem appears in building this project:
https://github.com/DISTORTEC/distortos
Here's the travis-ci log:
https://travis-ci.org/FreddieChopin/bleeding-edge-toolchain/builds/226127050
Please let me know whether I can give you any more information.
This problem may seem similar to #79308, but I think this is something
different - I see no ICE with GCC 6, GCC 5 or GCC 4.9 - only with the most
recent GCC 7 "RC" snapshot.
- Follow-Ups:
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: pinskia at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: freddie_chopin at op dot pl
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: trippels at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: trippels at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: trippels at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: rguenth at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: jakub at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: trippels at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: jakub at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: jakub at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: freddie_chopin at op dot pl
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: jakub at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: jakub at gcc dot gnu.org
- [Bug c++/80534] [7/8 Regression] 7.1 RC - internal compiler error: in finish_member_declaration, at cp/semantics.c:2963
- From: jakub at gcc dot gnu.org