Add the timers test because they now work correctly on AVR, probably as
a result of the reflect refactor: https://github.com/tinygo-org/tinygo/pull/2640

I've also updated a few of the other tests to indicate the new status
and why they don't work. It's no longer because of compiler errors, but
because of linker or runtime errors (which is at least some progress).
For example, I found that testdata/reflect.go works if you disable
`testAppendSlice` and increase the stack size.
Этот коммит содержится в:
Ayke van Laethem 2023-02-25 17:16:45 +01:00 коммит произвёл Ron Evans
родитель 476621736c
коммит 201592d93b

Просмотреть файл

@ -180,7 +180,8 @@ func runPlatTests(options compileopts.Options, tests []string, t *testing.T) {
// Skip the ones that aren't. // Skip the ones that aren't.
switch name { switch name {
case "reflect.go": case "reflect.go":
// Reflect tests do not work due to type code issues. // Reflect tests do not run correctly, probably because of the
// limited amount of memory.
continue continue
case "gc.go": case "gc.go":
@ -188,20 +189,16 @@ func runPlatTests(options compileopts.Options, tests []string, t *testing.T) {
continue continue
case "json.go", "stdlib.go", "testing.go": case "json.go", "stdlib.go", "testing.go":
// Breaks interp. // Too big for AVR. Doesn't fit in flash/RAM.
continue continue
case "math.go": case "math.go":
// Stuck somewhere, not sure what's happening. // Needs newer picolibc version (for sqrt).
continue continue
case "cgo/": case "cgo/":
// CGo does not work on AVR. // CGo function pointers don't work on AVR (needs LLVM 16 and
continue // some compiler changes).
case "timers.go":
// Doesn't compile:
// panic: compiler: could not store type code number inside interface type code
continue continue
default: default: