This test verifies that we add an [os,arch] suffix to each diagnostic
that doesn't appear in the default build (=runtime.{GOOS,GOARCH}).

See golang/go#65496.

The two p/*.go files below are written to trigger the same diagnostic
(range, message, source, etc) but varying only by URI.

In the q test, a single location in the common code q.go has two
diagnostics, one of which is tagged.

This test would fail on openbsd/mips64 because it will be
the same as the default build, so we skip that platform.

-- flags --
-skip_goos=openbsd

-- go.mod --
module example.com

-- p/p.go --
package p

var _ fmt.Stringer //@diag("fmt", re"unde.*: fmt$")

-- p/p_openbsd_mips64.go --
package p

var _ fmt.Stringer //@diag("fmt", re"unde.*: fmt \\[openbsd,mips64\\]")

-- q/q_default.go --
//+build !openbsd && !mips64

package q

func f(int) int

-- q/q_openbsd_mips64.go --
package q

func f(string) int

-- q/q.go --
package q

var _ = f() //@ diag(")", re`.*want \(string\) \[openbsd,mips64\]`), diag(")", re`.*want \(int\)$`)
