Gno: An interpreted, stack-based Go virtual machine to build succinct and composable apps + Gno.land: a blockchain for timeless code and fair open-source
In GnoVM, type aliases with the same value are considered equal, while in Go, they are considered different without explicit casting. This leads to inconsistent behavior between Gno and Go.
Example
The following code returns false, false, false in Go, but true, false, false in Gno:
https://go.dev/play/p/-y5gRjR9erA https://play.gno.land/p/B9WLR_AsqYY
In GnoVM, type aliases with the same value are considered equal, while in Go, they are considered different without explicit casting. This leads to inconsistent behavior between Gno and Go.
Example
The following code returns
false, false, false
in Go, buttrue, false, false
in Gno: