mirror of
https://github.com/golang/go
synced 2024-09-05 16:04:50 +00:00
![Matthew Dempsky](/assets/img/avatar_default.png)
The existing logic tried to advance the offset for each variable's width, but then tried to undo this logic with the array and struct handling code. It can all be much simpler by only worrying about computing offsets within the array and struct code. While here, include a short-circuit for zero-width arrays to fix a pedantic compiler failure case. Passes toolstash-check. Fixes #20739. Change-Id: I98af9bb512a33e3efe82b8bf1803199edb480640 Reviewed-on: https://go-review.googlesource.com/64471 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
17 lines
273 B
Go
17 lines
273 B
Go
// compile
|
|
|
|
// Copyright 2017 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 p
|
|
|
|
func F() {
|
|
var x struct {
|
|
x *int
|
|
w [1e9][1e9][1e9][0]*int
|
|
y *int
|
|
}
|
|
println(&x)
|
|
}
|