Commit graph

10,663 commits

Author SHA1 Message Date
Rokas Kupstys
9a754156d7 Added support for exceptions in coroutines and added exception test
Fix bug where first coroutine ending would terminate main loop
2017-02-20 17:24:19 +02:00
Rokas Kupstys
373e667dbc Coroutine rework.
* ucontext backend (default on unix)
* setjmp backend
* fibers backend (default and required on windows)
* Fixed coroutine loop timing issues
* Fixed saving of xmm registers on x64 windows
* Fixed alignment issues
* Updated coroutine sample with cooperative fibonacci calculation.
* Disable glibc security features only when platform jump functions are used
* Removed dependency on fasm.
    * Using fiber api on windows.
    * Other platforms and compilers  will use built in assembler and .S files or API provided by platform libc.
* Replaced stack switching procs with `coroExecWithStack()` which never returns. This makes compiler always generate proper code.
2017-02-20 17:24:19 +02:00
Rokas Kupstys
a3b8bf300d Added fiber API to winlean.nim 2017-02-20 17:24:19 +02:00
Andreas Rumpf
2d28a626f2 nimsuggest: works with VS-Plugin again 2017-02-20 11:51:17 +01:00
Andreas Rumpf
1ec96d7353 nimsuggest: better logging for EPC mode 2017-02-20 09:54:20 +01:00
Fabian Keller
ce4587d7b7 Enabled explicitly unknown lock levels (#5409)
* enabled explicitly unknown lock levels
* allowing "unknown" as locks pragma
* added test case for locks pragma
* updated docs on locks pragma
2017-02-20 09:31:52 +01:00
Andreas Rumpf
2df5a6f863 nimsuggest: make all tests green 2017-02-20 06:18:59 +01:00
Andreas Rumpf
2adb4ce9eb nimsuggest supports EPC protocol again; tester can test the EPC protocol 2017-02-19 21:29:41 +01:00
Araq
363b1c0a41 travis: first attempt to enable OSX tests 2017-02-17 19:08:08 +01:00
Araq
9303a02d6b Merge branch 'devel' of github.com:nim-lang/Nim into devel 2017-02-17 18:04:09 +01:00
Araq
8f426b974a new feature: .used pragma to suppress declared-but-not-used warning 2017-02-17 18:03:56 +01:00
Araq
dd8cbf5fca fixes #5404 2017-02-17 17:44:52 +01:00
Andreas Rumpf
ba29ca0c63 Merge branch 'devel' into faster-nimsuggest 2017-02-17 10:48:01 +01:00
fenekku
e9767d8809 Fix reverse on empty openArray (#5407)
Reversing an empty `openArray` would raise a RangeError. For instance for `a: seq[int] = @[]`, we have `a.high` return `-1` but `-1` is not a `Natural`. Leaving the array as-is is the expected behaviour.
2017-02-17 08:26:49 +01:00
Araq
5620e08563 minor documentation improvements 2017-02-17 00:00:39 +01:00
Araq
bdd9f971e7 update code from a time when unsigned didn't exist 2017-02-16 23:20:01 +01:00
Araq
9534a5d632 fixes #5391 2017-02-16 22:59:07 +01:00
Araq
5d4ed1117d distros.nim: brew usually doesn't require 'sudo' 2017-02-16 22:53:32 +01:00
Araq
804b0ff99c fixes #5400 2017-02-16 22:50:21 +01:00
Araq
0440aea691 fixes #5405 2017-02-16 21:30:54 +01:00
Araq
61181702d5 fixes #5399 2017-02-16 11:35:15 +01:00
Araq
c9dd6908ae resolved conflict 2017-02-16 11:18:10 +01:00
Araq
6499462303 fixes #5402 2017-02-16 11:15:43 +01:00
Araq
71026cec6e fixes #5383 2017-02-16 11:15:43 +01:00
Araq
8de6c39f87 compiler debug proc: also output node flags 2017-02-16 11:15:43 +01:00
Araq
01c785e0aa make tests green again 2017-02-16 10:39:40 +01:00
Araq
aebe9d7d13 make more tests green 2017-02-16 01:43:12 +01:00
Araq
97e26967f1 fixes #5383 2017-02-16 00:43:14 +01:00
araq
5b5bd3811b koch: don't build downloader tool, it is not ready 2017-02-15 22:10:31 +01:00
araq
1811e51ff5 fixes #5392 2017-02-15 22:09:16 +01:00
Araq
95abf30fae compiler debug proc: also output node flags 2017-02-15 15:35:15 +01:00
Eugene Kabanov
55782205a4 Fix appveyor.yml shows green, when failed. (#5396) 2017-02-15 13:18:45 +01:00
Andreas Rumpf
1189ae9b99 renamed writelnHook to writelnToChannel 2017-02-15 12:26:53 +01:00
Andreas Rumpf
20ccf417f6 get rid of debug output 2017-02-15 12:26:28 +01:00
Dominik Picheta
4c683e90ec Fix rst parse problem in version 0.16.2 news. 2017-02-14 21:09:49 +01:00
Dominik Picheta
4a8257d992 Update bountysource sponsors. 2017-02-14 21:07:28 +01:00
Araq
57874ed9b8 C++ codegen: emit 'extern C' for importc'ed functions that we declare a prototype for 2017-02-14 14:39:53 +01:00
Araq
f0aef9f4e2 compile external .c files with the C compiler, not with C++; refs #5357 2017-02-14 14:39:17 +01:00
Andreas Rumpf
6cb0e5ad68 remove debug output 2017-02-14 12:51:38 +01:00
Andreas Rumpf
bcecbc380f make tests green again; disable periodic refresh for now 2017-02-14 12:49:38 +01:00
Dominik Picheta
a336bf2395 Fixes parseHeader("foo:") != ("foo", @[""]). Refs #5344. 2017-02-13 21:14:29 +01:00
Ruslan Mustakov
92665e6e9a Add hash proc for cstrings (#5386) 2017-02-13 13:38:30 +01:00
Andreas Rumpf
9f142e199d nimsuggest uses multithreading and full project recompiles 2017-02-13 13:37:50 +01:00
Anatoly Galiulin
6fa1dba515 Add `tearDownForeignThreadGc` function (#5369) 2017-02-13 13:37:20 +01:00
Anatoly Galiulin
279e4b0451 Fixes #5382 2017-02-13 13:35:40 +01:00
flyx
ac9c2126e6 Added BiggestUInt (#5378) 2017-02-13 11:20:07 +01:00
ionel anton
636b977457 Column details for postgres. (#5380) 2017-02-13 09:09:43 +01:00
Araq
667acb06a5 downloader.nim: use new downloadFile proc 2017-02-12 19:39:23 +01:00
Federico Ceratto
0d1aa9225a Make walkDirRec docstring more clear (#5377) 2017-02-12 16:02:50 +01:00
Dominik Picheta
b053ded266 Fixes tests. 2017-02-11 16:49:02 +01:00