From 4a494a8cf94596e73a7ace576111500be7a6f758 Mon Sep 17 00:00:00 2001 From: Matthew Lugg Date: Wed, 25 Mar 2026 20:17:09 +0000 Subject: [PATCH] tests: enable incremental tests for x86_64-linux-llvm These all pass now! I have also removed the warning about the LLVM backend not supporting incremental compilation; I expect it will work sort of okay in practice by now. --- src/main.zig | 4 ---- test/incremental/add_decl | 1 + test/incremental/add_decl_namespaced | 1 + test/incremental/add_remove_struct_fields | 1 + test/incremental/add_remove_toplevel_fields | 1 + test/incremental/analysis_error_and_syntax_error | 1 + test/incremental/bad_import | 1 + test/incremental/change_embed_file | 1 + test/incremental/change_enum_tag_type | 1 + test/incremental/change_exports | 1 + test/incremental/change_fn_type | 1 + test/incremental/change_generic_line_number | 1 + test/incremental/change_line_number | 1 + test/incremental/change_module | 1 + test/incremental/change_panic_handler | 1 + test/incremental/change_panic_handler_explicit | 1 + test/incremental/change_shift_op | 1 + test/incremental/change_struct_same_fields | 1 + test/incremental/change_zon_file | 1 + test/incremental/change_zon_file_no_result_type | 1 + test/incremental/compile_error_then_log | 1 + test/incremental/compile_log | 1 + test/incremental/delete_comptime_decls | 1 + test/incremental/dependency_on_type_of_inferred_global | 1 + test/incremental/fix_astgen_failure | 1 + test/incremental/function_becomes_inline | 1 + test/incremental/hello | 1 + test/incremental/make_decl_pub | 1 + test/incremental/modify_inline_fn | 1 + test/incremental/move_src | 1 + test/incremental/no_change_preserves_tag_names | 1 + test/incremental/recursive_function_becomes_non_recursive | 1 + test/incremental/remove_enum_field | 1 + test/incremental/remove_invalid_union_backing_enum | 1 + test/incremental/temporary_parse_error | 1 + test/incremental/type_becomes_comptime_only | 1 + test/incremental/type_dependency_loop | 1 + test/incremental/unreferenced_error | 1 + 38 files changed, 37 insertions(+), 4 deletions(-) diff --git a/src/main.zig b/src/main.zig index 5554e87c1d263fa31aec9917bde9c1794a80193a..4a69edfe82d9b2a11e0247691e13c4a9482ec9e8 100644 --- a/src/main.zig +++ b/src/main.zig @@ -3528,10 +3528,6 @@ fn buildOutputType( fatal("--debug-incremental requires -fincremental", .{}); } - if (incremental and create_module.resolved_options.use_llvm) { - warn("-fincremental is currently unsupported by the LLVM backend; crashes or miscompilations are likely", .{}); - } - const cache_mode: Compilation.CacheMode = b: { // Once incremental compilation is the default, we'll want some smarter logic here, // considering things like the backend in use and whether there's a ZCU. diff --git a/test/incremental/add_decl b/test/incremental/add_decl index 662160fc2dc1038babaab18a234d0917d82675bc..e91eda1930a5c90485112ef01c08f9ea8fab18e9 100644 --- a/test/incremental/add_decl +++ b/test/incremental/add_decl @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm //#target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/add_decl_namespaced b/test/incremental/add_decl_namespaced index aed78815c81aec020f3a4e4dc6a7bbb8c0054ffe..389aef6fb8d289a480260811b7d51a0c6a32858d 100644 --- a/test/incremental/add_decl_namespaced +++ b/test/incremental/add_decl_namespaced @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm //#target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/add_remove_struct_fields b/test/incremental/add_remove_struct_fields index f046229101ee2c1873cc7a0b0f1e0488a25b3c64..34ad260ae1aa479686eec3fd68d4061e2afa8cc5 100644 --- a/test/incremental/add_remove_struct_fields +++ b/test/incremental/add_remove_struct_fields @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm //#target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/add_remove_toplevel_fields b/test/incremental/add_remove_toplevel_fields index 2d5483778ae350bc0de545cc2c97711e32236bd2..83775ae3e3cafa535ebfd79ec9d0b21b250fed66 100644 --- a/test/incremental/add_remove_toplevel_fields +++ b/test/incremental/add_remove_toplevel_fields @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm //#target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/analysis_error_and_syntax_error b/test/incremental/analysis_error_and_syntax_error index 43ba7480526a216c92184ec834a48d3e9fbcd957..c41fecb94572d09c8f8b947fa1cf18300678c115 100644 --- a/test/incremental/analysis_error_and_syntax_error +++ b/test/incremental/analysis_error_and_syntax_error @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/bad_import b/test/incremental/bad_import index b9437714033b679afeb2fdea126c7f4d822f9177..15b9c17fd1f0063bc73783fa6c2a27bc8ac0e3f6 100644 --- a/test/incremental/bad_import +++ b/test/incremental/bad_import @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version diff --git a/test/incremental/change_embed_file b/test/incremental/change_embed_file index 92b9ec23e370e047973886cd613e8287adca5214..74cd2ac146b6844209ceb23762386c463d535b57 100644 --- a/test/incremental/change_embed_file +++ b/test/incremental/change_embed_file @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/change_enum_tag_type b/test/incremental/change_enum_tag_type index 46681407cb6a259e44b1e6071281ecc302b14967..678e9c8c4c11d4c3061d5d9628da4d072a787272 100644 --- a/test/incremental/change_enum_tag_type +++ b/test/incremental/change_enum_tag_type @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/change_exports b/test/incremental/change_exports index 05e3111cebe4903384284aaf0ee0daf9abc9c388..c44bd324888e2a67abd9aaa29aa73683b605e14d 100644 --- a/test/incremental/change_exports +++ b/test/incremental/change_exports @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #update=initial version #file=main.zig diff --git a/test/incremental/change_fn_type b/test/incremental/change_fn_type index 0c512e416e49b208939d07d1c8d80bf42f525afd..69e25a5a4aa7e896e44583867873bc34f5da07b7 100644 --- a/test/incremental/change_fn_type +++ b/test/incremental/change_fn_type @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #update=initial version #file=main.zig pub fn main() !void { diff --git a/test/incremental/change_generic_line_number b/test/incremental/change_generic_line_number index 45b3d2f0d02ff724012328c84db643de027d11a6..d5f7e4b5c181dcdb72c00a4e89af14ad84913f5b 100644 --- a/test/incremental/change_generic_line_number +++ b/test/incremental/change_generic_line_number @@ -1,5 +1,6 @@ #target=x86_64-linux-selfhosted #target=x86_64-windows-selfhosted +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/change_line_number b/test/incremental/change_line_number index c95b690f7f07003c1fcafdc473334540dda5bd93..a06aa3a9006054493549ba8c89389bbe5607a892 100644 --- a/test/incremental/change_line_number +++ b/test/incremental/change_line_number @@ -1,5 +1,6 @@ #target=x86_64-linux-selfhosted #target=x86_64-windows-selfhosted +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/change_module b/test/incremental/change_module index 6275536ad4a8f3bc362eebad43a14f7533ee578b..94cd39bb378b3966977650cfba73c0db4023ad53 100644 --- a/test/incremental/change_module +++ b/test/incremental/change_module @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #module=foo=foo.zig diff --git a/test/incremental/change_panic_handler b/test/incremental/change_panic_handler index 2d8e95f6e11b352b791ff66d927cc626f9bfc48b..13685406dff01786fe8ff1fe17ad0133a162f448 100644 --- a/test/incremental/change_panic_handler +++ b/test/incremental/change_panic_handler @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #update=initial version #file=main.zig pub fn main() !u8 { diff --git a/test/incremental/change_panic_handler_explicit b/test/incremental/change_panic_handler_explicit index bf57a076282d7c609e307c333b5ccfb660b6c88e..ed4cfcfca44cad7f2c7085b6855a3312bdf7542c 100644 --- a/test/incremental/change_panic_handler_explicit +++ b/test/incremental/change_panic_handler_explicit @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #update=initial version #file=main.zig pub fn main() !u8 { diff --git a/test/incremental/change_shift_op b/test/incremental/change_shift_op index 159ef6f11d1ab0dbd6e7074cd49afa75b02af67e..31a8b67c687680f45aec4bf5fb0be385b6bbdc84 100644 --- a/test/incremental/change_shift_op +++ b/test/incremental/change_shift_op @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/change_struct_same_fields b/test/incremental/change_struct_same_fields index 180948337020cba4922e030e2e01ef0a0c189a38..d686688172ff030864ab4d2ea524fabc8c33118e 100644 --- a/test/incremental/change_struct_same_fields +++ b/test/incremental/change_struct_same_fields @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/change_zon_file b/test/incremental/change_zon_file index beeffec4373c4ddf6ce48a7e566cd29f32d4e38f..822996ac74966971b237718461d555ce461d194f 100644 --- a/test/incremental/change_zon_file +++ b/test/incremental/change_zon_file @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm //#target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/change_zon_file_no_result_type b/test/incremental/change_zon_file_no_result_type index d05aecedfbccf72fe96709b3aa42a02042b745a9..f9a3c3006577c64a6b8725e90fef02e67364130f 100644 --- a/test/incremental/change_zon_file_no_result_type +++ b/test/incremental/change_zon_file_no_result_type @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm //#target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/compile_error_then_log b/test/incremental/compile_error_then_log index 9bd306fbf75fe325f50b1f948d4efe0eb08a6187..91053ff45c5086a5fa550d1078aac30c34ebe3ea 100644 --- a/test/incremental/compile_error_then_log +++ b/test/incremental/compile_error_then_log @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version with compile error #file=main.zig diff --git a/test/incremental/compile_log b/test/incremental/compile_log index 3ed5467a9a175c559bef5b910215a05175fa8d5c..41fc344d1724d5a76371d60291ea5e290cafff2e 100644 --- a/test/incremental/compile_log +++ b/test/incremental/compile_log @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version with no compile log diff --git a/test/incremental/delete_comptime_decls b/test/incremental/delete_comptime_decls index c8b68e31ed101633dcb64b63fefdfbc19b5494cb..261c03343ccfb28f52fbfa69e5bd2699dcf6344a 100644 --- a/test/incremental/delete_comptime_decls +++ b/test/incremental/delete_comptime_decls @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/dependency_on_type_of_inferred_global b/test/incremental/dependency_on_type_of_inferred_global index 9d5ab28034d3be7c13e2f2261c9bc4a42b92c31d..b7b0f7d979aa4451d6a6decd14c347bc15e03723 100644 --- a/test/incremental/dependency_on_type_of_inferred_global +++ b/test/incremental/dependency_on_type_of_inferred_global @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/fix_astgen_failure b/test/incremental/fix_astgen_failure index 701e9973a73e5df91b3d2cda86188c15b96ad67b..fcfc51e8a2c6656964c18a8af5ec6cabd44b24f1 100644 --- a/test/incremental/fix_astgen_failure +++ b/test/incremental/fix_astgen_failure @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version with error #file=main.zig diff --git a/test/incremental/function_becomes_inline b/test/incremental/function_becomes_inline index eefb4f1a077d437389c79631f6bcd2953821e3f0..b63aa3e5697a600d2463dfb3af9282ea62b223a4 100644 --- a/test/incremental/function_becomes_inline +++ b/test/incremental/function_becomes_inline @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #update=non-inline version #file=main.zig pub fn main() !void { diff --git a/test/incremental/hello b/test/incremental/hello index e2146e52be590779e8132e65ba9e5503a2d80e98..7699f6f7a27f13725a06b4899bee61d247578275 100644 --- a/test/incremental/hello +++ b/test/incremental/hello @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/make_decl_pub b/test/incremental/make_decl_pub index a2c87b8f50114fa9b77216f0b4036e8a55e81fc7..f985690cae0719caf1693f7b29b2bed6083fcb06 100644 --- a/test/incremental/make_decl_pub +++ b/test/incremental/make_decl_pub @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/modify_inline_fn b/test/incremental/modify_inline_fn index 6bf1f0baf29729ca12729955fe1683a6d3cf3706..96d483233895be5766fcdaf3d73418620d91a845 100644 --- a/test/incremental/modify_inline_fn +++ b/test/incremental/modify_inline_fn @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/move_src b/test/incremental/move_src index a60211e31b86f3dbf3746b28ee39df4c92e83803..200b6767cf1f7269b61251cfe6cdada5779b8f93 100644 --- a/test/incremental/move_src +++ b/test/incremental/move_src @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/no_change_preserves_tag_names b/test/incremental/no_change_preserves_tag_names index 06dc2f069c23634ad1d70ea30b997c555c483241..7d7e0b20ea4d0756258815d477368ec68d715664 100644 --- a/test/incremental/no_change_preserves_tag_names +++ b/test/incremental/no_change_preserves_tag_names @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm //#target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/recursive_function_becomes_non_recursive b/test/incremental/recursive_function_becomes_non_recursive index ad8c0059fabba099e12f0e2b6055127aab0dc9a2..6830d9c5f92ffd19aac10bd0ff4ff327a6db7fcb 100644 --- a/test/incremental/recursive_function_becomes_non_recursive +++ b/test/incremental/recursive_function_becomes_non_recursive @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/remove_enum_field b/test/incremental/remove_enum_field index a1bbab8fd0fdaaf65115cb29d2b0210ccc77f862..fe1db0974aa225a72e6f28ac930988cfcdc2c4ac 100644 --- a/test/incremental/remove_enum_field +++ b/test/incremental/remove_enum_field @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/remove_invalid_union_backing_enum b/test/incremental/remove_invalid_union_backing_enum index 84abedcf7b418a04ed22a1c578b0a007d6da132c..51dc76fd07377d621c59ba136e4b00c925b79e8d 100644 --- a/test/incremental/remove_invalid_union_backing_enum +++ b/test/incremental/remove_invalid_union_backing_enum @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/temporary_parse_error b/test/incremental/temporary_parse_error index 956ed61225701ca155e5ebfa5743a0298858f099..3b408b40488f18d96b810855f151ecc14409b01a 100644 --- a/test/incremental/temporary_parse_error +++ b/test/incremental/temporary_parse_error @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/type_becomes_comptime_only b/test/incremental/type_becomes_comptime_only index 8e712042f586dbc77d26697a27cedeece19f4b8e..6d4502a555b053579ebde54c2e307ab87f056cb5 100644 --- a/test/incremental/type_becomes_comptime_only +++ b/test/incremental/type_becomes_comptime_only @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/type_dependency_loop b/test/incremental/type_dependency_loop index 40f41bf19fe4bb4d7a19b5a4a40a0a10fb361ca9..c58ec93e75cbc84f78ad1df875728362bceb69a4 100644 --- a/test/incremental/type_dependency_loop +++ b/test/incremental/type_dependency_loop @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig diff --git a/test/incremental/unreferenced_error b/test/incremental/unreferenced_error index 25790ed0447950ebefa41f677d594e5dbc4b76f4..d52819797672eb752f6c9d8e43d6254e81b4e726 100644 --- a/test/incremental/unreferenced_error +++ b/test/incremental/unreferenced_error @@ -2,6 +2,7 @@ #target=x86_64-windows-selfhosted #target=x86_64-linux-cbe #target=x86_64-windows-cbe +#target=x86_64-linux-llvm #target=wasm32-wasi-selfhosted #update=initial version #file=main.zig -- 2.54.0