Conformance · measured, not claimed
How much Go actually runs.
The Go team's own compiler test suite ($GOROOT/test), run through the kavak Go frontend unmodified. Each test's own directive on line 1 decides how it is judged.
32.7%659 of 2,016 in-scope files
- Authority
/opt/homebrew/Cellar/go/1.25.6/libexec/test- Arbiter
- go version go1.25.6 darwin/arm64
- Unit
- file
- Measured
- 2026-09-10 17:07
- Raw data
- raw measurement (JSON)
breakdown
Breakdown by suite directive
| suite directive | tests | passing | not yet | wrong | out of scope | pass rate | split |
|---|---|---|---|---|---|---|---|
| run | 1,026 | 200 | 815 | 0 | 11 | 19.7% | |
| errorcheck | 662 | 116 | 441 | 0 | 105 | 20.8% | |
| (none) | 657 | 0 | 0 | 0 | 657 | — | |
| compile | 501 | 343 | 101 | 0 | 57 | 77.3% | |
| compiledir | 124 | 0 | 0 | 0 | 124 | — | |
| rundir | 116 | 0 | 0 | 0 | 116 | — | |
| asmcheck | 71 | 0 | 0 | 0 | 71 | — | |
| build | 33 | 0 | 0 | 0 | 33 | — | |
| errorcheckdir | 25 | 0 | 0 | 0 | 25 | — | |
| runoutput | 22 | 0 | 0 | 0 | 22 | — | |
| runindir | 10 | 0 | 0 | 0 | 10 | — | |
| skip | 9 | 0 | 0 | 0 | 9 | — | |
| errorcheckandrundir | 5 | 0 | 0 | 0 | 5 | — | |
| go | 5 | 0 | 0 | 0 | 5 | — | |
| errorcheckwithauto | 5 | 0 | 0 | 0 | 5 | — | |
| buildrundir | 4 | 0 | 0 | 0 | 4 | — | |
| errorcheckoutput | 4 | 0 | 0 | 0 | 4 | — | |
| builddir | 3 | 0 | 0 | 0 | 3 | — | |
| buildrun | 2 | 0 | 0 | 0 | 2 | — |
blockers
What blocks the rest
The ten most expensive blockers. Next to each is how many files it costs — one compiler gap can stop a whole file, so the cost is what matters, not the count of distinct errors.
| cost | reason — the measurement's own words | blamed |
|---|---|---|
| 154 | codegen: typed backend: a function call is not supported yet | — |
| 113 | frontend/parse: expected '…' | ){] |
| 111 | frontend/sema: undefined symbol | sinkTxg |
| 100 | no diagnostic for a rule in: other language rules | cannot|invalidtypeinvalidbyte |
| 60 | codegen: typed backend: a call to '…' is not supported yet (only functions declared in this file) | recoverfFreal |
| 45 | no diagnostic for a rule in: initialization cycles | initialization cycle|depends upon itselfinitialization cycle: x refers to itselfinvalid recursive type: anonymous interface refers to itselfinitialization cycle|depends upon itself|depend upon each other |
| 43 | frontend/parse: expected expression | interfaceidonefalse |
| 40 | no diagnostic for a rule in: assignability & type mismatch | cannot use|incompatiblecannot use promoted field t1.t1f1 in struct literal of type t2|unknown fieldillegal types|incompatible|cannotinvalid operation|incompatible |
| 37 | frontend/sema: parameter type mismatch in function call | fxtp |
| 36 | no diagnostic for a rule in: undefined / unexported symbols | undefinedunexported|undefinedundefined.*Tundefined.*io.ReadWriterCloser |
A further 618 files are blocked by smaller causes; the full list is in the raw measurement (JSON).