Source file test/nilptr5_aix.go
1 // errorcheck -0 -d=nil 2 3 //go:build aix 4 5 // Copyright 2018 The Go Authors. All rights reserved. 6 // Use of this source code is governed by a BSD-style 7 // license that can be found in the LICENSE file. 8 9 // Test that nil checks are removed. 10 // Optimization is enabled. 11 12 package p 13 14 func f5(p *float32, q *float64, r *float32, s *float64) float64 { 15 x := float64(*p) // ERROR "generated nil check" 16 y := *q // ERROR "generated nil check" 17 *r = 7 // ERROR "removed nil check" 18 *s = 9 // ERROR "removed nil check" 19 return x + y 20 } 21 22 type T [29]byte 23 24 func f6(p, q *T) { 25 x := *p // ERROR "generated nil check" 26 *q = x // ERROR "removed nil check" 27 } 28 29 // make sure to remove nil check for memory move (issue #18003) 30 func f8(t *[8]int) [8]int { 31 return *t // ERROR "generated nil check" 32 } 33