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
cooldome
613ea6e85e
fixes #12747 [backport] ( #13651 )
...
* fixes #12747
* fix tests
* improve code style
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-03-16 13:40:40 +01:00
Timothee Cour
6e0c06f50e
fix #13218 : avoid some irrelevant warnings for nim doc,rst2html,--app:lib, + other fixes ( #13550 )
...
* fix #13218 : avoid some irrelevant warnings for nim doc,rst2html
* suppress warnRedefinitionOfLabel for nim doc
* lots of fixes for UnusedImport warnings
2020-03-13 20:42:41 +01:00
Andreas Rumpf
a6682de004
catchable defects ( #13626 )
...
* allow defects to be caught even for --exceptions:goto (WIP)
* implemented the new --panics:on|off switch; refs https://github.com/nim-lang/RFCs/issues/180
* new implementation for integer overflow checking
* produce a warning if a user-defined exception type inherits from Exception directly
* applied Timothee's suggestions; improved the documentation and replace the term 'checked runtime check' by 'panic'
* fixes #13627
* don't inherit from Exception directly
2020-03-12 23:44:33 +01:00
Miran
14b2354b7d
rename lenTuple and lenVarargs ( #13639 )
...
* rename 'lenTuple' to 'tupleLen'
Rationale:
`lenTuple` is a tuple consisting of lengths (e.g. `(1, 5, 0)`),
`tupleLen` is a length of a tuple (e.g. `tupleLen((1, 5, 0) == 3`)
* rename 'lenVarargs' to 'varargsLen'
The same rationale as a previous commit. Consistency.
2020-03-12 20:07:02 +01:00
Timothee Cour
60a3e036f6
fix #13633 fix koch boot crashing regression ( #13635 )
2020-03-12 11:39:10 +01:00
Clyybber
2bb0ada797
Amend fix for #13633 ( #13636 )
2020-03-12 11:20:08 +01:00
Clyybber
d84c4bba9b
Fix #13633
2020-03-12 11:01:03 +01:00
genotrance
bbc231f8e0
Fix #12676 ( #13634 )
2020-03-12 08:53:11 +01:00
Clyybber
6b3098c378
Make listCmd honor hint:cc:off ( #13606 )
...
* Make listCmd honor hint:cc:off
* Tiny cleanup
* Tiny tiny cleanup
* VERY IMPORTANT: --hint:cc:on will overwrite --verbosity:0 :p
* Tiny cleanup
* Stupid
* Move displayProgressCC to where its required
* Tiny cleanup
2020-03-11 23:04:33 +01:00