Andreas Rumpf
034dad8e32
fixes #13691 ( #13694 )
2020-03-19 12:57:45 +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
Andreas Rumpf
5ba5b5202a
fixes #13661 ( #13664 ) [backport]
2020-03-16 18:40:17 +01:00
Araq
a102eb5ef6
fixes #13646
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
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
Araq
60f8fdcdab
fixes #13240
2020-03-11 09:26:57 +01:00
Araq
861a5340fe
fixes #13519
2020-03-11 09:26:57 +01:00
Arne Döring
f95eef99a9
add expectIdent to macros ( #12778 )
...
* add expectIdent to macros
* apply feedback
* Update lib/core/macros.nim
Co-Authored-By: Clyybber <darkmine956@gmail.com >
* Update texpectIdent2.nim
* Update texpectIdent1.nim
Co-authored-by: Clyybber <darkmine956@gmail.com >
Co-authored-by: Andreas Rumpf <rumpf_a@web.de >
2020-03-11 08:27:31 +01:00
Arne Döring
2f557652d4
fix operators containing percent for VM usage ( #13536 )
...
* fixes #13513
* merge tarithmetics in tarithm
2020-03-11 01:01:25 +01:00
Andreas Rumpf
090ba1e3a3
fixes #13436 ( #13615 )
2020-03-10 00:52:46 +01:00
Andreas Rumpf
ec5cef13cf
fixes #13599 ( #13614 )
2020-03-09 18:12:52 +01:00
Andreas Rumpf
63af8ae53c
fixes #13596 ( #13612 )
2020-03-09 15:32:38 +01:00
Andrea Ferretti
7ae0811818
Fix #13573 and #13574 ( #13575 )
...
* Fix https://github.com/nim-lang/Nim/issues/13573 and https://github.com/nim-lang/Nim/issues/13574
* Restored asynchttpserver
2020-03-06 18:38:56 +00:00
Timothee Cour
b80d293a3f
close #12704 by adding a test (tuple codegen error) ( #13592 )
...
* close #12704 by adding a test
* move test to tests/metatype/ttypedesc2.nim
2020-03-06 08:55:53 +01:00
Andreas Rumpf
83e715c5b6
fixes #5170 ( #13589 )
...
* fixes #5170
* make tests green
2020-03-05 16:02:34 +01:00
Andreas Rumpf
62c113ebc7
fix #13579 joinPath("/foo/", "../a") is now /a ( #13586 )
2020-03-05 15:31:22 +01:00
Andreas Rumpf
a0eca75182
sink parameter inference for types that have destructors ( #13544 )
...
* ensure capitalize doesn't take an inferred sink parameter
* sink parameter inference: first version, for now disabled. Changed that sink parameters can be consumed multiple times in order to adhere to our spec.
* sink inference can now be disabled with .nosinks; sometimes for proc type interop this is required
* fixes yet another critical DFA bug
* better implementation that also understands if expressions etc
* document sink parameter inference and allow for global disabling
2020-03-04 14:28:53 +01:00
Andreas Rumpf
614fb7567c
std/compilesettings implementation ( #13584 )
...
* Implement compileSetting() and compileSettingSeq()
* Change from magic to vmop
* better design for querySetting
Co-authored-by: genotrance <dev@genotrance.com >
2020-03-04 13:46:42 +01:00
Miran
9961d1f67d
fix #13531 by adding a test ( #13581 )
2020-03-04 10:25:59 +01:00
Timothee Cour
451b724c40
make genericParams support static[T] generic params ( #13433 )
...
* make genericParams support static[T] generic params
* WrapStatic => StaticParam
2020-03-02 18:05:14 +01:00
Timothee Cour
22d1ba4be7
fixes #13543 and added times.isLeapDay ( #13547 )
2020-03-01 21:56:20 +01:00
cooldome
c79df2fb6a
EndsInNoReturn in expressions extension, fixes #13490 ( #13520 )
...
* fix #13490
2020-02-28 09:55:06 +00:00
Timothee Cour
73f5f1e80c
save another 33s of CI for tests/gc/gcleak.nim
2020-02-27 13:19:31 +01:00
Timothee Cour
fdc5925cbd
CI tests run faster: save 120s in azure machines, 335s on local OSX
2020-02-27 13:19:31 +01:00
Timothee Cour
9b8c9abead
revert changes to tests/gc/gcleak2.nim
2020-02-27 13:19:31 +01:00
Timothee Cour
81b0718a8f
make CI tests faster + more precise
2020-02-27 13:19:31 +01:00
Timothee Cour
6a0e87eb38
cleanup Ordinal ( #13501 )
2020-02-27 10:43:13 +01:00
Timothee Cour
42dad3a836
tables/sharedtables/intsets/etc: fix #13496 , #13504 , #13505 ; add lots of tests ( #13498 ) [backport]
...
* fix #13496 handle tombstones
* add test
* more tests
* fix #13504 ; add SharedTable tests
* fix #https://github.com/nim-lang/Nim/issues/13505 intsets.missingOrExcl silently gave wrong results sometimes
* add test for tintsets
2020-02-26 22:07:09 +01:00
Timothee Cour
0c312ad898
fix #13455 ; joinPath(a,b) now honors trailing slashes in b (or a if b = "") ( #13467 )
...
* fix #13455 ; joinPath(a,b) now honors trailing slashes in b (or a if b = "")
* fix test windows
2020-02-26 11:25:27 +01:00
Timothee Cour
db540a0223
fix #13449 texitcode flaky on windows ( #13487 )
2020-02-25 17:49:16 +01:00
narimiran
c444ab9a54
make devel green again: tnetdial still doesn't work on Travis
2020-02-25 08:46:08 +01:00
Andrey Makarov
3dad130034
fix 3 minor bugs in joinPath (see #13455 ) ( #13462 ) [backport]
2020-02-23 20:22:46 +01:00
Timothee Cour
a43583f9c8
relativePath("foo", "foo") is now ".", not "" ( #13452 )
2020-02-22 09:07:53 +01:00
Andreas Rumpf
0d219d2c67
fixes #13457 ( #13458 )
2020-02-21 21:06:41 +01:00
Clyybber
87dd19453b
Remove testutils ( #13435 ) [backport]
2020-02-19 23:02:08 +01:00
Timothee Cour
8c22518d67
[backport] pseudorandom probing for hash collision ( #13418 )
2020-02-19 17:19:55 +01:00
Timothee Cour
273a93581f
fix incorrect lenTuple implementation ( #13423 )
2020-02-19 11:07:17 +01:00
Clyybber
f3eb0a5970
capture macro now accepts variables of different types ( #13356 )
...
* Capture macro can now accept variables of different types
* Add test
* Update examples
* Use let instead of var
2020-02-15 19:53:40 +01:00
cooldome
7dd787b8a3
fixes #13368 ( #13397 )
2020-02-14 10:13:55 +01:00