From e806b5f0a29eee7a7d723e3d8f3b52585f68a67d Mon Sep 17 00:00:00 2001 From: Valk Richard Li <48872266+ValKmjolnir@users.noreply.github.com> Date: Sun, 25 Oct 2020 22:44:34 +0800 Subject: [PATCH] fixed bug of operator 'and' --- nasal_gc.h | 18 ++++++++++++++---- nasal_runtime.h | 21 ++++++++++++++++----- 2 files changed, 30 insertions(+), 9 deletions(-) diff --git a/nasal_gc.h b/nasal_gc.h index 75e76fc..1525407 100644 --- a/nasal_gc.h +++ b/nasal_gc.h @@ -824,8 +824,7 @@ int nasal_scalar::nasal_scalar_link(int a_scalar_addr,int b_scalar_addr) int nasal_scalar::nasal_scalar_and(int a_scalar_addr,int b_scalar_addr) { nasal_scalar& a_ref=nasal_vm.gc_get(a_scalar_addr); - nasal_scalar& b_ref=nasal_vm.gc_get(b_scalar_addr); - if(a_ref.type==vm_hash || a_ref.type==vm_vector || a_ref.type==vm_function || b_ref.type==vm_hash || b_ref.type==vm_vector || b_ref.type==vm_function) + if(a_ref.type==vm_hash || a_ref.type==vm_vector || a_ref.type==vm_function) { std::cout<<">> [vm] scalar_and: hash and vector cannot take part in and calculation."<> [vm] scalar_and: hash and vector cannot take part in and calculation."<> [vm] scalar_or: hash and vector cannot take part in or calculation."<> [vm] scalar_or: hash and vector cannot take part in or calculation."<