From c00aedb4a591fc19818ad28846b7cf03c744a730 Mon Sep 17 00:00:00 2001 From: Andreas Fuchs Date: Wed, 19 Aug 2020 08:16:50 -0400 Subject: [PATCH] Fix windows NT handling for [...]_add_driver_options * Instead of conditionalizing on the wrong preprocessor flag, now use the right one: LIBGCCJIT_HAVE_gcc_jit_context_add_driver_option * Also perform the driver-option-adding step on win NT, but only if the function is non-NULL. * Make the function declaration for add_driver_options non-old-style. --- src/comp.c | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/src/comp.c b/src/comp.c index 97a56658707..03409cba0cd 100644 --- a/src/comp.c +++ b/src/comp.c @@ -4123,23 +4123,34 @@ DEFUN ("comp--release-ctxt", Fcomp__release_ctxt, Scomp__release_ctxt, } static void -add_driver_options () +add_driver_options (void) { Lisp_Object options = Fsymbol_value (Qcomp_native_driver_options); -#ifdef LIBGCCJIT_HAVE_gcc_jit_context_add_command_line_option - while (CONSP (options)) +#if defined (LIBGCCJIT_HAVE_gcc_jit_context_add_driver_option) \ + || defined (WINDOWSNT) +#pragma GCC diagnostic ignored "-Waddress" + if (gcc_jit_context_add_driver_option) { - gcc_jit_context_add_driver_option (comp.ctxt, SSDATA (XCAR (options))); - options = XCDR (options); + while (CONSP (options)) + { + gcc_jit_context_add_driver_option (comp.ctxt, + SSDATA (XCAR (options))); + options = XCDR (options); + } + + return; } -#else +#pragma GCC diagnostic pop +#endif if (CONSP (options)) { xsignal1 (Qnative_compiler_error, - build_string ("Customizing native compiler options via `comp-native-driver-options' is only available on libgccjit version 9 and above.")); + build_string ("Customizing native compiler options" + " via `comp-native-driver-options' is" + " only available on libgccjit version 9" + " and above.")); } -#endif } static void -- 2.39.5