reflect: add support for DeepEqual

The implementation has been mostly copied from the Go reference
implementation with some small changes to fit TinyGo.

Source: https://github.com/golang/go/blob/77a11c05d6a6f766c75f804ea9b8796f9a9f85a3/src/reflect/deepequal.go

In addition, this commit also contains the following:

  - A set of tests copied from the Go reflect package.
  - An increased stack size for the riscv-qemu and hifive1-qemu targets
    (because they otherwise fail to run the tests). Because these
    targets are only used for testing, this seems fine to me.
This commit is contained in:
Ayke van Laethem
2020-10-29 17:39:11 +01:00
committed by Ron Evans
parent 5866a47e77
commit 335fb71d2f
7 changed files with 432 additions and 7 deletions
+3 -1
View File
@@ -210,11 +210,13 @@ TEST_PACKAGES = \
index/suffixarray \
math \
math/cmplx \
net/mail \
reflect \
testing \
testing/iotest \
text/scanner \
text/scanner \
unicode \
unicode/utf16 \
unicode/utf8 \
# Test known-working standard library packages.