motoko icon indicating copy to clipboard operation
motoko copied to clipboard

bug: inconsistent trap messages based on size of value for Nat64 subtraction

Open crusso opened this issue 2 years ago • 0 comments

The following Nat64 underflows produce different trap messages

actor Echo {

  public query func substractLargeNat64() : async Nat64 {
    return 0xFFFF_FFFF_FFFF_FFFE - 0xFFFF_FFFF_FFFF_FFFF;
  };
  
  public query func substractSmallNat64() : async Nat32 {
    return 5 - 6;
  };
};

Canister 2tvx6-uqaaa-aaaab-qaclq-cai trapped explicitly: Natural subtraction underflow" Canister 2tvx6-uqaaa-aaaab-qaclq-cai trapped explicitly: arithmetic overflow"

https://m7sm4-2iaaa-aaaab-qabra-cai.raw.ic0.app/?tag=2146295651

crusso avatar Nov 08 '23 10:11 crusso