From 4590a36ba881ec9fdb3d141c7ab9fb447ff04314 Mon Sep 17 00:00:00 2001 From: Collin Chin <16715212+collinc97@users.noreply.github.com> Date: Tue, 19 Sep 2023 10:26:44 -0700 Subject: [PATCH] Add test to verify support of the ternary operator on signatures (#2594) * Add test to verify support of the ternary operator on signatures * regen expectations --- Cargo.lock | 153 +++++++++--------- .../compiler/signature/signature.out | 20 +-- .../execution/primitive_casts.out | 30 ++-- tests/tests/compiler/signature/signature.leo | 8 + 4 files changed, 110 insertions(+), 101 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ccb5cde527..e0346814a4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -664,6 +664,12 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + [[package]] name = "crypto-common" version = "0.1.6" @@ -1370,7 +1376,7 @@ dependencies = [ "rand_core", "reqwest", "rusty-hook", - "self_update 0.38.0", + "self_update", "serde", "serde_json", "snarkvm", @@ -2252,24 +2258,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "self_update" -version = "0.37.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a667e18055120bcc9a658d55d36f2f6bfc82e07968cc479ee7774e3bfb501e14" -dependencies = [ - "hyper", - "indicatif", - "log", - "quick-xml", - "regex", - "reqwest", - "semver", - "serde_json", - "tempfile", - "urlencoding", -] - [[package]] name = "self_update" version = "0.38.0" @@ -2413,7 +2401,7 @@ dependencies = [ [[package]] name = "snarkvm" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "anstyle", "anyhow", @@ -2426,7 +2414,7 @@ dependencies = [ "parking_lot", "rand", "rayon", - "self_update 0.37.0", + "self_update", "serde_json", "snarkvm-circuit", "snarkvm-console", @@ -2442,7 +2430,7 @@ dependencies = [ [[package]] name = "snarkvm-algorithms" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "aleo-std", "anyhow", @@ -2472,7 +2460,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-account", "snarkvm-circuit-algorithms", @@ -2486,7 +2474,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-account" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-algorithms", "snarkvm-circuit-network", @@ -2497,7 +2485,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-algorithms" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-types", "snarkvm-console-algorithms", @@ -2507,7 +2495,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-collections" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-algorithms", "snarkvm-circuit-types", @@ -2517,7 +2505,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-environment" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "indexmap 2.0.0", "itertools 0.11.0", @@ -2535,12 +2523,12 @@ dependencies = [ [[package]] name = "snarkvm-circuit-environment-witness" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" [[package]] name = "snarkvm-circuit-network" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-algorithms", "snarkvm-circuit-collections", @@ -2551,8 +2539,9 @@ dependencies = [ [[package]] name = "snarkvm-circuit-program" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ + "paste", "snarkvm-circuit-account", "snarkvm-circuit-collections", "snarkvm-circuit-network", @@ -2564,7 +2553,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-address", @@ -2579,7 +2568,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-address" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2592,7 +2581,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-boolean" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-environment", "snarkvm-console-types-boolean", @@ -2601,7 +2590,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-field" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2611,7 +2600,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-group" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2623,7 +2612,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-integers" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2634,7 +2623,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-scalar" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2645,7 +2634,7 @@ dependencies = [ [[package]] name = "snarkvm-circuit-types-string" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-circuit-environment", "snarkvm-circuit-types-boolean", @@ -2657,7 +2646,7 @@ dependencies = [ [[package]] name = "snarkvm-console" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console-account", "snarkvm-console-algorithms", @@ -2670,7 +2659,7 @@ dependencies = [ [[package]] name = "snarkvm-console-account" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "bs58", "snarkvm-console-network", @@ -2680,19 +2669,20 @@ dependencies = [ [[package]] name = "snarkvm-console-algorithms" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "blake2s_simd", "smallvec", "snarkvm-console-types", "snarkvm-fields", "snarkvm-utilities", + "tiny-keccak", ] [[package]] name = "snarkvm-console-collections" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "aleo-std", "rayon", @@ -2703,7 +2693,7 @@ dependencies = [ [[package]] name = "snarkvm-console-network" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "anyhow", "indexmap 2.0.0", @@ -2726,7 +2716,7 @@ dependencies = [ [[package]] name = "snarkvm-console-network-environment" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "anyhow", "bech32", @@ -2743,7 +2733,7 @@ dependencies = [ [[package]] name = "snarkvm-console-program" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "enum_index", "enum_index_derive", @@ -2751,6 +2741,7 @@ dependencies = [ "num-derive", "num-traits", "once_cell", + "paste", "serde_json", "snarkvm-console-account", "snarkvm-console-collections", @@ -2762,7 +2753,7 @@ dependencies = [ [[package]] name = "snarkvm-console-types" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-address", @@ -2777,7 +2768,7 @@ dependencies = [ [[package]] name = "snarkvm-console-types-address" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2788,7 +2779,7 @@ dependencies = [ [[package]] name = "snarkvm-console-types-boolean" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console-network-environment", ] @@ -2796,7 +2787,7 @@ dependencies = [ [[package]] name = "snarkvm-console-types-field" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2805,7 +2796,7 @@ dependencies = [ [[package]] name = "snarkvm-console-types-group" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2816,7 +2807,7 @@ dependencies = [ [[package]] name = "snarkvm-console-types-integers" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2826,7 +2817,7 @@ dependencies = [ [[package]] name = "snarkvm-console-types-scalar" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2836,7 +2827,7 @@ dependencies = [ [[package]] name = "snarkvm-console-types-string" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console-network-environment", "snarkvm-console-types-boolean", @@ -2847,7 +2838,7 @@ dependencies = [ [[package]] name = "snarkvm-curves" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "rand", "rayon", @@ -2861,7 +2852,7 @@ dependencies = [ [[package]] name = "snarkvm-fields" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "aleo-std", "anyhow", @@ -2878,7 +2869,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "aleo-std", "anyhow", @@ -2902,7 +2893,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-authority" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "anyhow", "rand", @@ -2914,7 +2905,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-block" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "indexmap 2.0.0", "rayon", @@ -2932,7 +2923,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-coinbase" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "aleo-std", "anyhow", @@ -2952,7 +2943,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-committee" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "indexmap 2.0.0", "serde_json", @@ -2962,7 +2953,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-ledger-narwhal-batch-certificate", "snarkvm-ledger-narwhal-batch-header", @@ -2975,7 +2966,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-batch-certificate" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "indexmap 2.0.0", "serde_json", @@ -2987,7 +2978,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-batch-header" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "indexmap 2.0.0", "serde_json", @@ -2998,7 +2989,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-data" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "bytes", "serde_json", @@ -3009,7 +3000,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-subdag" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "indexmap 2.0.0", "serde_json", @@ -3021,7 +3012,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-transmission" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "bytes", "serde_json", @@ -3034,7 +3025,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-narwhal-transmission-id" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "snarkvm-console", "snarkvm-ledger-coinbase", @@ -3043,7 +3034,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-query" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "async-trait", "reqwest", @@ -3056,7 +3047,7 @@ dependencies = [ [[package]] name = "snarkvm-ledger-store" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "anyhow", "bincode", @@ -3069,6 +3060,7 @@ dependencies = [ "snarkvm-ledger-block", "snarkvm-ledger-coinbase", "snarkvm-ledger-committee", + "snarkvm-ledger-narwhal-batch-certificate", "snarkvm-synthesizer-program", "snarkvm-synthesizer-snark", ] @@ -3076,7 +3068,7 @@ dependencies = [ [[package]] name = "snarkvm-parameters" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "aleo-std", "anyhow", @@ -3100,7 +3092,7 @@ dependencies = [ [[package]] name = "snarkvm-synthesizer" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "aleo-std", "anyhow", @@ -3124,7 +3116,7 @@ dependencies = [ [[package]] name = "snarkvm-synthesizer-process" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "aleo-std", "colored", @@ -3145,7 +3137,7 @@ dependencies = [ [[package]] name = "snarkvm-synthesizer-program" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "indexmap 2.0.0", "paste", @@ -3159,7 +3151,7 @@ dependencies = [ [[package]] name = "snarkvm-synthesizer-snark" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "bincode", "once_cell", @@ -3172,7 +3164,7 @@ dependencies = [ [[package]] name = "snarkvm-utilities" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "aleo-std", "anyhow", @@ -3191,7 +3183,7 @@ dependencies = [ [[package]] name = "snarkvm-utilities-derives" version = "0.14.6" -source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#05d7a1f1e371d77583506a34501a3de8a2949ea6" +source = "git+https://github.com/AleoHQ/snarkVM.git?branch=testnet3#6d298690252025d769e061f204b7057bba0d8b8a" dependencies = [ "proc-macro2", "quote 1.0.33", @@ -3372,6 +3364,15 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb" +[[package]] +name = "tiny-keccak" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" +dependencies = [ + "crunchy", +] + [[package]] name = "tinytemplate" version = "1.2.1" diff --git a/tests/expectations/compiler/signature/signature.out b/tests/expectations/compiler/signature/signature.out index b12f223ed1..cf03f47e8b 100644 --- a/tests/expectations/compiler/signature/signature.out +++ b/tests/expectations/compiler/signature/signature.out @@ -2,14 +2,14 @@ namespace: Compile expectation: Pass outputs: - - - initial_symbol_table: f32367f3791d0e1cd70f702ca24d2d9d9c2bc0ebf91e95d4df773a3e9f110311 - type_checked_symbol_table: ac9e67a73f66c89100172339eb6d66e2b8895f98c53ddeb525d2f42d6e3234ec - unrolled_symbol_table: ac9e67a73f66c89100172339eb6d66e2b8895f98c53ddeb525d2f42d6e3234ec - initial_ast: 66326647c8591d4479e5622bc50d2fffb7fcc9791925a7ab7018617a59b693a4 - unrolled_ast: 66326647c8591d4479e5622bc50d2fffb7fcc9791925a7ab7018617a59b693a4 - ssa_ast: 76f4f34b1e014012ba3ecc136b58787ed41de71f5ff83565f825258b9e8ea76f - flattened_ast: b0658ac6a7f5033380851c648f130884de04fde4bef415fa015e4d664aabb427 - inlined_ast: b0658ac6a7f5033380851c648f130884de04fde4bef415fa015e4d664aabb427 - dce_ast: b0658ac6a7f5033380851c648f130884de04fde4bef415fa015e4d664aabb427 - bytecode: 87b34bffefde3c2b9e23ce08528737a4ef06a28ee9120c02d26ee41989f24cd2 + - - initial_symbol_table: f42679f84a0502913466b98ad0802570b196a03efb92762dbf14ddef9343e2bb + type_checked_symbol_table: badc647bf125be858219463ee7be65a54c641b1a351a7f0b17012263cce0ad5a + unrolled_symbol_table: badc647bf125be858219463ee7be65a54c641b1a351a7f0b17012263cce0ad5a + initial_ast: 59fbd8ee485c056cbbd498752bdad37b1f6d1d333c50d05706db366d59d2514c + unrolled_ast: 59fbd8ee485c056cbbd498752bdad37b1f6d1d333c50d05706db366d59d2514c + ssa_ast: 489c00729522b46ad624db1d6f7bd6548dc03784beaa68ba9fa31ff018c7bc24 + flattened_ast: fdfe1266895c258a1527a1afe29bf3c976dab7e8ae95100d831020b7c59fe468 + inlined_ast: fdfe1266895c258a1527a1afe29bf3c976dab7e8ae95100d831020b7c59fe468 + dce_ast: 38cd302599c7b5f07e6069457fb95bcd2e63f83e5ef98f798edb70261df55ffd + bytecode: 9a042a6076c83bb376f10443261e56704956030b03df62da5d5f4742ac10c74d warnings: "" diff --git a/tests/expectations/execution/primitive_casts.out b/tests/expectations/execution/primitive_casts.out index 840b6c5633..1708e443ac 100644 --- a/tests/expectations/execution/primitive_casts.out +++ b/tests/expectations/execution/primitive_casts.out @@ -16,46 +16,46 @@ outputs: results: address_casts: - input: "[aleo1hjnn8jdxlzzlqjywamdx4hzcxny5gszzm0q5xmnae4ed6qqn2gys4ugtey]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r2 as boolean;): Cannot downcast a field literal to a boolean type (yet).)" + output: "[aleo1hjnn8jdxlzzlqjywamdx4hzcxny5gszzm0q5xmnae4ed6qqn2gys4ugtey, false, 4215828253063057579372973753238191915437678788189540242352627279098623010748field, 4215828253063057579372973753238191915437678788189540242352627279098623010748group, -68i8, -22596i16, -919361604i32, -1115211937480464452i64, 69581248500420848509480883781010433980i128, 188u8, 42940u16, 3375605692u32, 17331532136229087164u64, 69581248500420848509480883781010433980u128, 597325464396926472386380471716694795022991767388272616119577778851337709500scalar]" bool_casts: - input: "[false]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast a boolean literal to another type.)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" field_casts: - input: "[0field]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast a field literal to an address type.)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" group_casts: - input: "[0group]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r2 as boolean;): Cannot downcast a field literal to a boolean type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" i128_casts: - input: "[0i128]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast an i128 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" i16_casts: - input: "[0i16]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast an i16 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" i32_casts: - input: "[0i32]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast an i32 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" i64_casts: - input: "[0i64]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast an i64 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" i8_casts: - input: "[0i8]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast an i8 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" scalar_casts: - input: "[0scalar]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast a scalar literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" u128_casts: - input: "[0u128]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast a u128 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" u16_casts: - input: "[0u16]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast a u16 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" u32_casts: - input: "[0u32]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast a u32 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" u64_casts: - input: "[0u64]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast a u64 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" u8_casts: - input: "[0u8]" - output: "SnarkVMError(Failed to execute instruction (cast r0 into r1 as address;): Cannot downcast a u8 literal to another type (yet).)" + output: "[aleo1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3ljyzc, false, 0field, 0group, 0i8, 0i16, 0i32, 0i64, 0i128, 0u8, 0u16, 0u32, 0u64, 0u128, 0scalar]" diff --git a/tests/tests/compiler/signature/signature.leo b/tests/tests/compiler/signature/signature.leo index 6d9e6eaff3..5a422871de 100644 --- a/tests/tests/compiler/signature/signature.leo +++ b/tests/tests/compiler/signature/signature.leo @@ -21,4 +21,12 @@ program test.aleo { let second: bool = s.verify(a, v); assert_eq(first, second); } + + transition literal_ops_on_signature(a: bool, b: signature, c: signature) -> signature { + let equal: bool = b == c; + let not_equal: bool = b != c; + let ternary: signature = a ? b : c; + + return ternary; + } }