1// compile 2 3// Copyright 2022 The Go Authors. All rights reserved. 4// Use of this source code is governed by a BSD-style 5// license that can be found in the LICENSE file. 6 7// Issue 54638: composite literal assignment with 8// alignment > PtrSize causes ICE. 9 10package p 11 12import "sync/atomic" 13 14type S struct{ l any } 15 16type T struct { 17 H any 18 a [14]int64 19 f func() 20 x atomic.Int64 21} 22 23//go:noinline 24func (T) M(any) {} 25 26type W [2]int64 27 28//go:noinline 29func (W) Done() {} 30 31func F(l any) [3]*int { 32 var w W 33 var x [3]*int // use some stack 34 t := T{H: S{l: l}} 35 go func() { 36 t.M(l) 37 w.Done() 38 }() 39 return x 40} 41