aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/go/testdata/script/mod_go_version_mixed.txt
blob: d6216ae2443a17cc72f77fa294e05b45820db2c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# Test that dependencies can use Go language features newer than the
# Go version specified by the main module.

env GO111MODULE=on

go build

-- go.mod --
module m
go 1.12
require (
	sub.1 v1.0.0
)
replace (
	sub.1 => ./sub
)

-- x.go --
package x

import "sub.1"

func F() { sub.F(0, 0) }

var A sub.Alias
var D sub.Defined

-- sub/go.mod --
module m
go 1.14

-- sub/sub.go --
package sub

// signed shift counts added in Go 1.13
func F(l, r int) int { return l << r }

type m1 interface { M() }
type m2 interface { M() }

// overlapping interfaces added in Go 1.14
type Alias = interface { m1; m2; M() }
type Defined interface { m1; m2; M() }