* Better error handling after calling 'gcc_jit_context_compile_to_file'

Tipically errors are catched in 'compile_function' but in case
libgccjit throw an error only afterwards while compiling the whole
compilation unit we have to report it correctly.

	* src/comp.c (Fcomp__compile_ctxt_to_file): Catch libgccjit
	errors after calling 'gcc_jit_context_compile_to_file'.
This commit is contained in:
Andrea Corallo 2020-09-15 09:05:14 +02:00
parent 5f37c18581
commit 5b41545f1b

View file

@ -4391,6 +4391,13 @@ DEFUN ("comp--compile-ctxt-to-file", Fcomp__compile_ctxt_to_file,
GCC_JIT_OUTPUT_KIND_DYNAMIC_LIBRARY,
SSDATA (tmp_file));
const char *err = gcc_jit_context_get_first_error (comp.ctxt);
if (err)
xsignal3 (Qnative_ice,
build_string ("failed to compile"),
file_name,
build_string (err));
CALL1I (comp-clean-up-stale-eln, file_name);
CALL2I (comp-delete-or-replace-file, file_name, tmp_file);