Hi.

One obvious fix that can be triggered:

 gcov asdnkjasndjkn
asdnkjasndjkn.gcno:cannot open notes file
asdnkjasndjkn.gcda:cannot open data file, assuming not executed
gcov: internal compiler error: in string, at json.cc:159
0x4038e7 json::string::string(char const*)
        /home/marxin/Programming/gcc/gcc/json.cc:159
0x4038e7 json::string::string(char const*)
        /home/marxin/Programming/gcc/gcc/json.cc:157
0x40b2b3 generate_results
        /home/marxin/Programming/gcc/gcc/gcov.c:1402

I'm going to install the patch.

Martin

gcc/ChangeLog:

2018-11-27  Martin Liska  <mli...@suse.cz>

        * gcov.c (generate_results): Append current_working_directory
        only when exists.
---
 gcc/gcov.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)


diff --git a/gcc/gcov.c b/gcc/gcov.c
index 5fb83c08179..23d75f89265 100644
--- a/gcc/gcov.c
+++ b/gcc/gcov.c
@@ -1399,7 +1399,9 @@ generate_results (const char *file_name)
   json::object *root = new json::object ();
   root->set ("format_version", new json::string ("1"));
   root->set ("gcc_version", new json::string (version_string));
-  root->set ("current_working_directory", new json::string (bbg_cwd));
+
+  if (bbg_cwd != NULL)
+    root->set ("current_working_directory", new json::string (bbg_cwd));
 
   json::array *json_files = new json::array ();
   root->set ("files", json_files);

Reply via email to