Zahary Karadjov
b0d85b0adf
Backwards-compatible support for keyword arguments in the command syntax
2018-05-07 09:37:49 +02:00
Zahary Karadjov
e678a4285d
Bugfix: Allow matching on nkExprEqExpr against varargs[untyped]
...
This enables macros accepting arbitrary keyword arguments:
log("foo", prop1 = "bar", prop2 = "baz")
As an added bonus, simple templates with varargs arguments can now
forward their params to procs accepting keyword arguments.
2018-05-07 09:37:49 +02:00
Zahary Karadjov
2b8bf8fc4a
A motivating example for the new bindSym behavior.
...
The example is a proof-of-concept logging library, allowing you to define
lexically-scoped environments where certain logging attributes are applied
automatically to all logging statements.
fixes tmacro1 (use of `bindSym` inside static blocks)
2018-05-07 09:37:49 +02:00
Zahary Karadjov
bdcb729597
Better support for treating templates and macros as symbols.
...
This allows you to pass a template or a macro to another macro
which can then inspect the implementation of the former template/macro
using `getImpl`.
Since templates can be freely redefined, this allows you to treat
their symbols as compile-time variables that have lexical scope.
A motivating PoC example for a logging library taking advantage of
this will be provided in the next commit.
Implementation details:
* The name of a template or a macro will be consider a symbol if
the template/macro requires parameters
* For parameterless templates/macros, you can use `bindSym`, which
was extended to also work outside of compile-time procs.
2018-05-07 09:37:49 +02:00
alaviss
7897026e57
pretty, prettybase: simplify relative paths ( #7779 )
...
This allows nimble to be built with compiler as a nimble package
2018-05-07 07:30:13 +02:00
Flaviu Tamas
b132965330
Allow using CC environment variable with csources ( #7754 )
2018-05-06 11:23:08 +02:00
Florent
d3ad467022
Fixes #7764 ( #7767 )
...
* Fixes #7764
* Change KEY_RECORD_EVENT filter
* Update terminal.nim
* Revert changes and modify readPasswordFromStdIn
2018-05-06 10:56:40 +02:00
alaviss
26d89fa09c
options: use isSome ( #7782 )
...
Fixes #7780
2018-05-06 10:55:19 +02:00
Andreas Rumpf
d8dd43e500
fixes #7757
2018-05-06 10:50:04 +02:00
alaviss
97056fbb9b
fixes #7774 ( #7783 )
2018-05-06 10:34:22 +02:00
Andreas Rumpf
700a2e125b
make the tester compile without warnings
2018-05-06 09:00:55 +02:00
Andreas Rumpf
6e8d5790c8
pegs: fixes another null accessing bug
2018-05-06 09:00:41 +02:00
Andreas Rumpf
88cf6573e0
fixes #7743
2018-05-06 08:59:39 +02:00
Andreas Rumpf
cd0985df06
update the changelog
2018-05-06 08:17:32 +02:00
Andreas Rumpf
272bbad784
Merge branch 'devel' into araq-parser-fixes
2018-05-06 08:03:29 +02:00
Andreas Rumpf
d8fde9daba
make tests green
2018-05-05 21:45:07 +02:00
Araq
bbb0fd4eb7
remove deprecated stuff from the stdlib; introduce better deprecation warnings
2018-05-05 21:45:07 +02:00
Andreas Rumpf
dfc17e5f8e
make Nimble not crash after the refactoring
2018-05-05 21:08:45 +02:00
Andreas Rumpf
b7116a28ee
compiler refactoring, pass config around explicitly
2018-05-05 18:47:29 +02:00
Andreas Rumpf
eef12654bd
compiler/msgs.nim: minor code cleanup
2018-05-05 15:07:13 +02:00
Andreas Rumpf
1aa359febb
warn about inconsistent spacing around binary operators; fixes #7582
2018-05-05 14:58:33 +02:00
Andreas Rumpf
805402b294
fixes #7582
2018-05-05 14:17:31 +02:00
Dominik Picheta
608017801d
Fixes crash in httpclient due to new string indexing rules.
2018-05-04 22:26:16 +01:00
Arne Döring
6f4ca3f276
test binarySearch, fix for search in empty. ( #7769 )
2018-05-04 15:29:21 +02:00
Araq
7d78707e36
fixes #7766
2018-05-04 08:11:13 +02:00
Emery Hemingway
cda591a42f
Disable setTerminate when noCppExceptions is defined ( #7751 )
2018-05-04 07:40:40 +02:00
Dmitry Atamanov
27631b1112
Fix filter_tmpl errors ( #7763 )
2018-05-04 07:39:05 +02:00
notTito
8f7bd6cf5c
Replace factorial function with a compile time one ( #7276 )
...
* Replace factorial function with a compile time one
* Fix the indentation
* Update
2018-05-04 07:37:57 +02:00
Arne Döring
f94fafff9b
Deprecate smart binary search ( #7745 )
...
* deprecate smartBinarySearch
* changelog entry
2018-05-03 17:23:13 +02:00
Dominik Picheta
9735bb46be
Merge pull request #7760 from yglukhov/fix-7738
...
Fixes #7738
2018-05-03 16:19:32 +01:00
Yuriy Glukhov
9955ee0a9b
Fixes #7738
2018-05-03 18:15:31 +03:00
Dominik Picheta
f7f69b1abb
Merge pull request #7624 from skilchen/fix-issue7620
...
there is no hour 0 in am/pm time (see #7620 )
2018-05-03 16:07:27 +01:00
Dominik Picheta
3829d9081c
Merge pull request #7694 from SolitudeSF/libssl
...
link against libssl.so.45
2018-05-03 16:00:39 +01:00
Dominik Picheta
9099ec5d0b
Merges #7700 manually and adds decodePlus option to decodeUrl too.
2018-05-03 15:18:19 +01:00
Dominik Picheta
5564289b57
Merge pull request #7714 from data-man/show_compile_timestamps
...
Compiler: show compile timestamps
2018-05-03 14:12:24 +01:00
Eugene Kabanov
5063437b0c
Make clearCallbacks() public. ( #7753 )
2018-05-03 07:53:54 +02:00
David Krause
78e946c450
fixed high level sendTo for sending to udp6 ( #7630 )
2018-05-02 22:44:08 +01:00
genotrance
452321874d
Fixes for #7747 - finish.exe issues ( #7748 )
2018-05-02 19:16:44 +02:00
Araq
21cbf438ce
make tests green
2018-05-02 13:34:54 +02:00
Araq
eb03d9aafe
fixes #7749
2018-05-02 13:34:54 +02:00
Andreas Rumpf
48aee47bf6
compiler: code cleanup
2018-05-02 13:34:54 +02:00
Andreas Rumpf
74fe7a800b
make tests green again
2018-05-02 13:34:54 +02:00
Andreas Rumpf
5ac94d26b3
remove the deprecated 'nil' statement
2018-05-02 13:34:54 +02:00
Andreas Rumpf
599b5d6dcb
make 'not nil' experimental
2018-05-02 13:34:53 +02:00
Oscar Nihlgård
cc0ca43743
Don't hide overflow/underflow/divbyzero in semfold ( #7732 )
...
* firstOrd/lastOrd bugfix
* Don't hide overflow/underflow/divbyzero in semfold
2018-05-02 08:54:09 +02:00
Araq
f89218c8b0
fixes #7730 , fixes #7746
2018-05-02 08:27:19 +02:00
Dmitry Atamanov
82275e3779
Fix renderer's errors ( #7742 )
...
* Fix renderer's errors
* Same for filter_tmpl
* var -> let
2018-05-01 19:45:38 +02:00
Andreas Rumpf
d62fe7d538
update the documentation
2018-05-01 09:38:17 +02:00
Araq
6853793ae9
make tests green again
2018-04-30 20:05:20 +02:00
Araq
851d2a266d
introduce --laxStrings:on switch
2018-04-30 19:57:52 +02:00