| // 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. |
| // >= 16 bytes to avoid tiny alloc. |
| for i := 0; i < 100000; i++ { |
| m := make(map[*T]struct{}, 0) |
| for j := 0; j < 20; j++ { |
| // During the call to mapassign_fast64, the key argument |
| // was incorrectly treated as a uint64. If the stack was |
| // scanned during that call, the only pointer to k was |
| // missed, leading to *k being collected prematurely. |