]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: remove implicit deref from len(p) where p is ptr-to-array
authorKeith Randall <khr@golang.org>
Fri, 14 Mar 2025 20:19:18 +0000 (13:19 -0700)
committerKeith Randall <khr@golang.org>
Wed, 19 Mar 2025 16:55:46 +0000 (09:55 -0700)
commitdeb6790fcfe943c640a4ef393036690eef5eef5c
tree9f683e750cdd3031f76bd5c4f67b44e35b0299f9
parent56e5476e10db25ce71f562bd6ee0910a83532b04
cmd/compile: remove implicit deref from len(p) where p is ptr-to-array

func f() *[4]int { return nil }
_ = len(f())

should not panic. We evaluate f, but there isn't a dereference
according to the spec (just "arg is evaluated").

Update #72844

Change-Id: Ia32cefc1b7aa091cd1c13016e015842b4d12d5b4
Reviewed-on: https://go-review.googlesource.com/c/go/+/658096
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Robert Griesemer <gri@google.com>
Reviewed-by: Keith Randall <khr@google.com>
src/cmd/compile/internal/typecheck/expr.go
test/fixedbugs/issue72844.go [new file with mode: 0644]