github.com/JimmyHuang454/JLS-go@v0.0.0-20230831150107-90d536585ba0/internal/types/testdata/spec/comparable1.19.go (about) 1 // -lang=go1.19 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 package p 8 9 func f1[_ comparable]() {} 10 func f2[_ interface{ comparable }]() {} 11 12 type T interface{ m() } 13 14 func _[P comparable, Q ~int, R any]() { 15 _ = f1[int] 16 _ = f1[T /* ERROR T to satisfy comparable requires go1\.20 or later */] 17 _ = f1[any /* ERROR any to satisfy comparable requires go1\.20 or later */] 18 _ = f1[P] 19 _ = f1[Q] 20 _ = f1[R /* ERROR R does not satisfy comparable */] 21 22 _ = f2[int] 23 _ = f2[T /* ERROR T to satisfy comparable requires go1\.20 or later */] 24 _ = f2[any /* ERROR any to satisfy comparable requires go1\.20 or later */] 25 _ = f2[P] 26 _ = f2[Q] 27 _ = f2[R /* ERROR R does not satisfy comparable */] 28 }