From 72dc4954ad8b7ecfab2f6215bc5f012a76689b8b Mon Sep 17 00:00:00 2001 From: Ashwin Naren Date: Mon, 12 May 2025 09:33:14 -0700 Subject: [PATCH 1/2] dev container update --- .devcontainer/DOCKERFILE | 6 ++++++ .devcontainer/devcontainer.json | 27 ++++++++++++++++++++++++--- 2 files changed, 30 insertions(+), 3 deletions(-) create mode 100644 .devcontainer/DOCKERFILE diff --git a/.devcontainer/DOCKERFILE b/.devcontainer/DOCKERFILE new file mode 100644 index 0000000000..339cdb69bb --- /dev/null +++ b/.devcontainer/DOCKERFILE @@ -0,0 +1,6 @@ +FROM mcr.microsoft.com/vscode/devcontainers/rust:1-bullseye + +# Install clang +RUN apt-get update \ + && apt-get install -y clang \ + && rm -rf /var/lib/apt/lists/* diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index d60eee2130..8838cf6a96 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,4 +1,25 @@ { - "image": "mcr.microsoft.com/devcontainers/base:jammy", - "onCreateCommand": "curl https://sh.rustup.rs -sSf | sh -s -- -y" -} \ No newline at end of file + "name": "Rust", + "build": { + "dockerfile": "Dockerfile" + }, + "runArgs": ["--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined"], + "customizations": { + "vscode": { + "settings": { + "lldb.executable": "/usr/bin/lldb", + // VS Code don't watch files under ./target + "files.watcherExclude": { + "**/target/**": true + }, + "extensions": [ + "rust-lang.rust-analyzer", + "tamasfe.even-better-toml", + "vadimcn.vscode-lldb", + "mutantdino.resourcemonitor" + ] + } + } + }, + "remoteUser": "vscode" +} From 2c02e2776ba88dfeac9d7ce4fa57813f61889454 Mon Sep 17 00:00:00 2001 From: Noa Date: Thu, 15 May 2025 13:01:00 -0500 Subject: [PATCH 2/2] Fix warnings for rust 1.87 --- jit/src/instructions.rs | 3 +-- jit/src/lib.rs | 8 +++++++- jit/tests/common.rs | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/jit/src/instructions.rs b/jit/src/instructions.rs index 407a33226a..fac947a98a 100644 --- a/jit/src/instructions.rs +++ b/jit/src/instructions.rs @@ -1165,8 +1165,7 @@ impl<'a, 'b> FunctionCompiler<'a, 'b> { // ----- Merge: Return the final result. self.builder.switch_to_block(merge_block); - let final_val = self.builder.block_params(merge_block)[0]; - final_val + self.builder.block_params(merge_block)[0] } fn compile_ipow(&mut self, a: Value, b: Value) -> Value { diff --git a/jit/src/lib.rs b/jit/src/lib.rs index 33054b1c95..91911fd8d1 100644 --- a/jit/src/lib.rs +++ b/jit/src/lib.rs @@ -15,7 +15,13 @@ pub enum JitCompileError { #[error("bad bytecode")] BadBytecode, #[error("error while compiling to machine code: {0}")] - CraneliftError(#[from] ModuleError), + CraneliftError(Box), +} + +impl From for JitCompileError { + fn from(err: ModuleError) -> Self { + Self::CraneliftError(Box::new(err)) + } } #[derive(Debug, thiserror::Error, Eq, PartialEq)] diff --git a/jit/tests/common.rs b/jit/tests/common.rs index a4ac8a7967..680090eb5b 100644 --- a/jit/tests/common.rs +++ b/jit/tests/common.rs @@ -78,7 +78,7 @@ impl StackMachine { pub fn run(&mut self, code: CodeObject) { let mut oparg_state = OpArgState::default(); - code.instructions.iter().try_for_each(|&word| { + let _ = code.instructions.iter().try_for_each(|&word| { let (instruction, arg) = oparg_state.get(word); self.process_instruction(instruction, arg, &code.constants, &code.names) });