The test needs a few changes to support low-memory devices but other
than that, it works fine.
Этот коммит содержится в:
Ayke van Laethem 2022-05-04 22:33:36 +02:00 коммит произвёл Ron Evans
родитель 109b5298c4
коммит 995e815b63
2 изменённых файлов: 8 добавлений и 9 удалений

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

@ -194,10 +194,6 @@ func runPlatTests(options compileopts.Options, tests []string, t *testing.T) {
// Breaks interp. // Breaks interp.
continue continue
case "map.go":
// Reflect size calculation crashes.
continue
case "channel.go": case "channel.go":
// Freezes after recv from closed channel. // Freezes after recv from closed channel.
continue continue

13
testdata/map.go предоставленный
Просмотреть файл

@ -2,6 +2,7 @@ package main
import ( import (
"sort" "sort"
"unsafe"
) )
var testmap1 = map[string]int{"data": 3} var testmap1 = map[string]int{"data": 3}
@ -211,10 +212,12 @@ func testBigMap(squares map[int]int, n int) {
func mapgrow() { func mapgrow() {
m := make(map[int]int) m := make(map[int]int)
const ( var Delete = 500
Delete = 500 if unsafe.Sizeof(uintptr(0)) < 4 {
N = Delete * 2 // Reduce the number of iterations on low-memory devices like AVR.
) Delete = 20
}
var N = Delete * 2
for i := 0; i < Delete; i++ { for i := 0; i < Delete; i++ {
m[i] = i m[i] = i
@ -246,7 +249,7 @@ func mapgrow() {
println("bad length post grow/delete", len(m)) println("bad length post grow/delete", len(m))
} }
seen := make([]bool, 500) seen := make([]bool, Delete)
var mcount int var mcount int
for k, v := range m { for k, v := range m {