Module example.com/errors is used to compare modules with errors across
two versions.

* Package "fixed" has type errors in v0.1.0, fixed in v0.2.0.
* Package "deleted" has type errors in v0.1.0, deleted in v0.2.0.
* Package "broken" is correct in v0.1.0, has type errors in v0.2.0.
* Package "added" doesn't exist in v0.1.0, has type errors in v0.2.0.

-- go.mod --
module example.com/errors

go 1.12
-- fixed/fixed.go --
package fixed

const X int = Missing

-- deleted/deleted.go --
package deleted

const X int = Missing

-- broken/broken.go --
package broken

const X int = 12
