Leonardo de Moura
8a4bc188c2
feat(library/init/data): add BinomialHeap
2019-07-31 15:13:00 -07:00
Leonardo de Moura
906272d7e9
feat(library/init/data/list/basic): add eraseIdx
2019-07-31 15:04:43 -07:00
Leonardo de Moura
b2ff6bfd9f
fix(library/relative.py): Windows and Linux builds
2019-07-30 18:56:34 -07:00
Leonardo de Moura
b0c84874ba
chore(runtime/compact): add additional comments
2019-07-30 17:58:15 -07:00
Sebastian Ullrich
55104ad0c6
chore(library/compiler/csimp): remove wrong assertion
2019-07-30 17:52:43 -07:00
Sebastian Ullrich
2c12f9d0f6
chore(runtime/object): LEAN_FAKE_FREE: assert on double-free
2019-07-30 17:52:43 -07:00
Sebastian Ullrich
d09c512784
chore(library/module): lsan: ignore module objects
2019-07-30 17:52:43 -07:00
Sebastian Ullrich
20b6502aaf
fix(runtime/compact): badly aligned "field" in terminator
2019-07-30 17:52:43 -07:00
Leonardo de Moura
6b62ed0c99
fix(library/relative.py): macos path names are case insensitive
...
The MacOS file system is not case sensitive.
Thus, the Lean path normalization function converts all characters in the pathname to lowercase.
We use the auxiliary Python script relative.py in our makefile.
The Python function `os.path.relpath` normalizes pathnames, but it only converts all characters to lowercase on Windows :(
Thus, Lean outputs the dependency files such as
```
/users/leonardodemoura/projects/lean4/library/init/lean/smap.olean
```
In Python, the current directory is
```
/Users/leonardodemoura/projects/lean4/library
```
Thus, `os.path.relpath` produces
```
../../../../../users/leonardodemoura/projects/lean4/library/init/lean/smap.olean
```
instead of
```
init/lean/smap.olean
```
2019-07-30 17:47:05 -07:00
Leonardo de Moura
2f5b2b2409
feat(library/init/lean/path): add realPathNormalized
2019-07-28 20:52:41 -07:00
Leonardo de Moura
4b10f09baf
chore(stage0): update
2019-07-28 20:13:01 -07:00
Leonardo de Moura
378d75b3b4
feat(library/init/lean/path): use toLower at normalizePath if file system is case-insensitive
2019-07-28 19:50:01 -07:00
Leonardo de Moura
6cf8571e37
feat(library/init/system/platform): add System.Platform.isOSX
2019-07-28 19:49:40 -07:00
Leonardo de Moura
a48d635004
chore(library/init/lean/path): include search path in error message
...
Trying to understand why the Windows build is failing at Azure.
2019-07-28 19:11:01 -07:00
Leonardo de Moura
10fe453cf6
test(tests/lean/run/ubscalar): save UB scalar field test
2019-07-28 10:11:35 -07:00
Leonardo de Moura
1d0d65893b
fix(library/init/lean/path): user normalizePathSeparators at moduleNameOfFileName
2019-07-28 10:09:51 -07:00
Leonardo de Moura
17e5f0b719
chore(stage0): update
2019-07-28 09:54:57 -07:00
Leonardo de Moura
fb14110b22
fix(library/compiler/llnf): sort scalar fields by size to avoid UB
2019-07-28 09:53:53 -07:00
Leonardo de Moura
e0d1892d72
fix(library/init): add normalizePathSeparators
...
Trying to fix broken tests on Windows.
2019-07-28 08:21:48 -07:00
Leonardo de Moura
ff6b868440
chore(library/module): remove dead code
2019-07-27 19:03:07 -07:00
Leonardo de Moura
943f6cbd55
chore(library/module): use module_name_of_file in Lean
2019-07-27 18:59:54 -07:00
Leonardo de Moura
bc525d980e
chore(shell/CMakeLists): fix test
2019-07-27 18:52:53 -07:00
Leonardo de Moura
fda2cd23ec
chore(shell/lean): use find_lean_file in Lean
2019-07-27 18:38:27 -07:00
Leonardo de Moura
fe45476d91
chore(stage0): update
2019-07-27 18:23:53 -07:00
Leonardo de Moura
66a93dbb39
feat(library/init/lean/elaborator/basic): absolutizeModuleName
2019-07-27 18:17:21 -07:00
Leonardo de Moura
2c755c60f5
feat(library/init/lean/path): fileNameToModuleName
2019-07-27 09:56:37 -07:00
Leonardo de Moura
a336176017
feat(runtime/io): improve "file not found" error message
2019-07-27 09:45:38 -07:00
Leonardo de Moura
761149e029
chore(stage0): update
2019-07-26 17:59:22 -07:00
Leonardo de Moura
bf5afbc289
feat(library/init/lean/environment): use findOLean implemented in Lean
...
TODO: cleanup `path.lean`
2019-07-26 17:57:43 -07:00
Leonardo de Moura
8a27a5e164
chore(stage0): update
2019-07-26 17:43:59 -07:00
Leonardo de Moura
c1e217da2b
feat(library/init/lean/path): absolutizeModuleName
2019-07-26 17:26:44 -07:00
Leonardo de Moura
9bed367cc0
feat(library/init/lean/modulename): add helper functions
2019-07-26 16:46:03 -07:00
Leonardo de Moura
dea1e52c96
feat(shell/lean): initialize searchPath implemented in Lean
2019-07-26 16:15:38 -07:00
Leonardo de Moura
e9fafd3c4b
chore(library/init/lean/path,stage0): export initSearchPath and update
2019-07-26 16:06:19 -07:00
Leonardo de Moura
e722ea9ed9
feat(library/init/lean): implement findOLean and findLean in Lean
2019-07-26 16:04:10 -07:00
Leonardo de Moura
2ddc797f65
feat(library/init/system/filepath): add dirName
2019-07-26 14:53:54 -07:00
Sebastian Ullrich
b902dc3dac
fix(tests/lean/run/inline_fn): pretty-printer segfaults, disable for now
2019-07-26 12:39:35 -07:00
Sebastian Ullrich
7b18bc94fd
fix(library/module): make sure header length preserves alignment
2019-07-26 12:39:35 -07:00
Sebastian Ullrich
d45cc4cb7b
fix(kernel): manually align unboxed fields
2019-07-26 12:39:35 -07:00
Sebastian Ullrich
8fb004f917
fix(runtime/alloc): fix out-of-bounds pointer reported by ubsan
2019-07-26 12:39:35 -07:00
Sebastian Ullrich
aa30a8f273
fix(frontends/lean/elaborator): remove dubious error reporting code that makes Lean compiled with clang 8 segfault
2019-07-26 12:39:35 -07:00
Leonardo de Moura
a16df483fa
fix(runtime/io): compilation error on windows
2019-07-26 10:09:55 -07:00
Leonardo de Moura
70b5e33766
chore(CMakeLists.txt): add link to cmake documentation
2019-07-26 08:10:46 -07:00
Sebastian Ullrich
e129a65948
fix(shell/CMakeLists): mark libleanstatic.a and libleanstdlib.a as cyclically dependent
2019-07-26 14:38:28 +02:00
Leonardo de Moura
5a1380ec6a
feat(library/init/lean): add lean/path.lean
2019-07-25 19:28:22 -07:00
Leonardo de Moura
798bbc0662
feat(library/init/system/io): new primitives
2019-07-25 18:12:44 -07:00
Sebastian Ullrich
aef4a7159b
chore(*): remove obsolete leanpkg.path files
2019-07-25 17:46:53 -07:00
Sebastian Ullrich
53a26b94ff
chore(util/lean_path): remove leanpkg.path support
...
Because Lean 4 will not compile dependencies by itself, there is not much of a
point in it resolving them by itself either. The build tool that ensures that
all dependencies have been built should call `lean` with the `LEAN_PATH`
environment variable set accordingly.
2019-07-25 17:46:40 -07:00
Leonardo de Moura
b0d0cf973d
chore(tests): fix tests
2019-07-25 17:44:25 -07:00
Leonardo de Moura
804c856282
chore(stage0): update
2019-07-25 17:39:40 -07:00