lean4-htt/tests
Leonardo de Moura 79609938a8 feat: allow universe constraints to be postponed longer
Before this commit, each `isDefEq u v` invocation would fail if there
were pending universe level constraints. This commit, moves the
postponed universe constraints back to the `MetaM` state.
It also adds the combinator
```lean
withoutPostponingUniverseConstraints x
```
which executes `x` and throws an error if there are pending universe
constraints. We use the combinator at `elabApp` and `elabBinders`.
Without this commit, we would fail to elaborate simple terms such as
```lean
  Functor.map Prod.fst (x s)
```
because after elaborating `Prod.fst` and trying to ensure its type
match the expected one, we would be stuck at the universe constraint:
```
  u =?= max u ?v
```

Another benefit of the new approach is better error messages. Instead
of getting a mysterious type mismatch constraint, we get a list of
universe contraints the system is stuck at.

cc @Kha
2020-10-26 15:50:05 -07:00
..
bench chore: fix benchmark 2020-10-25 21:55:50 +01:00
compiler chore: remove new_frontend from tests 2020-10-25 09:16:38 -07:00
elabissues chore: remove new_frontend from tests 2020-10-25 09:16:38 -07:00
ir chore(tests): fix do syntax in tests 2019-06-30 13:04:34 +02:00
lean feat: allow universe constraints to be postponed longer 2020-10-26 15:50:05 -07:00
playground chore: remove new_frontend from tests 2020-10-25 09:16:38 -07:00
plugin feat: run linters in the new frontend 2020-10-23 14:04:28 -07:00
.gitignore chore: move bin/ and .oleans into build directory 2020-05-14 14:47:54 +02:00
common.sh test: ignore \r when diffing 2020-09-15 09:32:00 -07:00