| // errorcheck -0 -d=nil |
| |
| // +build aix |
| |
| // Copyright 2018 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. |
| |
| // Test that nil checks are removed. |
| // Optimization is enabled. |
| |
| package p |
| |
| func f5(p *float32, q *float64, r *float32, s *float64) float64 { |
| x := float64(*p) // ERROR "generated nil check" |
| y := *q // ERROR "generated nil check" |
| *r = 7 // ERROR "removed nil check" |
| *s = 9 // ERROR "removed nil check" |
| return x + y |
| } |
| |
| type T [29]byte |
| |
| func f6(p, q *T) { |
| x := *p // ERROR "generated nil check" |
| *q = x // ERROR "removed nil check" |
| } |
| |
| // make sure to remove nil check for memory move (issue #18003) |
| func f8(t *[8]int) [8]int { |
| return *t // ERROR "generated nil check" |
| } |