// run // Copyright 2025 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 // Issue #45624 is the proposal to accept new(expr) in go1.26. // Here we test its run-time behavior. func main() { { p := new(123) // untyped constant expr if *p != 123 { panic("wrong value") } } { x := 42 p := new(x) // non-constant expr if *p != x { panic("wrong value") } } { x := [2]int{123, 456} p := new(x) // composite value if *p != x { panic("wrong value") } } { var i int v := new(i > 0) // untyped expression, see issue #75617 if *v != false { panic("wrong value") } } }