Commit graph

26741 commits

Author SHA1 Message Date
Chris Lovett
10649baf8d
fix: potential buffer override on command line args (#839) 2021-12-01 12:14:48 -08:00
Leonardo de Moura
5c39ddbad1 chore: update stage0 2021-11-30 17:57:59 -08:00
Leonardo de Moura
e9e40789c1 fix: mpz::power for USE_GMP=OFF 2021-11-30 17:57:33 -08:00
Leonardo de Moura
7185f99822 chore: update stage0 2021-11-30 17:47:42 -08:00
Leonardo de Moura
83d6eb1c72 fix: mpz::mul2k for USE_GMP=OFF 2021-11-30 17:19:16 -08:00
Leonardo de Moura
e1f0733a1c chore: update stage0 2021-11-30 16:49:34 -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
4964f5eb05 chore: add test 2021-11-30 15:34:54 +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
21f0b8c397 chore: update stage0 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
d253b2d2a7 chore: update stage0 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
Anders Christiansen Sørby
cfe924e53e
feat: Nix: add nativeSharedLibs option
* feat: Add nativeSharedLibs option

Use LD_PRELOAD with staticLibDeps

Add a verbose flag when debug is true

Use shared libs instead

feat: Add recursive nativeSharedLibs

Repair printPaths

Remove -v flag from lean call

feat: Use new load-dynlib option

Remove LD_PRELOAD

fix: Add allNativeSharedLibs to allLinkFlags

Trying to fix native linking

feat: Automatic link flags of nativeSharedLibs

fix: Add gmp to sharedLib buildInputs

* fix: Wrap executable files in a linker group

This is a bit slower but ensures that cycles or bad ordering of the
static lib dependencies is resolved.

* Convert allExternalDeps to a list

Breaking change if you depend on allExternalDeps being a attrset
2021-11-28 17:56:01 +01: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
b5afc34391 chore: update stage0 2021-11-26 08:38:34 -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
093fd48e48 chore: update stage0 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
cec573024c chore: update stage0 2021-11-25 11:32:53 -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