Actually just three programming languages in a trenchcoat

update to llvm 19

+25 -21
+3 -3
.github/workflows/c.yml
··· 12 12 - name: Install clang-format 13 13 run: | 14 14 sudo apt-get update 15 - sudo apt-get install clang-format-18 15 + sudo apt-get install clang-format-19 16 16 - name: Run clang-format 17 - run: clang-format-18 --Werror --dry-run *.{c,h} 17 + run: clang-format-19 --Werror --dry-run *.{c,h} 18 18 working-directory: trilogy-llvm/core 19 19 check: 20 20 name: check ··· 23 23 - name: Checkout the source code 24 24 uses: actions/checkout@v4 25 25 - name: Run clang-tidy 26 - run: clang-tidy-18 *.{c,h} -- 26 + run: clang-tidy-19 *.{c,h} -- 27 27 working-directory: trilogy-llvm/core
+4 -4
.github/workflows/rust.yml
··· 2 2 3 3 on: push 4 4 env: 5 - LLVM_SYS_181_PREFIX: /usr/lib/llvm-18/ 5 + LLVM_SYS_191_PREFIX: /usr/lib/llvm-19/ 6 6 7 7 jobs: 8 8 clippy: ··· 23 23 - name: Install LLVM 24 24 run: | 25 25 sudo apt-get update 26 - sudo apt-get install llvm-18 libpolly-18-dev 26 + sudo apt-get install llvm-19 libpolly-19-dev 27 27 - name: Install Rust 28 28 run: | 29 29 rustup install stable ··· 71 71 - name: Install LLVM 72 72 run: | 73 73 sudo apt-get update 74 - sudo apt-get install llvm-18 libpolly-18-dev 74 + sudo apt-get install llvm-19 libpolly-19-dev 75 75 - name: Install Rust 76 76 run: | 77 77 rustup install stable ··· 102 102 - name: Install LLVM 103 103 run: | 104 104 sudo apt-get update 105 - sudo apt-get install llvm-18 libpolly-18-dev valgrind 105 + sudo apt-get install llvm-19 libpolly-19-dev valgrind 106 106 - name: Install Rust 107 107 run: | 108 108 rustup install stable
+2 -1
.tangled/workflows/rust.yml
··· 7 7 dependencies: 8 8 nixpkgs: 9 9 - "rustup" 10 - - "clang_18" 10 + - "clang" 11 + - "libllvm" 11 12 - "valgrind" 12 13 13 14 steps:
+2 -2
Cargo.lock
··· 760 760 761 761 [[package]] 762 762 name = "llvm-sys" 763 - version = "181.2.0" 763 + version = "191.1.0" 764 764 source = "registry+https://github.com/rust-lang/crates.io-index" 765 - checksum = "d320f9d2723c97d4b78f9190a61ed25cc7cfbe456668c08e6e7dd8e50ceb8500" 765 + checksum = "d0ad1fffbdac72a40b55aa58b31aa0efe925e277941b6705f128692b27f1d506" 766 766 dependencies = [ 767 767 "anyhow", 768 768 "cc",
+2 -2
Justfile
··· 2 2 set shell := ["fish", "-c"] 3 3 set dotenv-load 4 4 5 - llvm_prefix := env("LLVM_SYS_181_PREFIX", "") 5 + llvm_prefix := env("LLVM_SYS_191_PREFIX", "") 6 6 clang := if llvm_prefix == "" { "clang" } else { llvm_prefix / "bin/clang" } 7 7 clang_format := if llvm_prefix == "" { "clang-format" } else { llvm_prefix / "bin/clang-format" } 8 8 clang_tidy := if llvm_prefix == "" { "clang-tidy" } else { llvm_prefix / "bin/clang-tidy" } 9 - lldb := `which lldb || which lldb-18` 9 + lldb := `which lldb || which lldb-19` 10 10 11 11 default: print run 12 12
+1 -1
trilogy-llvm/Cargo.toml
··· 5 5 6 6 [dependencies] 7 7 bitvec = "1.0.1" 8 - inkwell = { version = "0.7.1", features = ["llvm18-1"] } 8 + inkwell = { version = "0.7.1", features = ["llvm19-1"] } 9 9 log = "0.4.27" 10 10 num = "0.4.3" 11 11 source-span = "2.7.0"
+1
trilogy-llvm/core/trilogy_record.h
··· 1 1 #pragma once 2 2 #include "types.h" 3 3 #include <stdbool.h> 4 + #include <stddef.h> 4 5 5 6 trilogy_record_value* 6 7 trilogy_record_empty(trilogy_value* tv, trilogy_record_value* rec);
+1
trilogy-llvm/core/trilogy_set.h
··· 1 1 #pragma once 2 2 #include "types.h" 3 3 #include <stdbool.h> 4 + #include <stddef.h> 4 5 5 6 trilogy_set_value* trilogy_set_init(trilogy_value* tv, trilogy_set_value* set); 6 7 trilogy_set_value* trilogy_set_init_empty(trilogy_value* tv);
+8 -7
trilogy-llvm/src/codegen/debug_info.rs
··· 1286 1286 .as_debug_info_scope() 1287 1287 } 1288 1288 1289 + #[expect(unused_variables, reason = "Waiting for bug to be fixed: https://github.com/TheDan64/inkwell/issues/613")] 1289 1290 pub(crate) fn describe_variable( 1290 1291 &self, 1291 1292 variable: PointerValue<'ctx>, ··· 1305 1306 LLVMDIFlagPublic, 1306 1307 0, 1307 1308 ); 1308 - self.builder.insert_declare_at_end( 1309 - variable, 1310 - Some(di_variable), 1311 - None, 1312 - location, 1313 - builder.get_insert_block().unwrap(), 1314 - ); 1309 + // self.builder.insert_declare_at_end( 1310 + // variable, 1311 + // Some(di_variable), 1312 + // None, 1313 + // location, 1314 + // builder.get_insert_block().unwrap(), 1315 + // ); 1315 1316 } 1316 1317 } 1317 1318
+1 -1
trilogy/test.rs
··· 260 260 break 'test; 261 261 } 262 262 263 - let clang = var("LLVM_SYS_181_PREFIX") 263 + let clang = var("LLVM_SYS_191_PREFIX") 264 264 .ok() 265 265 .map(|pref| pref + "/bin/") 266 266 .unwrap_or_else(|| "".to_owned())