/
/
opt
/
golang
/
1.22.0
/
test
/
uintptrescapes.dir
Server: in-mum-web1112.main-hosting.eu (62.72.28.111)
You: 216.73.216.52
PHP 8.3.16
Dir:
/opt/golang/1.22.0/test/uintptrescapes.dir
Edit:
/opt/golang/1.22.0/test/uintptrescapes.dir/a.go
// Copyright 2016 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 a import ( "unsafe" ) func recurse(i int, s []byte) byte { s[0] = byte(i) if i == 0 { return s[i] } else { var a [1024]byte r := recurse(i-1, a[:]) return r + a[0] } } //go:uintptrescapes func F1(a uintptr) { var s [16]byte recurse(4096, s[:]) *(*int)(unsafe.Pointer(a)) = 42 } //go:uintptrescapes func F2(a ...uintptr) { var s [16]byte recurse(4096, s[:]) *(*int)(unsafe.Pointer(a[0])) = 42 } type t struct{} func GetT() *t { return &t{} } //go:uintptrescapes func (*t) M1(a uintptr) { var s [16]byte recurse(4096, s[:]) *(*int)(unsafe.Pointer(a)) = 42 } //go:uintptrescapes func (*t) M2(a ...uintptr) { var s [16]byte recurse(4096, s[:]) *(*int)(unsafe.Pointer(a[0])) = 42 }
Ukuran: 879 B