[Bug preprocessor/105608] New: [13 Regression] ICE: in linemap_add, at libcpp/line-map.cc:502 on ovito-3.7.1
slyfox at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun May 15 08:08:00 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105608
Bug ID: 105608
Summary: [13 Regression] ICE: in linemap_add, at
libcpp/line-map.cc:502 on ovito-3.7.1
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: preprocessor
Assignee: unassigned at gcc dot gnu.org
Reporter: slyfox at gcc dot gnu.org
Target Milestone: ---
ICE initially observed on ovito-3.7.1 source code where
-DCOPYRIGHT="\"${long-string}\"" is used along with precompiled headers in
standard cmake setup.
Here is a 0-file reproducer:
# create empty files and dirs:
$ mkdir -p ph
$ touch ph/h.hxx.cxx
$ touch a.cpp
# trigger the bug:
$ /tmp/gb/gcc/xg++ -B/tmp/gb/gcc -Winvalid-pch -x c++-header -o ph/h.hxx.gch -c
ph/h.hxx.cxx
$ /tmp/gb/gcc/xg++ -B/tmp/gb/gcc
-DBUG=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-Winvalid-pch -include ph/h.hxx -o a.o -c a.cpp
ph/h.hxx.cxx:1:116: internal compiler error: in linemap_add, at
libcpp/line-map.cc:502
0x220adce linemap_add(line_maps*, lc_reason, unsigned int, char const*,
unsigned int)
<<GCC>>/libcpp/line-map.cc:502
0x220b129 linemap_line_start(line_maps*, unsigned int, unsigned int)
<<GCC>>/libcpp/line-map.cc:827
0x220b3f3 linemap_position_for_column(line_maps*, unsigned int)
<<GCC>>/libcpp/line-map.cc:898
0x220802b _cpp_lex_direct
<<GCC>>/libcpp/lex.cc:3596
0x22119dd lex_expansion_token
<<GCC>>/libcpp/macro.cc:3552
0x22119dd create_iso_definition
<<GCC>>/libcpp/macro.cc:3665
0x22119dd _cpp_create_definition
<<GCC>>/libcpp/macro.cc:3829
0x2214574 cpp_read_state(cpp_reader*, char const*, _IO_FILE*, save_macro_data*)
<<GCC>>/libcpp/pch.cc:841
0xad8b8d c_common_read_pch(cpp_reader*, char const*, int, char const*)
<<GCC>>/gcc/c-family/c-pch.cc:347
0x2201213 is_known_idempotent_file
<<GCC>>/libcpp/files.cc:817
0x2201213 _cpp_stack_file
<<GCC>>/libcpp/files.cc:906
0x220182e _cpp_stack_include
<<GCC>>/libcpp/files.cc:1113
0x2201e26 cpp_push_include(cpp_reader*, char const*)
<<GCC>>/libcpp/files.cc:1621
0xad5d51 push_command_line_include
<<GCC>>/gcc/c-family/c-opts.cc:1565
0xad5e79 cb_file_change
<<GCC>>/gcc/c-family/c-opts.cc:1619
0x21f95cc _cpp_do_file_change
<<GCC>>/libcpp/directives.cc:1181
0x21fa073 _cpp_pop_buffer
<<GCC>>/libcpp/directives.cc:2773
0x22045b0 _cpp_get_fresh_line
<<GCC>>/libcpp/lex.cc:3490
0x2207eb8 _cpp_lex_direct
<<GCC>>/libcpp/lex.cc:3552
0x2209867 _cpp_lex_token
<<GCC>>/libcpp/lex.cc:3398
gcc-12.1.0 does not seem to be affected. Only gcc-13 fails for me including
current master.
$ /tmp/gb/gcc/xg++ -B/tmp/gb/gcc -v
Reading specs from /tmp/gb/gcc/specs
COLLECT_GCC=/tmp/gb/gcc/xg++
COLLECT_LTO_WRAPPER=/tmp/gb/gcc/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: <<GCC>>/configure --disable-multilib --disable-bootstrap
--with-native-system-header-dir=/<<NIX>>/glibc-2.34-115-dev/include
--prefix=/tmp/gb/__td__ CFLAGS='-O1 -ggdb3' CXXFLAGS='-O1 -ggdb3' LDFLAGS='-O1
-ggdb3'
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 13.0.0 20220515 (experimental) (GCC)
More information about the Gcc-bugs
mailing list