Commit graph

24104 commits

Author SHA1 Message Date
Leonardo de Moura
e9e40789c1 fix: mpz::power for USE_GMP=OFF 2021-11-30 17:57:33 -08:00
Leonardo de Moura
83d6eb1c72 fix: mpz::mul2k for USE_GMP=OFF 2021-11-30 17:19:16 -08:00
Leonardo de Moura
9a81ae556a feat: add support for USE_GMP=OFF at compact.cpp 2021-11-30 16:46:53 -08:00
Leonardo de Moura
8aca088752 feat: mpz missing methods for USE_GMP=OFF 2021-11-30 16:46:53 -08:00
Leonardo de Moura
c6f5c3717c chore: use size_t at buffer
Add `buffer::ensure_capacity`.
2021-11-30 16:46:53 -08:00
Sebastian Ullrich
4aab42f9aa fix: segfault when passing scalar object to dbgTraceIfShared 2021-11-30 19:07:46 +01:00
Gabriel Ebner
70ad1deb00 fix: catch error in msgToInteractiveDiagnostic
Otherwise, any error while pretty-printing would kill the server (file
worker).
2021-11-30 15:34:54 +01:00
Gabriel Ebner
9a2140b3db refactor: auto-generate (builtin)Parenthesizer attribute
We already generated `(builtin)Parenthesizer` (and `*Formatter`)
attributes for definitions tagged with `(builtin)*Parser`.  This commit
extends this support to all Parser-definitions, as long as we can
determine the syntax node kind syntactically (i.e., the parser
definition contains a leadingNode/node/trailingNode/nodeWithAntiquot
call).
2021-11-30 15:34:54 +01:00
Leonardo de Moura
e5b3b180dc feat: some mpz methods for LEAN_USE_GMP=OFF 2021-11-29 17:55:04 -08:00
Leonardo de Moura
ec6932fbb7 feat: some mpz methods for LEAN_USE_GMP=OFF 2021-11-29 16:01:07 -08:00
Leonardo de Moura
68fc9a9115 feat: add dummy mpz implementation for LEAN_USE_GMP=OFF 2021-11-29 11:42:08 -08:00
Leonardo de Moura
0002d8bd04 chore: missing #ifdef LEAN_USE_GMP 2021-11-29 11:35:13 -08:00
Leonardo de Moura
6396f3b2c1 chore: simplify mpz.h
Add basic support for `LEAN_USE_GMP=OFF`.
2021-11-29 11:11:49 -08:00
Leonardo de Moura
7435fd5dd4 chore: add USE_GMP cmake option 2021-11-29 10:25:26 -08:00
Sebastian Ullrich
0764967757 fix: getFVarId 2021-11-29 10:06:15 -08:00
Sebastian Ullrich
465913c391 fix: this must be a keyword 2021-11-29 10:06:15 -08:00
Sebastian Ullrich
531eefb7db chore: adapt syntax 2021-11-29 10:06:15 -08:00
Sebastian Ullrich
9cca1a57e0 feat: generalize syntax of fvar-accepting tactics 2021-11-29 10:06:15 -08:00
Joshua Seaton
a9317760e7
chore: update IR interpreter enum hygiene
This change addresses -Wreturn type and -Wimplicit-fallthrough
infractions in the IR interpreter. Moreover, default switch cases on
enum classes are removed to leverage compiler complaints of missing
cases, which ensures that all related switch logic gets thoughtfully
extended when the enums are extended themselves.
2021-11-28 10:29:08 +01:00
Sebastian Ullrich
a329896e70 feat: refine declaration ranges at instance & example 2021-11-27 07:25:15 -08:00
Sebastian Ullrich
4f15805787 feat: annotate declarations with term infos 2021-11-27 07:25:15 -08:00
Leonardo de Moura
0aa32d643e fix: eta struct and proof irrelevance issue
see #777
2021-11-27 07:15:57 -08:00
Leonardo de Moura
2d113e83f9 feat: eta struct support for unit-like datatypes
For example, given `a b : Unit`, we have that `a` and `b` are
definitionally equal by `etaStruct`.

See #777
2021-11-26 08:36:25 -08:00
Leonardo de Moura
f9a5ac1d8e fix: missing condition at matchConstStruct 2021-11-26 08:36:25 -08:00
Leonardo de Moura
693a96681a doc: fix eta struct comment 2021-11-26 08:36:25 -08:00
Sebastian Ullrich
676b5e5ea8 chore: typo
Co-authored-by: Gabriel Ebner <gebner@gebner.org>
2021-11-26 17:13:19 +01:00
Sebastian Ullrich
14bc140efe fix: server: do not show parent node on synthetic sorry 2021-11-26 17:13:19 +01:00
Sebastian Ullrich
4063729b6c doc: document some built-in term notations 2021-11-26 17:13:19 +01:00
Sebastian Ullrich
2a1aee2b7a feat: record declaration ranges of builtin parsers & elaborators 2021-11-26 17:13:19 +01:00
Sebastian Ullrich
e9f7c88299 feat: record doc strings of builtin parsers & elaborators 2021-11-26 17:13:19 +01:00
Sebastian Ullrich
8176084dcf refactor: factor out declareBuiltin 2021-11-26 17:13:19 +01:00
larsk21
e641ae4eae fix: prefix check in set_option completion 2021-11-26 11:42:54 +01:00
Leonardo de Moura
3ccd44fafa fix: proofs after adding eta struct support at recursors
see #777
2021-11-25 11:34:31 -08:00
Leonardo de Moura
88b6ad4756 feat: add etaStruct to Meta.Simp.Config 2021-11-25 11:31:00 -08:00
Leonardo de Moura
d806344ee2 fix: set etaStruct := false at MatchEqns 2021-11-25 11:31:00 -08:00
Leonardo de Moura
43217884c0 feat: add Meta.Config.etaStruct
It is useful to disable eta for structures for meta programs.
2021-11-25 11:31:00 -08:00
Leonardo de Moura
0fc8c1da77 feat: eta for structures at recursors
see #777
2021-11-25 11:31:00 -08:00
Leonardo de Moura
50ac21d0a6 refactor: move is_constructor_app to inductive.cpp 2021-11-25 11:31:00 -08:00
Leonardo de Moura
e22bffa94f refactor: move is_structure_like to inductive.cpp 2021-11-25 11:31:00 -08:00
Leonardo de Moura
03e346bc66 chore: simplify to_cnstr_when_K 2021-11-25 11:31:00 -08:00
Leonardo de Moura
9e1704f658 chore: simplify toCtorWhenK 2021-11-25 11:31:00 -08:00
Leonardo de Moura
ccc3f99507 chore: use isStructureLike 2021-11-25 11:31:00 -08:00
Leonardo de Moura
0de700fe45 chore: naming convetion 2021-11-25 11:31:00 -08:00
Sebastian Ullrich
f7decd2d46 fix: go to definition for macro_rules etc. 2021-11-24 11:54:13 +01:00
Wojciech Nawrocki
17f99e353e fix: tactic state at EOF 2021-11-24 09:15:56 +01:00
Leonardo de Moura
a8f4146070 feat: support eta struct recursively
Addresses issues raised by @gebner at #777
2021-11-23 17:38:48 -08:00
Sebastian Ullrich
653ff184a8 fix: semantic highlighting, once more 2021-11-23 17:20:01 +01:00
Sebastian Ullrich
573c3c9760 fix: semantic highlighting, again 2021-11-23 17:02:09 +01:00
Gabriel Ebner
7537fa7795 fix: unfold x<y in discrimination tree module 2021-11-23 07:34:51 -08:00
Leonardo de Moura
e15a656fd2 fix: remove @[reducible] annotation from Function.comp and Function.const
closes #813
2021-11-23 07:29:25 -08:00