https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118860
Zdenek Sojka <zsojka at seznam dot cz> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |zsojka at seznam dot cz --- Comment #1 from Zdenek Sojka <zsojka at seznam dot cz> --- Basically any valid or invalid testcase triggers this: $ cat testcase.c struct {}; x86_64-pc-linux-gnu-gcc --param=file-cache-files=32 testcase.c -wrapper valgrind,-q ==19673== Invalid read of size 8 ==19673== at 0x2E2549E: get_file_path (input.cc:67) ==19673== by 0x2E2549E: file_cache::lookup_file(char const*) (input.cc:331) ==19673== by 0x2E26BF5: lookup_or_add_file (input.cc:600) ==19673== by 0x2E26BF5: file_cache::get_source_line(char const*, int) (input.cc:1029) ==19673== by 0x2E27B2C: location_compute_display_column(file_cache&, expanded_location, cpp_char_column_policy const&) (input.cc:1280) ==19673== by 0x2DD4FB1: convert_column_unit (diagnostic.cc:690) ==19673== by 0x2DD4FB1: diagnostic_column_policy::converted_column(expanded_location) const (diagnostic.cc:713) ==19673== by 0x2DD50C7: diagnostic_column_policy::get_location_text(expanded_location const&, bool, bool) const (diagnostic.cc:736) ==19673== by 0x2DEB505: get_location_text (diagnostic-format-text.cc:612) ==19673== by 0x2DEB505: diagnostic_text_output_format::build_prefix(diagnostic_info const&) const (diagnostic-format-text.cc:326) ==19673== by 0x16EFD3D: default_tree_diagnostic_text_starter(diagnostic_text_output_format&, diagnostic_info const*) (tree-diagnostic.cc:52) ==19673== by 0x2DEB274: diagnostic_text_output_format::on_report_diagnostic(diagnostic_info const&, diagnostic_t) (diagnostic-format-text.cc:209) ==19673== by 0x2DD7EF2: diagnostic_context::report_diagnostic(diagnostic_info*) (diagnostic.cc:1483) ==19673== by 0x2DD822D: diagnostic_context::diagnostic_impl(rich_location*, diagnostic_metadata const*, diagnostic_option_id, char const*, __va_list_tag (*) [1], diagnostic_t) (diagnostic.cc:1614) ==19673== by 0x2DEC7C3: pedwarn(unsigned long, diagnostic_option_id, char const*, ...) (diagnostic-global-context.cc:291) ==19673== by 0xF18267: shadow_tag_warned(c_declspecs const*, int) (c-decl.cc:5044) ==19673== Address 0x500f280 is 8 bytes after a block of size 1,928 alloc'd ==19673== at 0x484873F: operator new[](unsigned long) (vg_replace_malloc.c:729) ==19673== by 0x2E257B0: file_cache::file_cache() (input.cc:561) ==19673== by 0x2DD68C1: diagnostic_context::initialize(int) (diagnostic.cc:228) ==19673== by 0xEFFF30: diagnostic_initialize (diagnostic.h:1078) ==19673== by 0xEFFF30: general_init (toplev.cc:1065) ==19673== by 0xEFFF30: toplev::main(int, char**) (toplev.cc:2296) ==19673== by 0xF02BED: main (main.cc:39) ==19673== ...