https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87787
Bug ID: 87787 Summary: [9 Regression] runtime error: null pointer passed as argument 2, which is declared to never be null Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: jwakely.gcc at gmail dot com Target Milestone: --- Would be also a recent regression. I see following for ubsan-bootstrapped compiler: $ make check RUNTESTFLAGS="gcov.exp=gcov-pr86536.c" ... Creating 'gcov-pr86536.c.gcov' /home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/stl_uninitialized.h:907:24: runtime error: null pointer passed as argument 2, which is declared to never be null #0 0x460a82 in std::enable_if<std::__is_trivially_relocatable<char const*>::value, char const**>::type std::__relocate_a_1<char const*, char const*>(char const**, char const**, char const**, std::allocator<char const*>&) /home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/stl_uninitialized.h:907 #1 0x460a82 in char const** std::__relocate_a<char const**, char const**, std::allocator<char const*> >(char const**, char const**, char const**, std::allocator<char const*>&) /home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/stl_uninitialized.h:938 #2 0x460a82 in void std::vector<char const*, std::allocator<char const*> >::_M_realloc_insert<char const*>(__gnu_cxx::__normal_iterator<char const**, std::vector<char const*, std::allocator<char const*> > >, char const*&&) /home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/vector.tcc:464 #3 0x41dae9 in void std::vector<char const*, std::allocator<char const*> >::emplace_back<char const*>(char const*&&) /home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/vector.tcc:122 #4 0x41dae9 in std::vector<char const*, std::allocator<char const*> >::push_back(char const*&&) /home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/stl_vector.h:1164 #5 0x41dae9 in output_lines ../../gcc/gcov.c:2973 #6 0x4229a7 in output_gcov_file ../../gcc/gcov.c:1284 #7 0x4229a7 in generate_results ../../gcc/gcov.c:1389 #8 0x40e4f9 in main ../../gcc/gcov.c:813 #9 0x7ffa344f9724 in __libc_start_main (/lib64/libc.so.6+0x20724) #10 0x410248 in _start (/home/mliska/Programming/gcc/objdir/gcc/gcov+0x410248) It's about pushing a 'const char *' into a vector, I hope the usage is fine in gcov.c. Jonathan can you please take a look?