Andreas Rumpf
32d56fa913
fixes #13998 [backport:1.2]
...
(cherry picked from commit 82870e0737 )
2020-05-14 07:32:29 +02:00
Andreas Rumpf
59a97a0e06
fixes #13104 [backport]
...
(cherry picked from commit f3e17e7c77 )
2020-05-14 07:32:23 +02:00
Timothee Cour
8e5e92f679
fix https://github.com/nim-lang/Nim/issues/14275 querySetting(nimcacheDir) works even if implicitly set ( #14277 )
...
(cherry picked from commit 363b7ff3b8 )
2020-05-13 08:15:50 +02:00
Andreas Rumpf
75abd4dc68
fixes #14209 [backport:1.2] ( #14213 )
...
* fixes #14209 [backport:1.2]
* improve stability
(cherry picked from commit 64e839d5fd )
2020-05-06 17:22:16 +02:00
Andreas Rumpf
2977a31654
destructors: don't produce stupid code for 'cast' ( #14208 ) [backport:1.2]
...
* destructors: don't produce stupid code for 'cast'
* fixes #14207
(cherry picked from commit b6fb609e0d )
2020-05-06 17:20:07 +02:00
Araq
a5d0950eb0
fixes #14159 [backport:1.2]
...
(cherry picked from commit 87ac28d19a )
2020-05-06 17:13:34 +02:00
Andreas Rumpf
9caa1a5aa8
arc: do not unload globals when building a library [backport:1.2] ( #14180 )
...
(cherry picked from commit d5fc35c968 )
2020-05-06 17:09:35 +02:00
Andreas Rumpf
b997e32129
fixes #13986 [backport:1.2] ( #14173 )
...
(cherry picked from commit cf3e0008b9 )
2020-05-06 17:09:12 +02:00
Araq
b09f7275b2
fixes another silly arc/orc bug [backport:1.2]
...
(cherry picked from commit bd57f0cd32 )
2020-05-06 17:08:43 +02:00
Andreas Rumpf
49decbf4b4
fixes #14079 [backport:1.2] ( #14163 )
...
(cherry picked from commit d9e907c0e2 )
2020-05-06 17:08:32 +02:00
Timothee Cour
0136fc3e53
fix #14132 dsymutil should not be called on static libraries ( #14133 ) [backport:1.2]
...
(cherry picked from commit b8d7a98265 )
2020-04-28 07:59:11 +02:00
Andreas Rumpf
6e625246ce
fixes #14052 [backport:1.2] ( #14055 )
...
(cherry picked from commit 1b6c4ed2ba )
2020-04-23 18:44:38 +02:00
cooldome
9d667306df
fix #14007 ( #14012 ) [backport]
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
(cherry picked from commit d839eb9352 )
2020-04-23 18:43:50 +02:00
cooldome
605d395ace
fixes #14003 ( #14006 ) [backport:1.2]
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
(cherry picked from commit f10689d3d4 )
2020-04-23 18:43:35 +02:00
Timothee Cour
341141529f
backport nimExe from #13876 ( #14024 )
2020-04-20 13:39:17 +02:00
cooldome
9ef1acac64
fix #13909 ( #13914 ) [backport:1.2]
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
(cherry picked from commit f86fc5316a )
2020-04-14 07:30:24 +02:00
Timothee Cour
f34779c289
fix #13902 distinct uint64 type corruption on 32-bit with borrow ( #13907 ) [backport:1.2]
...
* fix #13902 distinct uint64 type corruption on 32-bit with borrow
Co-authored-by: Timothee Cour <timothee.cour2+lightsail@gmail.com >
(cherry picked from commit 95fd8ae93c )
2020-04-14 07:30:14 +02:00
Timothee Cour
0d59ec9b54
fix https://github.com/timotheecour/Nim/issues/88 ( #13865 ) [backport:1.2]
...
(cherry picked from commit f1fd3ef7f4 )
2020-04-14 07:29:37 +02:00
Alexander Ivanov
920add5880
sourcemaps for the JS codegen ( #7508 )
2020-04-03 12:06:23 +02:00
Andreas Rumpf
2b3b24a804
make bootstrapping more robust for people who have Nim inside /usr/bin ( #13855 )
2020-04-03 10:25:15 +02:00
Timothee Cour
93cd98dd14
move tinyc to a separate repo and allow installing external dependencency (eg tinyc) from koch / library code ( #13850 )
...
* remove tinyc
* installDeps
* update tinyc paths
2020-04-03 09:10:45 +02:00
Araq
d01fca974d
added an .assert pragma and mentioned the pragmas in the changelog
2020-04-02 12:57:32 +02:00
Timothee Cour
68539a2926
fix last remaining warning when building nim (intVal should be Int128) + minor cleanups ( #13841 )
2020-04-02 08:53:52 +02:00
Juan Carlos
afd0afe0a3
Deprecate when declared(echo):echo ( #13840 )
2020-04-02 02:56:18 +02:00
Andreas Rumpf
bc37668c5a
fixes #13782 ( #13834 )
2020-04-01 20:30:28 +02:00
Zahary Karadjov
66f18037b3
Fix tests/types/tparameterizedparent0
2020-04-01 19:38:44 +02:00
Zahary Karadjov
08afa03075
The raises list can now use expressions referencing the generic params
2020-04-01 19:38:44 +02:00
Zahary Karadjov
be95f8fdfa
Turn some of the errors back into warnings
2020-04-01 19:38:44 +02:00
Zahary Karadjov
ce9a4ed124
Replace tfHasRequiresInit with a more accurate mechanism
...
The new mechanism can deal with more complex scenarios such as
not nil field appearing in a non-default case object branch or
a field within a generic object that may depend on a when branch.
The commit also plugs another hole: the user is no longer able
to create illegal default values through seq.setLen(N).
2020-04-01 19:38:44 +02:00
Zahary Karadjov
d374c6373b
Fix tests/parallel/tguard2.nim
2020-04-01 19:38:44 +02:00
Zahary Karadjov
2b66d66567
Fix a CI failure during koch doc
2020-04-01 19:38:44 +02:00
Zahary Karadjov
e63b673ce2
Fix https://github.com/nim-lang/Nim/issues/4907
2020-04-01 19:38:44 +02:00
Zahary Karadjov
4f3d309fb0
Perform nil checks during object construction and within compiles()
...
Close https://github.com/nim-lang/Nim/issues/6494
2020-04-01 19:38:44 +02:00
Zahary Karadjov
7b7e42be54
More precise error messages for uninitialized fields in the presence of inheritance
2020-04-01 19:38:44 +02:00
Zahary Karadjov
f3be5a716f
not nil types are illegal to construct through default(T)
2020-04-01 19:38:44 +02:00
Zahary Karadjov
1b570f2b18
Turn the warning for uninitialized (result) variables into errors
2020-04-01 19:38:44 +02:00
Zahary Karadjov
54f06427c8
Enable the requiresInit checks only for objects
2020-04-01 19:38:44 +02:00
Zahary Karadjov
8ae48292ff
Plug another hole: default(T) forbidden for objects requiring initialization
2020-04-01 19:38:44 +02:00
Zahary Karadjov
05a0ec4adb
Don't allow 'var x: T' for objects that require initialization
2020-04-01 19:38:44 +02:00
Zahary Karadjov
7652aede41
More sophistication; Allow requiresInit to be specified per-field
2020-04-01 19:38:44 +02:00
Zahary Karadjov
a8b6222c86
First steps, the compiler can boot with enforced requiresInit
2020-04-01 19:38:44 +02:00
Timothee Cour
216fd59c44
make usage of foo is a user-defined error more informative ( #13833 )
2020-04-01 17:49:29 +02:00
Timothee Cour
d3020af44d
fix open file leak when running --debugger:native ( #13832 )
2020-04-01 17:48:17 +02:00
lbartoletti
567af54baf
Add arm/arm64 for FreeBSD ( #13822 )
...
* Add arm and arm64 for FreeBSD
* Add arm64 with aarch64 and reorder to avoid conflict with arm
2020-03-31 22:55:25 +02:00
Andreas Rumpf
9ffec79300
DrNim (Nim compiler with Z3 integration) ( #13743 )
...
* code cleanups and feature additions
* added basic test and koch/CI integration
* make it build on Unix
* DrNim: now buildable on Unix, only takes 10 minutes, enjoy
* added basic documentation for DrNim which can also be seen as the RFC we're following
* drnim: change the build setup so that drnim.exe ends up in bin/
* makes simple floating point ranges work
* added basic float range check
* drnim: teach Z3 about Nim's range types plus code refactoring
* drnim: make unsigned numbers work
* added and fixed index checking under setLen
* first implementation of .ensures, .invariant and .assume (.requires still missing and so is proc type compatibility checking
* drnim: .requires checking implemented
* drnim: implemented .ensures properly
* more impressive test involving min()
* drnim: check for proc type compatibility and base method compatibility wrt .requires and .ensures
* testament: support for 'pattern <directory>
* koch: uses new <directory> feature of testament
* drnim: added tiny musings about 'old'
* Make testament work with old SSL versions
* koch: add support for 'koch drnim -d:release'
* drnim: preparations for the param.old notation
2020-03-31 22:54:48 +02:00
cooldome
c70b3952ff
fixes #13810 ( #13821 )
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-03-31 21:15:06 +02:00
Andreas Rumpf
9134bb9cfb
macros for proc types, macros for types ( #13778 )
...
* new minor feature: macros for proc types, to be documented
* Finished the implementation and added tests
* [skip ci] Describe the new custom pragmas in the manual and the changelog
Co-authored-by: Zahary Karadjov <zahary@gmail.com >
2020-03-31 21:14:05 +02:00
Timothee Cour
19cab9fa51
stacktraces can now show custom runtime msgs per frame ( #13351 )
...
* stacktraces can now show custom runtime msgs
* improve tests/stdlib/tstackframes.nim
* fix test for --gc:arc
* test --stacktraceMsgs:on and --stacktraceMsgs:off
* --stacktracemsgs:off by default
2020-03-30 13:45:32 +02:00
Andreas Rumpf
2a278f6eba
'.push raises: []' now also affects proc types ( #13776 )
...
* '.push raises: []' now also affects proc types
* fixes the regression
* less disruptive bugfix
* another attempt
2020-03-29 22:00:18 +02:00
Timothee Cour
cfa1a827dc
fix #13730 ( #13787 )
2020-03-28 08:51:16 +01:00