diff options
Diffstat (limited to 'lang/cairo/files/patch-rust-1.87.0')
-rw-r--r-- | lang/cairo/files/patch-rust-1.87.0 | 336 |
1 files changed, 0 insertions, 336 deletions
diff --git a/lang/cairo/files/patch-rust-1.87.0 b/lang/cairo/files/patch-rust-1.87.0 deleted file mode 100644 index 639d340b7993..000000000000 --- a/lang/cairo/files/patch-rust-1.87.0 +++ /dev/null @@ -1,336 +0,0 @@ -https://github.com/lambdaclass/cairo-vm/pull/1990 - -From b427a3eddd4e40969eb910e559c6a28dd3e6c988 Mon Sep 17 00:00:00 2001 -From: YairVaknin-starkware - <141148375+YairVaknin-starkware@users.noreply.github.com> -Date: Mon, 10 Mar 2025 11:39:57 +0200 -Subject: [PATCH] Update_to_rustc_1.85 (#1990) - -* Update_to_rustc_1.85 - -* Fix montconfig - -* format - -* clippy - -* clippy fix - ---------- - -Co-authored-by: Edgar Luque <git@edgl.dev> ---- - vm/src/air_public_input.rs | 2 +- - vm/src/cairo_run.rs | 6 +++--- - .../builtin_hint_processor/signature.rs | 7 +------ - .../builtin_hint_processor/uint256_utils.rs | 4 ++-- - .../hint_processor/builtin_hint_processor/vrf/fq.rs | 2 +- - .../cairo_1_hint_processor/dict_manager.rs | 13 ++++++++++++- - .../cairo_1_hint_processor/hint_processor.rs | 7 ++++++- - vm/src/math_utils/mod.rs | 1 - - vm/src/serde/deserialize_program.rs | 4 ++-- - vm/src/serde/deserialize_utils.rs | 2 +- - vm/src/vm/decoding/decoder.rs | 6 +++--- - vm/src/vm/runners/builtin_runner/modulo.rs | 6 +++--- - vm/src/vm/runners/cairo_pie.rs | 9 ++++----- - vm/src/vm/vm_core.rs | 4 ++-- - vm/src/vm/vm_memory/memory.rs | 2 +- - 29 files changed, 62 insertions(+), 52 deletions(-) - -diff --git src/air_public_input.rs src/air_public_input.rs -index d4f39dfc80..9c81aad591 100644 ---- cargo-crates/cairo-vm-1.0.2/src/air_public_input.rs -+++ cargo-crates/cairo-vm-1.0.2/src/air_public_input.rs -@@ -48,7 +48,7 @@ mod mem_value_serde { - - struct Felt252OptionVisitor; - -- impl<'de> de::Visitor<'de> for Felt252OptionVisitor { -+ impl de::Visitor<'_> for Felt252OptionVisitor { - type Value = Option<Felt252>; - - fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result { -diff --git src/cairo_run.rs src/cairo_run.rs -index 43ecd8b164..e5950c5e8f 100644 ---- cargo-crates/cairo-vm-1.0.2/src/cairo_run.rs -+++ cargo-crates/cairo-vm-1.0.2/src/cairo_run.rs -@@ -45,7 +45,7 @@ pub struct CairoRunConfig<'a> { - pub allow_missing_builtins: Option<bool>, - } - --impl<'a> Default for CairoRunConfig<'a> { -+impl Default for CairoRunConfig<'_> { - fn default() -> Self { - CairoRunConfig { - entrypoint: "main", -@@ -152,9 +152,9 @@ pub fn cairo_run_pie( - if cairo_run_config.proof_mode { - return Err(RunnerError::CairoPieProofMode.into()); - } -- if !hint_processor -+ if hint_processor - .get_n_steps() -- .is_some_and(|steps| steps == pie.execution_resources.n_steps) -+ .is_none_or(|steps| steps != pie.execution_resources.n_steps) - { - return Err(RunnerError::PieNStepsVsRunResourcesNStepsMismatch.into()); - } -diff --git src/hint_processor/builtin_hint_processor/signature.rs src/hint_processor/builtin_hint_processor/signature.rs -index 878a379b7a..2a77752c7e 100644 ---- cargo-crates/cairo-vm-1.0.2/src/hint_processor/builtin_hint_processor/signature.rs -+++ cargo-crates/cairo-vm-1.0.2/src/hint_processor/builtin_hint_processor/signature.rs -@@ -1,7 +1,5 @@ - use crate::stdlib::{boxed::Box, collections::HashMap, prelude::*}; - --use num_integer::Integer; -- - use crate::{ - hint_processor::{ - builtin_hint_processor::hint_utils::{get_integer_from_var_name, get_ptr_from_var_name}, -@@ -27,10 +25,7 @@ pub fn verify_ecdsa_signature( - if ecdsa_ptr.segment_index != ecdsa_builtin.base() as isize { - return Err(HintError::AddSignatureWrongEcdsaPtr(Box::new(ecdsa_ptr))); - } -- if !ecdsa_ptr -- .offset -- .is_multiple_of(&(CELLS_PER_SIGNATURE as usize)) -- { -+ if !num_integer::Integer::is_multiple_of(&ecdsa_ptr.offset, &(CELLS_PER_SIGNATURE as usize)) { - return Err(HintError::AddSignatureNotAPublicKey(Box::new(ecdsa_ptr))); - } - ecdsa_builtin -diff --git src/hint_processor/builtin_hint_processor/uint256_utils.rs src/hint_processor/builtin_hint_processor/uint256_utils.rs -index 9c91fafa8a..0946dd5ad7 100644 ---- cargo-crates/cairo-vm-1.0.2/src/hint_processor/builtin_hint_processor/uint256_utils.rs -+++ cargo-crates/cairo-vm-1.0.2/src/hint_processor/builtin_hint_processor/uint256_utils.rs -@@ -86,13 +86,13 @@ impl<'a> Uint256<'a> { - } - } - --impl<'a> From<&BigUint> for Uint256<'a> { -+impl From<&BigUint> for Uint256<'_> { - fn from(value: &BigUint) -> Self { - Self::split(value) - } - } - --impl<'a> From<Felt252> for Uint256<'a> { -+impl From<Felt252> for Uint256<'_> { - fn from(value: Felt252) -> Self { - let (high, low) = value.div_rem(pow2_const_nz(128)); - Self::from_values(low, high) -diff --git src/hint_processor/builtin_hint_processor/vrf/fq.rs src/hint_processor/builtin_hint_processor/vrf/fq.rs -index c31047d8e0..470a96ac8c 100644 ---- cargo-crates/cairo-vm-1.0.2/src/hint_processor/builtin_hint_processor/vrf/fq.rs -+++ cargo-crates/cairo-vm-1.0.2/src/hint_processor/builtin_hint_processor/vrf/fq.rs -@@ -71,7 +71,7 @@ pub fn uint512_unsigned_div_rem( - /// Implements hint: - /// ```python - /// from starkware.python.math_utils import div_mod -- -+/// - /// def split(a: int): - /// return (a & ((1 << 128) - 1), a >> 128) - /// -diff --git src/math_utils/mod.rs src/math_utils/mod.rs -index 565a768b7c..75ad9888e9 100644 ---- cargo-crates/cairo-vm-1.0.2/src/math_utils/mod.rs -+++ cargo-crates/cairo-vm-1.0.2/src/math_utils/mod.rs -@@ -61,7 +61,6 @@ pub fn pow2_const_nz(n: u32) -> &'static NonZeroFelt { - /// let negative = Felt252::MAX; - /// assert_eq!(signed_felt(negative), BigInt::from(-1)); - /// ``` -- - pub fn signed_felt(felt: Felt252) -> BigInt { - let biguint = felt.to_biguint(); - if biguint > *SIGNED_FELT_MAX { -diff --git src/serde/deserialize_program.rs src/serde/deserialize_program.rs -index 8f0e9a0dee..dc13a2e9f6 100644 ---- cargo-crates/cairo-vm-1.0.2/src/serde/deserialize_program.rs -+++ cargo-crates/cairo-vm-1.0.2/src/serde/deserialize_program.rs -@@ -309,7 +309,7 @@ impl ValueAddress { - - struct Felt252Visitor; - --impl<'de> de::Visitor<'de> for Felt252Visitor { -+impl de::Visitor<'_> for Felt252Visitor { - type Value = Felt252; - - fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result { -@@ -377,7 +377,7 @@ impl<'de> de::Visitor<'de> for ReferenceIdsVisitor { - - struct ValueAddressVisitor; - --impl<'de> de::Visitor<'de> for ValueAddressVisitor { -+impl de::Visitor<'_> for ValueAddressVisitor { - type Value = ValueAddress; - - fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result { -diff --git src/serde/deserialize_utils.rs src/serde/deserialize_utils.rs -index 7b4c7bb20e..157c66de2f 100644 ---- cargo-crates/cairo-vm-1.0.2/src/serde/deserialize_utils.rs -+++ cargo-crates/cairo-vm-1.0.2/src/serde/deserialize_utils.rs -@@ -88,7 +88,7 @@ fn register(input: &str) -> IResult<&str, Option<Register>> { - } - - fn offset(input: &str) -> IResult<&str, i32> { -- if input.eq("") { -+ if input.is_empty() { - return Ok(("", 0)); - } - -diff --git src/vm/decoding/decoder.rs src/vm/decoding/decoder.rs -index 9dd02ea276..095006adcc 100644 ---- cargo-crates/cairo-vm-1.0.2/src/vm/decoding/decoder.rs -+++ cargo-crates/cairo-vm-1.0.2/src/vm/decoding/decoder.rs -@@ -37,9 +37,9 @@ pub fn decode_instruction(encoded_instr: u128) -> Result<Instruction, VirtualMac - const OFFX_MASK: u128 = 0xFFFF; - - // Grab offsets and convert them from little endian format. -- let off0 = decode_offset(encoded_instr >> OFF0_OFF & OFFX_MASK); -- let off1 = decode_offset(encoded_instr >> OFF1_OFF & OFFX_MASK); -- let off2 = decode_offset(encoded_instr >> OFF2_OFF & OFFX_MASK); -+ let off0 = decode_offset((encoded_instr >> OFF0_OFF) & OFFX_MASK); -+ let off1 = decode_offset((encoded_instr >> OFF1_OFF) & OFFX_MASK); -+ let off2 = decode_offset((encoded_instr >> OFF2_OFF) & OFFX_MASK); - - // Grab flags - let flags = encoded_instr >> FLAGS_OFFSET; -diff --git src/vm/runners/builtin_runner/modulo.rs src/vm/runners/builtin_runner/modulo.rs -index ef11096535..37575ddd07 100644 ---- cargo-crates/cairo-vm-1.0.2/src/vm/runners/builtin_runner/modulo.rs -+++ cargo-crates/cairo-vm-1.0.2/src/vm/runners/builtin_runner/modulo.rs -@@ -491,15 +491,15 @@ impl ModBuiltinRunner { - - /// NOTE: It is advisable to use VirtualMachine::mod_builtin_fill_memory instead of this method directly - /// when implementing hints to avoid cloning the runners -- -+ /// - /// Fills the memory with inputs to the builtin instances based on the inputs to the - /// first instance, pads the offsets table to fit the number of operations writen in the - /// input to the first instance, and caculates missing values in the values table. -- -+ /// - /// For each builtin, the given tuple is of the form (builtin_ptr, builtin_runner, n), - /// where n is the number of operations in the offsets table (i.e., the length of the - /// offsets table is 3*n). -- -+ /// - /// The number of operations written to the input of the first instance n' should be at - /// least n and a multiple of batch_size. Previous offsets are copied to the end of the - /// offsets table to make its length 3n'. -diff --git src/vm/runners/cairo_pie.rs src/vm/runners/cairo_pie.rs -index ca6960e2d4..b839be06f3 100644 ---- cargo-crates/cairo-vm-1.0.2/src/vm/runners/cairo_pie.rs -+++ cargo-crates/cairo-vm-1.0.2/src/vm/runners/cairo_pie.rs -@@ -255,9 +255,9 @@ impl CairoPie { - HashMap::from_iter(segment_sizes.iter().map(|si| (si.index, si.size))); - - let validate_addr = |addr: Relocatable| -> Result<(), CairoPieValidationError> { -- if !segment_sizes -+ if segment_sizes - .get(&addr.segment_index) -- .is_some_and(|size| addr.offset <= *size) -+ .is_none_or(|size| addr.offset > *size) - { - return Err(CairoPieValidationError::InvalidAddress); - } -@@ -437,7 +437,6 @@ impl CairoPie { - pub(super) mod serde_impl { - use crate::stdlib::collections::HashMap; - use crate::types::builtin_name::BuiltinName; -- use num_integer::Integer; - use num_traits::Num; - - use super::CAIRO_PIE_VERSION; -@@ -467,7 +466,7 @@ pub(super) mod serde_impl { - - pub(crate) struct Felt252Wrapper<'a>(&'a Felt252); - -- impl<'a> Serialize for Felt252Wrapper<'a> { -+ impl Serialize for Felt252Wrapper<'_> { - fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> - where - S: Serializer, -@@ -723,7 +722,7 @@ pub(super) mod serde_impl { - } - - pub fn from_bytes(bytes: &[u8]) -> Option<CairoPieMemory> { -- if !bytes.len().is_multiple_of(&CELL_BYTE_LEN) { -+ if !num_integer::Integer::is_multiple_of(&bytes.len(), &CELL_BYTE_LEN) { - return None; - } - -diff --git src/vm/vm_core.rs src/vm/vm_core.rs -index 447f9c85d0..9fc7ca7cab 100644 ---- cargo-crates/cairo-vm-1.0.2/src/vm/vm_core.rs -+++ cargo-crates/cairo-vm-1.0.2/src/vm/vm_core.rs -@@ -78,10 +78,10 @@ impl DeducedOperands { - self.0 & 1 != 0 - } - fn was_op0_deducted(&self) -> bool { -- self.0 & 1 << 1 != 0 -+ self.0 & (1 << 1) != 0 - } - fn was_op1_deducted(&self) -> bool { -- self.0 & 1 << 2 != 0 -+ self.0 & (1 << 2) != 0 - } - } - -diff --git src/vm/vm_memory/memory.rs src/vm/vm_memory/memory.rs -index 9a20b60d05..c5f7e32055 100644 ---- cargo-crates/cairo-vm-1.0.2/src/vm/vm_memory/memory.rs -+++ cargo-crates/cairo-vm-1.0.2/src/vm/vm_memory/memory.rs -@@ -233,7 +233,7 @@ impl Memory { - } - - /// Retrieve a value from memory (either normal or temporary) and apply relocation rules -- pub(crate) fn get<'a, 'b: 'a, K: 'a>(&'b self, key: &'a K) -> Option<Cow<MaybeRelocatable>> -+ pub(crate) fn get<'a, 'b: 'a, K: 'a>(&'b self, key: &'a K) -> Option<Cow<'b, MaybeRelocatable>> - where - Relocatable: TryFrom<&'a K>, - { ---- cargo-crates/cairo-vm-1.0.2/src/hint_processor/cairo_1_hint_processor/dict_manager.rs.orig 2006-07-24 03:21:28.000000000 +0200 -+++ cargo-crates/cairo-vm-1.0.2/src/hint_processor/cairo_1_hint_processor/dict_manager.rs 2025-05-20 15:28:17.489344000 +0200 -@@ -124,6 +124,18 @@ impl DictManagerExecScope { - let mut prev_end = vm.add_memory_segment(); - for tracker in &self.trackers { - vm.add_relocation_rule(tracker.start, prev_end)?; -+ #[cfg(feature = "extensive_hints")] -+ { -+ vm.add_relocation_rule( -+ tracker.start, -+ MaybeRelocatable::RelocatableValue(prev_end), -+ )?; -+ } -+ #[cfg(not(feature = "extensive_hints"))] -+ { -+ vm.add_relocation_rule(tracker.start, prev_end)?; -+ } -+ - prev_end += (tracker.end.unwrap_or_default() - tracker.start)?; - prev_end += 1; - } ---- cargo-crates/cairo-vm-1.0.2/src/hint_processor/cairo_1_hint_processor/hint_processor.rs.orig 2006-07-24 03:21:28.000000000 +0200 -+++ cargo-crates/cairo-vm-1.0.2/src/hint_processor/cairo_1_hint_processor/hint_processor.rs 2025-05-20 15:27:32.673984000 +0200 -@@ -1,3 +1,8 @@ -+// ark-ff-macros mess workaround -+// can't put this directly above MontConfig derive because Rust can't parse it correctly. -+#![allow(non_local_definitions)] -+#![allow(unexpected_cfgs)] -+ - use super::dict_manager::DictManagerExecScope; - use super::hint_processor_utils::*; - use crate::any_box; -@@ -38,9 +43,9 @@ struct MemoryExecScope { - #[derive(MontConfig)] - #[modulus = "3618502788666131213697322783095070105623107215331596699973092056135872020481"] - #[generator = "3"] -- - /// Returns the Beta value of the Starkware elliptic curve. - struct FqConfig; -+ - type Fq = Fp256<MontBackend<FqConfig, 4>>; - - fn get_beta() -> Felt252 { |