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
Andreas Rumpf
0a49fe5fad
fixes #13763 ( #13777 )
2020-03-27 12:14:57 +01:00
cooldome
289b31ee75
make nim_temp compile with --gc:arc --sinkInference:off ( #13769 )
...
* make nim_temp compiler with --gc:arc
* trigger build
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-03-26 20:15:38 +01:00
Clyybber
2925a47ae6
Fix vm.nim for --gc:arc ( #13741 )
...
* koch boot --gc:arc now passes the nim stage
... but generates invalid C code
* Move it closer to where its used
* Try something else
* Poor mans var
* Use UncheckedArray instead
2020-03-26 15:18:45 +00:00
zah
e50441ab33
Fix typeSym.getImpl for ref types ( #13752 )
...
* Fix typeSym.getImpl for ref types
* Fix a codegen issue affecting the test suite of nim-beacon-chain
* Fix tests/stdlib/tjsonmacro
To understand the fix better it may help to take a look
at the history of the replaced code.
The nil check that is removed in this commit was introduced
in another fix that failed to identify the root cause of the
issue - namely that we allow an object type to exist for which
no ast is present:
https://github.com/nim-lang/Nim/pull/9601/files
The original intention of the code is more obvious here:
https://github.com/nim-lang/Nim/pull/9538/files
2020-03-26 09:26:19 +01:00
cooldome
764a81ca25
Continue bool conversion fixing ( #13751 )
...
* continue fixing #13744
* improve style
* improve test
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-03-25 21:36:22 +01:00
Miran
e1e062197e
bump copyright year to 2020 ( #13753 )
2020-03-25 21:28:16 +01:00
cooldome
182d3c16e3
fixes #13744 ( #13749 )
...
* fixes #13744
* improve style
Co-authored-by: cooldome <ariabushenko@gmail.ru >
2020-03-25 13:44:52 +00:00
Timothee Cour
46c827be6a
fix #13737 ( #13738 )
2020-03-24 10:14:49 +01:00
Andreas Rumpf
fc5dd11b3d
fixes #13722 ( #13729 )
...
* fixes #13722
* better fix
2020-03-23 15:47:10 +01:00
Araq
bcccb74429
trees.nim: compare floating points by their bitpatterns because NaN comparisions are always false (WORST design in the history of computing!)
2020-03-23 12:06:33 +01:00
Araq
ee440df02d
disable even more of scope based destruction handling; fixes #13709
2020-03-23 12:05:59 +01:00
Araq
28a755dc80
trees.nim: compare floating points by their bitpatterns because NaN comparisions are always false (WORST design in the history of computing!)
2020-03-23 12:05:59 +01:00
Timothee Cour
913bc95964
new syntax for lvalue references: var b {.byaddr.} = expr ( #13508 )
...
* new syntax for lvalue references: `var b {.byaddr.} = expr`
* on type mismatch, `???(0, 0)` not shown anymore
* * compiler now lowers `var a: {.foo.}: MyType = expr` to foo(a, MyType, expr)
* new pragmas.byaddr defined in pure library code exploiting this lowering
* skip `template foo() {.pragma.}`
2020-03-23 11:15:45 +01:00
Andreas Rumpf
7ee08b8cf6
Revert "fix #13417 ( #13712 )" ( #13728 )
...
This reverts commit a5f02cac85 .
2020-03-23 09:57:17 +01:00
Araq
ef2566218e
better error messages for Nim's effect system
2020-03-22 20:45:03 +01:00
Arne Döring
a5f02cac85
fix #13417 ( #13712 )
...
* fix #13417
* add test
2020-03-22 20:03:51 +01:00
Arne Döring
64ffa17f0f
fixes #13715 ( #13716 )
...
* fixes #13715
* fix test
2020-03-22 20:01:01 +01:00
Araq
474dd98125
typo
2020-03-22 19:45:02 +01:00
Arne Döring
047d3af6da
fix #13720 ( #13721 )
2020-03-22 19:35:55 +01:00
cooldome
586ebb090b
fixes #13708 ( #13711 )
...
* fixes #13708
* differentiate between arc and rest of GC
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-03-21 07:12:10 +01:00
Timothee Cour
1d665adecd
[RFC] 'walkDir' now has a new 'checkDir' flag, to mimic behaviour of other languages ( #13642 )
...
Co-authored-by: narimiran
2020-03-20 16:39:55 +01:00
Andreas Rumpf
253e1b9e96
fixes #13698 ( #13706 )
2020-03-20 14:35:45 +01:00
Araq
12ab5059a0
make 'nim check' more robust for illdefined constants
2020-03-20 10:46:40 +01:00
Timothee Cour
dd362ab4c0
fix #13538 sigmatch errors are now sorted ( #13701 )
...
* fix #13538 sigmatch now sorted and has reliable order
* re-enable tests that were disabled because of that bug
* fix remaining tests and un-disable 2 other tests that were affected by this bug
2020-03-20 09:28:03 +01:00
Andreas Rumpf
35fb38629f
cycle breaker ( #13593 )
...
* cycle breaking as an alternative to cycle detection
2020-03-19 22:58:16 +01:00
Juan Carlos
705e283fef
Clean 1 old deprecated empty file ( #13696 )
2020-03-19 20:40:52 +01:00
cooldome
b3176b8817
Attempt to finish off araq cpp exceptions ( #13695 )
...
* config update
* disable a questionable test
* remove c++ exception handling IDs, new impl doesn't require it anymore
* C++ based exceptions finally work
* fixes bootstrapping problem in C++ mode
* teach GCC it's 2020 now
* more bugfixes for C++ based exception handling
* apply cooldome's patch
* another attempt to enable C++11
* bug fix
Co-authored-by: Araq <rumpf_a@web.de >
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-03-19 20:38:25 +01:00
Andreas Rumpf
034dad8e32
fixes #13691 ( #13694 )
2020-03-19 12:57:45 +01:00
Timothee Cour
1f2042411a
fix #13412 nim now recompiles for stdin input; SuccessX now configurable; can show whether it recompiled ( #13506 )
...
* fix #13412 nim now recompiles for stdin input; SuccessX now indicates whether it recompiled
2020-03-19 10:39:18 +01:00
Andreas Rumpf
ba6e7c6365
added a switch -d:nimEmulateOverflowChecks for broken or old GCC versions ( #13692 )
2020-03-19 09:56:30 +01:00
Andreas Rumpf
15ba765ebd
enable --tlsEmulation:on for --gc:arc ( #13685 )
...
* enable --tlsEmulation:on for --gc:arc
* make -d:useMalloc work with --gc:arc --threads:on
2020-03-18 23:52:49 +01:00
Andreas Rumpf
fb641483f0
arc optimizations ( #13325 )
...
* scope based destructors
* handle 'or' and 'and' expressions properly, see the new test arc/tcontrolflow.nim
* make this branch mergable, logic is disabled for now
2020-03-18 16:57:34 +01:00
Andreas Rumpf
3f29911a94
new feature: --staticBoundChecks:on to enforce static array index checking ( #10965 )
2020-03-18 14:25:10 +01:00
Timothee Cour
ed263e174e
fix #13524 astToStr now works inside generics ( #13681 )
2020-03-18 13:43:32 +01:00
Andreas Rumpf
a87062393a
fixes #13622 ( #13679 )
2020-03-18 13:42:33 +01:00
Andreas Rumpf
5f6997794e
fixes #13671 [backport] ( #13678 )
2020-03-18 10:37:36 +01:00
Jasper Jenkins
51bd442b88
fix when statements in inheritable generic objects ( #13667 ) [backport]
2020-03-17 23:44:32 +01:00
Andreas Rumpf
fe7b1dfb2a
rewritten goto based exception handling; much cleaner implementation;… ( #13677 )
...
* rewritten goto based exception handling; much cleaner implementation; fixes #13668
2020-03-17 23:18:43 +01:00
cooldome
35d14095ed
Fixes #13659 ( #13674 )
...
* fixes #13659
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-03-17 16:36:38 +01:00
Timothee Cour
af9c852701
fix nim doc subdir/foo which was generating broken css; + other fixes ( #13647 )
...
* docgen: minor refactoring via docOutDir
* fix css for `nim doc subdir/foo` without --outdir nor -o
* tcompilesetting.nim: keep `git status` clean
* re-enable pkg nimgame2 that got fixed upstream
2020-03-17 13:44:37 +01:00
Jasper Jenkins
6a23452bf4
fix sets of scoped imported enums ( #13666 )
2020-03-17 10:47:27 +01:00
Araq
d375120c42
rename sfAlwaysReturn to sfNeverRaises
2020-03-16 19:05:33 +01:00
Andreas Rumpf
5ba5b5202a
fixes #13661 ( #13664 ) [backport]
2020-03-16 18:40:17 +01:00
Andy Davidoff
0f672378ab
fix .deprecated. object typedef crash ( #13643 )
...
* fix .deprecated. object typedef crash
* fixup a test that i don't understand
* disable the test rather than debug ci
2020-03-16 15:08:38 +01:00
Araq
a102eb5ef6
fixes #13646
2020-03-16 14:55:58 +01:00
Araq
3a6b470412
minor code style change
2020-03-16 14:55:58 +01:00
Araq
7205c3ebe2
minor code style changes
2020-03-16 14:55:58 +01:00