From 8f209bff2b7ad3612b096819999b0f75d9d5b119 Mon Sep 17 00:00:00 2001 From: ZhuangYumin Date: Thu, 9 Nov 2023 18:24:24 +0800 Subject: [PATCH] fix: bug when comparing strings --- src/utils.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/utils.cpp b/src/utils.cpp index 7b1a776..5c5ccf0 100644 --- a/src/utils.cpp +++ b/src/utils.cpp @@ -338,7 +338,7 @@ std::any Neg(std::any a) { } bool Greater(std::any a, std::any b) { - ConverToSameArithType(a, b); + ConverToSameArithType(a, b, true); bool *ptr_a_bool = std::any_cast(&a); bool *ptr_b_bool = std::any_cast(&b); ZYM::int2048 *ptr_a_int2048 = std::any_cast(&a); @@ -359,7 +359,7 @@ bool Greater(std::any a, std::any b) { throw FatalError("Greater: Type Error"); } bool Less(std::any a, std::any b) { - ConverToSameArithType(a, b); + ConverToSameArithType(a, b, true); bool *ptr_a_bool = std::any_cast(&a); bool *ptr_b_bool = std::any_cast(&b); ZYM::int2048 *ptr_a_int2048 = std::any_cast(&a); @@ -380,7 +380,7 @@ bool Less(std::any a, std::any b) { throw FatalError("Less: Type Error"); } bool Equal(std::any a, std::any b) { - ConverToSameArithType(a, b); + ConverToSameArithType(a, b, true); bool *ptr_a_bool = std::any_cast(&a); bool *ptr_b_bool = std::any_cast(&b); ZYM::int2048 *ptr_a_int2048 = std::any_cast(&a); @@ -401,7 +401,7 @@ bool Equal(std::any a, std::any b) { throw FatalError("Equal: Type Error"); } bool NotEqual(std::any a, std::any b) { - ConverToSameArithType(a, b); + ConverToSameArithType(a, b, true); bool *ptr_a_bool = std::any_cast(&a); bool *ptr_b_bool = std::any_cast(&b); ZYM::int2048 *ptr_a_int2048 = std::any_cast(&a); @@ -422,7 +422,7 @@ bool NotEqual(std::any a, std::any b) { throw FatalError("NotEqual: Type Error"); } bool GreaterEqual(std::any a, std::any b) { - ConverToSameArithType(a, b); + ConverToSameArithType(a, b, true); bool *ptr_a_bool = std::any_cast(&a); bool *ptr_b_bool = std::any_cast(&b); ZYM::int2048 *ptr_a_int2048 = std::any_cast(&a); @@ -443,7 +443,7 @@ bool GreaterEqual(std::any a, std::any b) { throw FatalError("GreaterEqual: Type Error"); } bool LessEqual(std::any a, std::any b) { - ConverToSameArithType(a, b); + ConverToSameArithType(a, b, true); bool *ptr_a_bool = std::any_cast(&a); bool *ptr_b_bool = std::any_cast(&b); ZYM::int2048 *ptr_a_int2048 = std::any_cast(&a);