diff --git a/loopy/target/c/c_execution.py b/loopy/target/c/c_execution.py
index b1566d0713bdf3008b921d33e2390994798c1669..ddd98b7335c5c2e9fcb68a74c4052b1f64100586 100644
--- a/loopy/target/c/c_execution.py
+++ b/loopy/target/c/c_execution.py
@@ -334,10 +334,13 @@ class CCompiler:
         _, _mod_name, ext_file, recompiled = \
             compile_from_string(
                 self.toolchain.copy(
-                    cflags=self.toolchain.cflags+list(extra_build_options)),
-                name, code, c_fname,
-                self.tempdir, debug, wait_on_error,
-                debug_recompile, False)
+                    cflags=[*self.toolchain.cflags, *extra_build_options]),
+                name, code,
+                source_name=c_fname,
+                cache_dir=self.tempdir,
+                debug=debug,
+                debug_recompile=debug_recompile,
+                object=False)
 
         if recompiled:
             logger.debug(f"Kernel {name} compiled from source")