// Copyright 2020 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 type policy[K, V any] interface{} type LRU[K, V any] struct{} func NewCache[K, V any](p policy[K, V]) {} func _() { var lru LRU[int, string] NewCache[int, string](&lru) NewCache(& /* ERROR does not match policy\[K, V\] \(cannot infer K and V\) */ lru) }