https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88263
Csaba Ráduly <csaba_22 at yahoo dot co.uk> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED |--- --- Comment #4 from Csaba Ráduly <csaba_22 at yahoo dot co.uk> --- Alas, it's not enough. $ cat ../logger/src/logger2.cc #include <sstream> namespace log { class Logstream { public: ~Logstream(); private: /// The logging stream static thread_local std::ostringstream os_; }; } namespace log { thread_local std::ostringstream Logstream::os_; Logstream::~Logstream() { os_.clear(); } } $ g++-99 -v -save-temps --coverage -std=c++11 logger2.cc Using built-in specs. COLLECT_GCC=g++-99 COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-pc-linux-gnu/9.0.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: ../trunk/configure --program-suffix=-99 --enable-version-specific-runtime-libs --enable-languages=c,c++,lto : (reconfigured) ../trunk/configure --program-suffix=-99 --enable-version-specific-runtime-libs --enable-languages=c,c++,lto : (reconfigured) ../trunk/configure --program-suffix=-99 --enable-version-specific-runtime-libs --enable-languages=c,c++,lto --no-create --no-recursion Thread model: posix gcc version 9.0.0 20190107 (experimental) (GCC) COLLECT_GCC_OPTIONS='-v' '-save-temps' '-coverage' '-std=c++11' '-shared-libgcc' '-mtune=generic' '-march=x86-64' /usr/local/libexec/gcc/x86_64-pc-linux-gnu/9.0.0/cc1plus -E -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE logger2.cc -mtune=generic -march=x86-64 -std=c++11 -fpch-preprocess -o logger2.ii ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" ignoring nonexistent directory "/usr/local/lib/gcc/x86_64-pc-linux-gnu/9.0.0/../../../../x86_64-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/local/lib/gcc/x86_64-pc-linux-gnu/9.0.0/include/c++ /usr/local/lib/gcc/x86_64-pc-linux-gnu/9.0.0/include/c++/x86_64-pc-linux-gnu /usr/local/lib/gcc/x86_64-pc-linux-gnu/9.0.0/include/c++/backward /usr/local/lib/gcc/x86_64-pc-linux-gnu/9.0.0/include /usr/local/include /usr/local/lib/gcc/x86_64-pc-linux-gnu/9.0.0/include-fixed /usr/include/x86_64-linux-gnu /usr/include End of search list. COLLECT_GCC_OPTIONS='-v' '-save-temps' '-coverage' '-std=c++11' '-shared-libgcc' '-mtune=generic' '-march=x86-64' /usr/local/libexec/gcc/x86_64-pc-linux-gnu/9.0.0/cc1plus -fpreprocessed logger2.ii -quiet -dumpbase logger2.cc -mtune=generic -march=x86-64 -auxbase logger2 -std=c++11 -version -fprofile-arcs -ftest-coverage -o logger2.s GNU C++11 (GCC) version 9.0.0 20190107 (experimental) (x86_64-pc-linux-gnu) compiled by GNU C version 9.0.0 20190107 (experimental), GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version isl-0.19-GMP GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 GNU C++11 (GCC) version 9.0.0 20190107 (experimental) (x86_64-pc-linux-gnu) compiled by GNU C version 9.0.0 20190107 (experimental), GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version isl-0.19-GMP GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: 1e0a258bbf182f940eab1b98ac38dd40 during IPA pass: profile logger2.cc: In function ‘std::ostringstream& _ZTWN3log9Logstream3os_B5cxx11E()’: logger2.cc:25:1: internal compiler error: in coverage_begin_function, at coverage.c:655 25 | } | ^ 0x6ca694 coverage_begin_function(unsigned int, unsigned int) ../../trunk/gcc/basic-block.h:432 0xe843de branch_prob(bool) ../../trunk/gcc/profile.c:1233 0xfeba15 tree_profiling ../../trunk/gcc/tree-profile.c:793 0xfeba15 execute ../../trunk/gcc/tree-profile.c:898