/
githubmirror
/
go
Обзор
Документация
Войти
/
githubmirror
/
go
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test/abi/map.go
34 строки
557 B
Cherry Zhang
cmd/compile: preserve pointerness when creating map key temp
20 апр 2021, 17:30
20 апр 2021, 17:30
3ff6ff7
Код
Авторство
О чём код?
// run // Copyright 2021 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package main import "runtime" type T [10]int var m map[*T]int //go:noinline func F() { m = map[*T]int{ K(): V(), // the key temp should be live across call to V } } //go:noinline func V() int { runtime.GC(); runtime.GC(); runtime.GC(); return 123 } //go:noinline func K() *T { p := new(T) runtime.SetFinalizer(p, func(*T) { println("FAIL") }) return p } func main() { F() }