public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/67831] New: Internal error on complicated constexpr initialization.
@ 2015-10-03  9:10 st.spamable at gmail dot com
  2015-10-03 10:13 ` [Bug c++/67831] " miyuki at gcc dot gnu.org
  0 siblings, 1 reply; 2+ messages in thread
From: st.spamable at gmail dot com @ 2015-10-03  9:10 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 67831
           Summary: Internal error on complicated constexpr
                    initialization.
           Product: gcc
           Version: lto
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: st.spamable at gmail dot com
  Target Milestone: ---

Created attachment 36440
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=36440&action=edit
Preprocessed source

tools/gcc-arm-none-eabi-4_9-2015q1/bin/arm-none-eabi-g++ -MT .obj/main.cpp.o
-MMD -MP -MF .obj/main.Td -c -DDEVELOPER_VERSION -Iinclude -Wno-unused -g3 -O0
-std=c++11 -fno-exceptions -save-temps -v src/main.cpp -o .obj/main.cpp.o
Using built-in specs.
COLLECT_GCC=tools/gcc-arm-none-eabi-4_9-2015q1/bin/arm-none-eabi-g++
Target: arm-none-eabi
Configured with: /home/build/work/GCC-4-9-build/src/gcc/configure
--target=arm-none-eabi --prefix=/home/build/work/GCC-4-9-build/install-native
--libexecdir=/home/build/work/GCC-4-9-build/install-native/lib
--infodir=/home/build/work/GCC-4-9-build/install-native/share/doc/gcc-arm-none-eabi/info
--mandir=/home/build/work/GCC-4-9-build/install-native/share/doc/gcc-arm-none-eabi/man
--htmldir=/home/build/work/GCC-4-9-build/install-native/share/doc/gcc-arm-none-eabi/html
--pdfdir=/home/build/work/GCC-4-9-build/install-native/share/doc/gcc-arm-none-eabi/pdf
--enable-languages=c,c++ --enable-plugins --disable-decimal-float
--disable-libffi --disable-libgomp --disable-libmudflap --disable-libquadmath
--disable-libssp --disable-libstdcxx-pch --disable-nls --disable-shared
--disable-threads --disable-tls --with-gnu-as --with-gnu-ld --with-newlib
--with-headers=yes --with-python-dir=share/gcc-arm-none-eabi
--with-sysroot=/home/build/work/GCC-4-9-build/install-native/arm-none-eabi
--build=i686-linux-gnu --host=i686-linux-gnu
--with-gmp=/home/build/work/GCC-4-9-build/build-native/host-libs/usr
--with-mpfr=/home/build/work/GCC-4-9-build/build-native/host-libs/usr
--with-mpc=/home/build/work/GCC-4-9-build/build-native/host-libs/usr
--with-isl=/home/build/work/GCC-4-9-build/build-native/host-libs/usr
--with-cloog=/home/build/work/GCC-4-9-build/build-native/host-libs/usr
--with-libelf=/home/build/work/GCC-4-9-build/build-native/host-libs/usr
--with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm'
--with-pkgversion='GNU Tools for ARM Embedded Processors'
--with-multilib-list=armv6-m,armv7-m,armv7e-m,cortex-m7,armv7-r
Thread model: single
gcc version 4.9.3 20150303 (release) [ARM/embedded-4_9-branch revision 221220]
(GNU Tools for ARM Embedded Processors) 
COLLECT_GCC_OPTIONS='-MT' '.obj/main.cpp.o' '-MMD' '-MP' '-MF' '.obj/main.Td'
'-c' '-D' 'DEVELOPER_VERSION' '-I' 'include' '-Wno-unused' '-g3' '-O0'
'-std=c++11' '-fno-exceptions' '-save-temps' '-v' '-o' '.obj/main.cpp.o'

/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/cc1plus
-E -quiet -v -I include -iprefix
/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/
-isysroot
/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../arm-none-eabi
-MMD .obj/main.cpp.d -MF .obj/main.Td -MP -MT .obj/main.cpp.o -dD
-D__USES_INITFINI__ -D DEVELOPER_VERSION src/main.cpp -std=c++11 -Wno-unused
-fno-exceptions -g3 -fworking-directory -O0 -fpch-preprocess -o main.ii
ignoring duplicate directory
"/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/../../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/include/c++/4.9.3"
ignoring duplicate directory
"/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/../../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/include/c++/4.9.3/arm-none-eabi"
ignoring duplicate directory
"/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/../../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/include/c++/4.9.3/backward"
ignoring duplicate directory
"/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/../../lib/gcc/arm-none-eabi/4.9.3/include"
ignoring nonexistent directory
"/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../arm-none-eabi/usr/local/include"
ignoring duplicate directory
"/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/../../lib/gcc/arm-none-eabi/4.9.3/include-fixed"
ignoring duplicate directory
"/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/../../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/include"
ignoring nonexistent directory
"/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../arm-none-eabi/usr/include"
#include "..." search starts here:
#include <...> search starts here:
 include

/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/include/c++/4.9.3

/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/include/c++/4.9.3/arm-none-eabi

/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/include/c++/4.9.3/backward

/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/include

/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/include-fixed

/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/include
End of search list.
COLLECT_GCC_OPTIONS='-MT' '.obj/main.cpp.o' '-MMD' '-MP' '-MF' '.obj/main.Td'
'-c' '-D' 'DEVELOPER_VERSION' '-I' 'include' '-Wno-unused' '-g3' '-O0'
'-std=c++11' '-fno-exceptions' '-save-temps' '-v' '-o' '.obj/main.cpp.o'

/home/tooma/proj/cnc/fw/nstm32f4/tools/gcc-arm-none-eabi-4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/cc1plus
-fpreprocessed main.ii -quiet -dumpbase main.cpp -auxbase-strip .obj/main.cpp.o
-g3 -O0 -Wno-unused -std=c++11 -version -fno-exceptions -o main.s
GNU C++ (GNU Tools for ARM Embedded Processors) version 4.9.3 20150303
(release) [ARM/embedded-4_9-branch revision 221220] (arm-none-eabi)
        compiled by GNU C version 4.7.4, GMP version 4.3.2, MPFR version 2.4.2,
MPC version 0.8.1
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C++ (GNU Tools for ARM Embedded Processors) version 4.9.3 20150303
(release) [ARM/embedded-4_9-branch revision 221220] (arm-none-eabi)
        compiled by GNU C version 4.7.4, GMP version 4.3.2, MPFR version 2.4.2,
MPC version 0.8.1
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 67ffeb4f308275707e0820985f703a94
src/main.cpp: In function 'void __static_initialization_and_destruction_0(int,
int)':
src/main.cpp:17:12: internal compiler error: in make_decl_rtl, at varasm.c:1223
 const Task tasks[] = {


^ permalink raw reply	[flat|nested] 2+ messages in thread

* [Bug c++/67831] Internal error on complicated constexpr initialization.
  2015-10-03  9:10 [Bug c++/67831] New: Internal error on complicated constexpr initialization st.spamable at gmail dot com
@ 2015-10-03 10:13 ` miyuki at gcc dot gnu.org
  0 siblings, 0 replies; 2+ messages in thread
From: miyuki at gcc dot gnu.org @ 2015-10-03 10:13 UTC (permalink / raw)
  To: gcc-bugs

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

Mikhail Maltsev <miyuki at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-10-03
                 CC|                            |miyuki at gcc dot gnu.org
     Ever confirmed|0                           |1
      Known to fail|                            |6.0

--- Comment #1 from Mikhail Maltsev <miyuki at gcc dot gnu.org> ---
This also reproduces on x86_64 trunk. Probably related to PR 67398.

$ cat main2.cc
struct Task {
  struct TaskStaticData {
    constexpr TaskStaticData() {}
  } const &tsd;
  constexpr Task() : tsd(TaskStaticData()) {}
};

Task tasks{Task()};

$ cc1plus main2.cc 
main2.cc: In function 'void __static_initialization_and_destruction_0(int,
int)':
main2.cc:8:6: internal compiler error: in make_decl_rtl, at varasm.c:1306
 Task tasks{Task()};
      ^
0xf5c1d5 make_decl_rtl(tree_node*)
        /home/miyuki/gcc/src/gcc/varasm.c:1302
0x9d4378 expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
        /home/miyuki/gcc/src/gcc/expr.c:9550
0x9de576 expand_expr
        /home/miyuki/gcc/src/gcc/expr.h:255
0x9de576 expand_expr_addr_expr_1
        /home/miyuki/gcc/src/gcc/expr.c:7601
0x9d2931 expand_expr_addr_expr
        /home/miyuki/gcc/src/gcc/expr.c:7721
0x9d2931 expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
        /home/miyuki/gcc/src/gcc/expr.c:10709
0x9df24f store_expr_with_bounds(tree_node*, rtx_def*, int, bool, tree_node*)
        /home/miyuki/gcc/src/gcc/expr.c:5399
0x9e1825 expand_assignment(tree_node*, tree_node*, bool)
        /home/miyuki/gcc/src/gcc/expr.c:5171
0x8d3358 expand_gimple_stmt_1
        /home/miyuki/gcc/src/gcc/cfgexpand.c:3584
0x8d3358 expand_gimple_stmt
        /home/miyuki/gcc/src/gcc/cfgexpand.c:3680
0x8d5906 expand_gimple_basic_block
        /home/miyuki/gcc/src/gcc/cfgexpand.c:5684
0x8dbee6 execute
        /home/miyuki/gcc/src/gcc/cfgexpand.c:6296
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.

clang++ -S -std=c++11 main2.cc 
main2.cc:5:26: warning: binding reference member 'tsd' to a temporary value
[-Wdangling-field]
  constexpr Task() : tsd(TaskStaticData()) {}
                         ^~~~~~~~~~~~~~~~
main2.cc:4:12: note: reference member declared here
  } const &tsd;
           ^
1 warning generated.


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-10-03 10:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-03  9:10 [Bug c++/67831] New: Internal error on complicated constexpr initialization st.spamable at gmail dot com
2015-10-03 10:13 ` [Bug c++/67831] " miyuki at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).