summaryrefslogtreecommitdiff
path: root/gcc/fortran/error.c
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2016-08-22 10:27:46 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2016-08-22 10:27:46 +0000
commitf733cf303bcdc952c92b81dd62199a40a1f555ec (patch)
tree0a9a9e0f28aa7c7f5bc4d1d1d0e9647163cac4f7 /gcc/fortran/error.c
parente0e4357b88efe5dc53e50d341a09de4d02331200 (diff)
downloadgcc-tarball-gcc-6.2.0.tar.gz
gcc-6.2.0gcc-6.2.0
Diffstat (limited to 'gcc/fortran/error.c')
-rw-r--r--gcc/fortran/error.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/fortran/error.c b/gcc/fortran/error.c
index 6cfe019e8a..49ede5a71f 100644
--- a/gcc/fortran/error.c
+++ b/gcc/fortran/error.c
@@ -1303,10 +1303,15 @@ gfc_error (const char *gmsgid, ...)
void
gfc_internal_error (const char *gmsgid, ...)
{
+ int e, w;
va_list argp;
diagnostic_info diagnostic;
rich_location rich_loc (line_table, UNKNOWN_LOCATION);
+ gfc_get_errors (&w, &e);
+ if (e > 0)
+ exit(EXIT_FAILURE);
+
va_start (argp, gmsgid);
diagnostic_set_info (&diagnostic, gmsgid, &argp, &rich_loc, DK_ICE);
report_diagnostic (&diagnostic);