Commit graph

754 commits

Author SHA1 Message Date
Andreas Rumpf
c9966a3e17 use 'using' instead of 'sig' keyword; cleans up new features a bit 2016-02-29 12:19:54 +01:00
Andreas Rumpf
7d7de36a91 removed debug code 2016-02-28 23:23:17 +01:00
Andreas Rumpf
0baa1d9955 first version of .partial objects 2016-02-28 23:22:47 +01:00
Andreas Rumpf
38dee2095c added 'sig' feature; removed tfShared support in the compiler 2016-02-28 19:56:41 +01:00
Andreas Rumpf
1afdefcbe9 added experimental .this pragma 2016-02-28 03:17:20 +01:00
Andreas Rumpf
5a33e8795e fixes #3788 2016-01-31 00:47:55 +01:00
Andreas Rumpf
4d10937a30 fixes regressions 2016-01-05 15:39:49 +01:00
Andreas Rumpf
1a2bda45ec fixes #2007 2016-01-05 10:20:24 +01:00
Andreas Rumpf
307a6095fa made closure iterators tests green, updated docs 2015-12-31 00:16:38 +01:00
Andreas Rumpf
2162a71c93 closure iterators do have 'result' 2015-12-30 13:32:18 +01:00
Andreas Rumpf
c1627354d1 first implementation of the new lambda-lifting pass; barely anything works 2015-12-26 00:42:30 +01:00
Araq
760242b870 removes 'x is iterator' special casing in the language 2015-12-03 01:08:03 +01:00
Araq
25e2e3faec 'importc' allows 'not nil' annotation 2015-11-26 17:46:05 +01:00
Araq
36f68e1650 fixes #3329 2015-09-18 02:24:12 +02:00
Araq
612cd25d5d usage of NimNode triggers .compileTime context; fixes #1679 2015-09-14 12:41:49 +02:00
Araq
8ef66b973d first attempt to fix 'a[i]' handling in generics 2015-09-12 10:55:28 +02:00
Araq
34ab1d3e34 fixes #1528 2015-09-10 13:20:15 +02:00
Araq
2299318d1e toplevel .closure procs are deprecated 2015-08-14 02:19:32 +02:00
Yuriy Glukhov
7bc3d7da75 Fixes #3186 2015-08-07 17:22:28 +03:00
Araq
0d8942d45e destructors now work with overloaded assignment operators; fixes #2811; fixes #1632 2015-08-05 21:43:14 +02:00
Araq
0a624bec1e implemented {.noforward:on.} for type sections; useful for c2nim generated wrappers; to be documented 2015-07-08 11:49:34 +02:00
Adam Strzelecki
13b57dbc2f Introduce {.noRewrite.} expr pragma disabling TR
Term rewriting macros/templates are currently greedy and they will rewrite as
long as there is a match. So there was no way to ensure some rewrite happens
only once, eg. when rewriting term to same term plus extra content.

With new macro we can actually prevent further rewriting on marked expr or
stmts, eg. with given example echo(...) will be rewritten just once:

  template pwnEcho{echo(x)}(x: expr) =
    {.noRewrite.}: echo("pwned!")

  echo "ab"
2015-06-02 21:38:53 +02:00
Araq
6ca38472a1 cleanups for underscores in tuple unpacking 2015-04-24 13:08:42 +02:00
Andreas Rumpf
3e000f4e36 Merge pull request #2437 from Araq/underscore-tuple-unpack
Implements #2154.
2015-04-24 12:32:57 +02:00
Araq
0c947f31ba system.locals is now a plugin for education 2015-04-24 02:08:06 +02:00
Dominik Picheta
f0f0062a5d Add sfGenSym for (_). 2015-04-23 00:29:16 +01:00
Dominik Picheta
9e69e4e078 Merge branch 'devel' into underscore-tuple-unpack
Conflicts:
	compiler/semstmts.nim
2015-04-23 00:26:17 +01:00
Araq
670367e13b fixes #2508 2015-04-11 10:01:10 +02:00
Araq
05e39cf6ad overloading of '=' works 2015-04-06 23:21:52 +02:00
Araq
78f371c03a first implementation of overloading of '='; missing: rewriting let/var sections 2015-04-06 23:21:51 +02:00
Dominik Picheta
c35fc2bb03 Rewrite in order to not introduce a new node kind. 2015-04-05 15:46:56 +01:00
Araq
f767e1749e don't store the scope for routines 2015-04-04 01:19:31 +02:00
Dominik Picheta
b38eb2e2a8 Implements #2154.
When unpacking tuples in var/let declarations a part of the tuple can now
be discarded using a single underscore.
2015-03-31 00:39:23 +01:00
Araq
2b80d75aa2 fixes #2420; negative indexing for slicing is obsolete (breaking change!) 2015-03-28 00:15:04 +01:00
Araq
117903a6ae fixes #2400 2015-03-25 13:02:15 +01:00
Simon Hafner
8993c7672d do not warn about gensym'd results 2015-03-11 19:21:27 -05:00
Araq
1efb5174f2 fixes #2220; #2219; breaks #2022; for #2022 callsite needs to be used 2015-03-10 12:32:46 +01:00
Andreas Rumpf
38b9093581 Merge pull request #2274 from reactormonk/warning-for-result
Warning for result
2015-03-08 14:49:49 +01:00
Max Zerzouri
7527da7043 .n.isNil checks for tyTuple PTypes. 2015-03-07 17:56:29 +13:00
Simon Hafner
70eaf92ff0 Merge branch 'devel' into warning-for-result 2015-03-05 14:44:54 -06:00
Araq
24ae0c387f some love for the testsuite; fixed regressions 2015-03-01 21:41:21 +01:00
Araq
05233de66c reprocess pragmas after macro annotation for SqueakNim 2015-02-27 16:44:55 +01:00
Federico Ceratto
657dca5c3b Fix typos 2015-02-15 16:20:32 +00:00
Federico Ceratto
c95f6f117a Fix typos 2015-02-15 16:06:06 +00:00
Araq
e371bb3e26 fixes #1131 2015-02-10 20:19:46 +01:00
Araq
ada0f14711 fixes #2073 2015-02-08 14:15:02 +01:00
Araq
b5f1957588 fixes #2057 2015-02-04 12:51:54 +01:00
Simon Hafner
a1d813d12c added a warning for when result is shadowed #868 2015-02-01 05:28:35 -06:00
Araq
fe30ec83e2 nimsuggest improvements 2015-01-30 03:04:45 +01:00
Araq
995510664e non-destructible context only produces a warning for now 2015-01-24 00:24:14 +01:00