/
/
opt
/
golang
/
1.22.0
/
test
/
typeparam
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/typeparam
Edit:
/opt/golang/1.22.0/test/typeparam/issue50993.go
// compile -d=checkptr // Copyright 2022 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 ( "sync/atomic" "unsafe" ) type Node[T any] struct { Next *Node[T] // Prev *Node[T] } func LoadPointer[T any](addr **T) (val *T) { return (*T)( atomic.LoadPointer( (*unsafe.Pointer)(unsafe.Pointer(addr)), )) } func (q *Node[T]) Pop() { var tail, head *Node[T] if head == LoadPointer(&tail) { } } func main() { ch := Node[uint64]{} ch.Pop() }
Ukuran: 569 B