From b80db2f7f8d318a535bd5fb1ecabb20d35435ce4 Mon Sep 17 00:00:00 2001 From: rvcas Date: Tue, 7 Nov 2023 16:34:01 -0500 Subject: [PATCH] fix(bls): wrong types for equals functions --- crates/aiken-lang/src/builtins.rs | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/crates/aiken-lang/src/builtins.rs b/crates/aiken-lang/src/builtins.rs index b6a446b4..b35f6628 100644 --- a/crates/aiken-lang/src/builtins.rs +++ b/crates/aiken-lang/src/builtins.rs @@ -682,12 +682,16 @@ pub fn from_default_function(builtin: DefaultFunction, id_gen: &IdGenerator) -> let tipo = function(vec![a.clone(), list(a.clone())], list(a)); (tipo, 2) } - - DefaultFunction::Bls12_381_G1_Add | DefaultFunction::Bls12_381_G1_Equal => { + DefaultFunction::Bls12_381_G1_Add => { let tipo = function(vec![g1_element(), g1_element()], g1_element()); (tipo, 2) } + DefaultFunction::Bls12_381_G1_Equal => { + let tipo = function(vec![g1_element(), g1_element()], bool()); + + (tipo, 2) + } DefaultFunction::Bls12_381_G1_Neg => { let tipo = function(vec![g1_element()], g1_element()); @@ -714,11 +718,16 @@ pub fn from_default_function(builtin: DefaultFunction, id_gen: &IdGenerator) -> (tipo, 2) } - DefaultFunction::Bls12_381_G2_Add | DefaultFunction::Bls12_381_G2_Equal => { + DefaultFunction::Bls12_381_G2_Add => { let tipo = function(vec![g2_element(), g2_element()], g2_element()); (tipo, 2) } + DefaultFunction::Bls12_381_G2_Equal => { + let tipo = function(vec![g2_element(), g2_element()], bool()); + + (tipo, 2) + } DefaultFunction::Bls12_381_G2_Neg => { let tipo = function(vec![g2_element()], g2_element());