diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5c2cb9fdd..82bc4a9d4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -46,7 +46,9 @@ jobs: - { os: ubuntu-22.04, rust-version: stable, target: 'x86_64-unknown-linux-gnu', publish: true } - { os: ubuntu-22.04, rust-version: stable, target: 'i686-unknown-linux-gnu', publish: true } # FIXME(issue #2138): run wasm tests, failing to run since https://github.com/mthom/scryer-prolog/pull/2137 removed wasm-pack - - { os: ubuntu-22.04, rust-version: nightly, target: 'wasm32-unknown-unknown', publish: true, args: '--no-default-features' , test-args: '--no-run --no-default-features' } + - { os: ubuntu-22.04, rust-version: nightly, target: 'wasm32-unknown-unknown', publish: true, args: '--no-default-features' , test-args: '--no-run --no-default-features', use_swap: true } + # Cargo.toml rust-version + - { os: ubuntu-22.04, rust-version: "1.77", target: 'x86_64-unknown-linux-gnu'} # rust versions - { os: ubuntu-22.04, rust-version: beta, target: 'x86_64-unknown-linux-gnu'} - { os: ubuntu-22.04, rust-version: nightly, target: 'x86_64-unknown-linux-gnu'} @@ -55,6 +57,10 @@ jobs: shell: bash steps: - uses: actions/checkout@v4 + - uses: actionhippie/swap-space@v1 + if: matrix.use_swap + with: + size: 10G - name: Setup Rust uses: ./.github/actions/setup-rust with: diff --git a/src/machine/machine_indices.rs b/src/machine/machine_indices.rs index 830cc91f2..856c7766b 100644 --- a/src/machine/machine_indices.rs +++ b/src/machine/machine_indices.rs @@ -18,8 +18,6 @@ use std::collections::BTreeSet; use std::ops::{Deref, DerefMut}; use crate::types::*; -#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)] -pub(crate) struct OrderedOpDirKey(pub(crate) Atom, pub(crate) Fixity); // 7.2 #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)] diff --git a/src/machine/streams.rs b/src/machine/streams.rs index c2adb47e3..be5591cf1 100644 --- a/src/machine/streams.rs +++ b/src/machine/streams.rs @@ -24,7 +24,6 @@ use std::io; #[cfg(feature = "http")] use std::io::BufRead; use std::io::{Cursor, ErrorKind, Read, Seek, SeekFrom, Write}; -use std::mem; use std::net::{Shutdown, TcpStream}; use std::ops::{Deref, DerefMut}; use std::path::PathBuf; @@ -296,9 +295,9 @@ impl Read for HttpReadStream { #[cfg(feature = "http")] pub struct HttpWriteStream { status_code: u16, - headers: mem::ManuallyDrop, + headers: std::mem::ManuallyDrop, response: TypedArenaPtr, - buffer: mem::ManuallyDrop>, + buffer: std::mem::ManuallyDrop>, } #[cfg(feature = "http")] @@ -325,8 +324,8 @@ impl Write for HttpWriteStream { #[cfg(feature = "http")] impl HttpWriteStream { fn drop(&mut self) { - let headers = unsafe { mem::ManuallyDrop::take(&mut self.headers) }; - let buffer = unsafe { mem::ManuallyDrop::take(&mut self.buffer) }; + let headers = unsafe { std::mem::ManuallyDrop::take(&mut self.headers) }; + let buffer = unsafe { std::mem::ManuallyDrop::take(&mut self.buffer) }; let (ready, response, cvar) = &**self.response; @@ -1228,8 +1227,8 @@ impl Stream { StreamLayout::new(CharReader::new(HttpWriteStream { response, status_code, - headers: mem::ManuallyDrop::new(headers), - buffer: mem::ManuallyDrop::new(Vec::new()), + headers: std::mem::ManuallyDrop::new(headers), + buffer: std::mem::ManuallyDrop::new(Vec::new()), })), arena )) diff --git a/src/machine/unify.rs b/src/machine/unify.rs index b045552b8..7cd3df06f 100644 --- a/src/machine/unify.rs +++ b/src/machine/unify.rs @@ -453,30 +453,6 @@ pub(crate) trait Unifier: DerefMut { } } - fn unify_big_num(&mut self, n1: TypedArenaPtr, value: HeapCellValue) - where - N: PartialEq + PartialEq + PartialEq + ArenaAllocated, - { - if let Some(r) = value.as_var() { - Self::bind(self, r, typed_arena_ptr_as_cell!(n1)); - return; - } - - match Number::try_from(value) { - Ok(n2) => match n2 { - Number::Fixnum(n2) if *n1 == n2.get_num() => {} - Number::Integer(n2) if *n1 == *n2 => {} - Number::Rational(n2) if *n1 == *n2 => {} - _ => { - self.fail = true; - } - }, - Err(_) => { - self.fail = true; - } - } - } - fn unify_big_integer(&mut self, n1: TypedArenaPtr, value: HeapCellValue) { if let Some(r) = value.as_var() { Self::bind(self, r, typed_arena_ptr_as_cell!(n1)); diff --git a/src/parser/parser.rs b/src/parser/parser.rs index 47e829219..c4d509b4e 100644 --- a/src/parser/parser.rs +++ b/src/parser/parser.rs @@ -109,7 +109,7 @@ pub(crate) fn as_partial_string( tail_ref = succ; } Term::PartialString(_, pstr, tail) => { - string += &pstr; + string += pstr; tail_ref = tail; } Term::CompleteString(_, cstr) => {