summaryrefslogtreecommitdiff
path: root/libgcc/libgcov-driver-system.c
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2018-05-29 14:11:21 +0200
committerMartin Liska <marxin@gcc.gnu.org>2018-05-29 12:11:21 +0000
commit0e8f29daae817560fa28935f23150307abee8f43 (patch)
treedae6fb571218c28f4bd4fc966f8b044443aebbc7 /libgcc/libgcov-driver-system.c
parente379122d1f078d230514ff862c4f9053c2898af4 (diff)
downloadgcc-0e8f29daae817560fa28935f23150307abee8f43.tar.gz
libgcov: report about a different timestamp (PR gcov-profile/85759).
2018-05-29 Martin Liska <mliska@suse.cz> PR gcov-profile/85759 * doc/gcov.texi: Document GCOV_ERROR_FILE and GCOV_EXIT_AT_ERROR env variables. 2018-05-29 Martin Liska <mliska@suse.cz> PR gcov-profile/85759 * libgcov-driver-system.c (gcov_error): Introduce usage of GCOV_EXIT_AT_ERROR env. variable. * libgcov-driver.c (merge_one_data): Print error that we overwrite a gcov file with a different timestamp. From-SVN: r260895
Diffstat (limited to 'libgcc/libgcov-driver-system.c')
-rw-r--r--libgcc/libgcov-driver-system.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/libgcc/libgcov-driver-system.c b/libgcc/libgcov-driver-system.c
index 0df44239363..bf125869dc0 100644
--- a/libgcc/libgcov-driver-system.c
+++ b/libgcc/libgcov-driver-system.c
@@ -62,8 +62,16 @@ gcov_error (const char *fmt, ...)
va_list argp;
va_start (argp, fmt);
- ret = vfprintf (get_gcov_error_file (), fmt, argp);
+ FILE *f = get_gcov_error_file ();
+ ret = vfprintf (f, fmt, argp);
va_end (argp);
+
+ if (getenv ("GCOV_EXIT_AT_ERROR"))
+ {
+ fprintf (f, "profiling:exiting after an error\n");
+ exit (1);
+ }
+
return ret;
}