Commit Graph

15171 Commits

Author SHA1 Message Date
Arne Döring
abb05ab645 fewer ropes (#11037) 2019-04-19 09:05:31 +02:00
Arne Döring
a55817f9ac Fix varargs int32 (#11054)
* fixes #10999
* adds a test for #10999
2019-04-18 20:53:57 +02:00
Arne Döring
ed6160ad6d callsite lineinfe for stackTrace template (#10785) 2019-04-18 14:02:10 +02:00
Araq
750f50b6c0 destructors: internal compiler refactoring 2019-04-18 00:53:02 +02:00
Araq
fb3681b425 make the CIs happy 2019-04-17 21:35:50 +02:00
Araq
7640a230fc fixes #11050 2019-04-17 17:26:59 +02:00
Araq
850e90ac30 DFA: We are not allowed to take ownership of parameters 2019-04-17 17:18:47 +02:00
Araq
5bdab044f5 fixes #11048 2019-04-17 13:22:22 +02:00
Christopher Dunn
14fc7437c3 Improve tables docs for del/take (#11030)
* Continuation of b40a637f
* https://forum.nim-lang.org/t/4789
2019-04-17 11:57:32 +02:00
cooldome
7d8af25d58 revert parser stmtListExpr (#11007)
* Revert "Support for stmtListExpr in parser after major keywords. Scaled down version. (#10852)"

This reverts commit 862897dc0f.

* redo fix for #4035

* render stmtlistExpr using semicolon

* Revert "render stmtlistExpr using semicolon"

This reverts commit cafb78b8d5.

* revert test
2019-04-17 11:55:41 +02:00
Miran
43832f8e57 remove shadow warning, fixes #10732 (#11039) 2019-04-17 11:54:51 +02:00
Araq
d8a8c8806f fixes #11014 2019-04-17 00:15:40 +02:00
Araq
ce024a73bf make move-analysis smarter; see tuse_ownedref_after_move test case 2019-04-16 10:35:43 +02:00
Araq
a520eb7766 injectdestructors.nim: code cleanups 2019-04-16 10:35:43 +02:00
Araq
0e157de3a0 astalgo: use the code style that the other lines use; make debug() less verbose 2019-04-16 10:35:43 +02:00
Araq
045e026d0e dfa.nim: track object/tuple field accesses more precisely; sink(o.x); sink(o.y) needs to compile; activate the tuple unpacking transf.nim bugfix 2019-04-16 10:35:43 +02:00
Andy Davidoff
01f09567c4 faster CountTable sort(), optional SortOrder (#11010)
* use existing sort for CountTable, and
add SortOrder options to CountTable, OrderedTable sort(s)

* add some tests, runnables, etc.

* fix runnable imports
2019-04-16 09:42:54 +02:00
cooldome
374a85bb9c Review of vcc command line arguments (#11003)
* fixes #11000

* trigger commit

* Trigger build
2019-04-16 08:47:31 +02:00
narimiran
41ee3538df disable testing of nimly package 2019-04-15 18:53:25 +02:00
Clyybber
2f56dd6b2b Extend the fix for #11018 to strings (#11031)
* Extend the fix for #11018 to strings

* Fix testcase
2019-04-15 17:06:31 +02:00
Jasper Jenkins
a68c5662f2 Add len check for newIfStmt to avoid segfault (#11032) 2019-04-15 17:02:25 +02:00
Andy Davidoff
e2848ccd2b minor capitalization typo in manual (#11028) [ci skip] 2019-04-15 08:44:45 +02:00
Arne Döring
107905919e $ command in gdb now works (#10956) 2019-04-15 08:25:21 +02:00
Araq
a517a9985b fixes another regression; the behaviour of 'array' formatting was changed 2019-04-15 08:20:28 +02:00
Araq
59ccaa43c7 fixes #11012 2019-04-15 08:20:28 +02:00
Clyybber
499fa3f3dc Fixes #11018 (#11019) 2019-04-14 23:34:19 +02:00
Andreas Rumpf
0e6eb7d483 make strscans module work with --newruntime 2019-04-14 23:13:49 +02:00
Andy Davidoff
485d5448fa render urls correctly (#11022) 2019-04-14 08:20:23 +02:00
cooldome
fdc3f54f97 fix reraise (#11017) 2019-04-13 10:50:30 +02:00
Araq
e33266ded1 make koch.nim compile with --newruntime. Again. 2019-04-12 19:59:04 +02:00
Araq
0e57b4cf64 we do not support -d:useWinAnsi switch anymore 2019-04-12 15:17:47 +02:00
Araq
8201db81b2 added system.disarm (experimental) 2019-04-12 13:28:13 +02:00
Araq
3ceb258ebf fixes #11005 2019-04-12 13:28:13 +02:00
Araq
572735bbfa fixes #11004 2019-04-12 13:28:12 +02:00
cooldome
041d15392a Compiler plugin for implementing incremental computation in user space (#10819)
This plugin provides essential building block for implementing incremental computations in your programs. The idea behind incremental computations is that if you do the same calculation multiple times but with slightly different inputs you don't have to recompute everything from scratch. Also you don't want to adopt special algorithms either, you would like to write your code in standard from scratch manner and get incrementality for free when it is possible.

The plugin computes the digest of the proc bodies, recursively hashing all called procs as well . Such digest with the digest of the argument values gives a good "name" for the result. Terminology loosely follows paper "Incremental Computation with Names" link below. It works well if you have no side effects in your computations. If you have global state in your computations then you will need problem specific workarounds to represent global state in set of "names" . SideEffect tracking in Nim also useful in this topic.

Classical examples:

Dashboard with ticking data. New data arrives non stop and you would like to update the dashboard recomputing only changed outputs.
Excel spreadsheet where user changes one cell and you would like to recompute all cells that are affected by the change, but do not want to recompute every cell in the spreadsheet.
2019-04-11 23:09:11 +02:00
cooldome
de02fd0b89 fixes #10765 (#10993) [backport] 2019-04-11 13:51:51 +02:00
Araq
a2ad069769 preparations for --newruntime owned refs/callbacks 2019-04-11 12:42:51 +02:00
Araq
1c0b1e9d05 sem'check understands 'owned procs' 2019-04-11 12:35:49 +02:00
Araq
8fb04b320a sigmatch: ensure 'owned proc' works with system.isNil 2019-04-11 12:35:49 +02:00
Arne Döring
1da98b1636 Less ropes (#10979)
* convert ropecg to a macro
* fewer intermediate ropes
2019-04-11 09:48:10 +02:00
Miran
9f94199d0c random: works for slices and enums, fixes #7698 (#10998) 2019-04-11 08:38:18 +02:00
Araq
2846156e13 newruntime: raising an exception works but currently leaks memory because currentException global is not an 'owned' ref 2019-04-10 20:34:00 +02:00
Araq
cb4e04d88e enable more tests 2019-04-10 20:34:00 +02:00
c-blake
1394978347 Make secureHash accept any openArray[char], not only string. (#10988)
* Make `secureHash` accept any `openArray[char]`, not only `string`.

* Put in a changelog entry as per Araq request.
2019-04-10 17:48:22 +02:00
Miran
1494d88fa2 rst: parse brackets individually, fixes #10475 (#10997) 2019-04-10 15:55:57 +02:00
Miran
2608bc369e json: add '\v' support, fixes #10541 (#10987) 2019-04-10 15:54:49 +02:00
Araq
bc50795d9c enable most tnewruntime_strutils tests 2019-04-10 15:49:04 +02:00
Araq
26fc7d465a strutils.nim: fixes the indentation of formatEng 2019-04-10 15:44:34 +02:00
Araq
a34ce2714a newruntime: fixes another bug 2019-04-10 13:53:47 +02:00
Araq
28b4db4470 be consistent, strings have destructors for --gc:destructors 2019-04-10 11:04:38 +02:00