1// run 2 3// Copyright 2009 The Go Authors. All rights reserved. 4// Use of this source code is governed by a BSD-style 5// license that can be found in the LICENSE file. 6 7package main 8 9import "unsafe" 10 11func main() { 12 // works 13 addr := uintptr(0x234) 14 x1 := (*int)(unsafe.Pointer(addr)) 15 16 // fails 17 x2 := (*int)(unsafe.Pointer(uintptr(0x234))) 18 19 if x1 != x2 { 20 println("mismatch", x1, x2) 21 panic("fail") 22 } 23} 24