Commit Graph

115 Commits

Author SHA1 Message Date
Araq
a2c040e3bd added undocumented exportNims pragma for Nimscript support 2015-10-03 23:19:15 +02:00
Aman Gupta
5e9ce88daf implement bitsize pragma for bitfields 2015-09-28 14:34:36 -07:00
Araq
dc047931bb fixes #2590; methods now require a .base annotation 2015-09-06 02:31:28 +02:00
rku
24ad2cb392 Merge branch 'devel' into coroutines 2015-08-20 17:54:55 +03:00
Araq
bd786812e7 fixes #3171 2015-08-02 02:55:59 +02:00
rku
626226efa4 {.compile.} pragma accepts paths relative to file pragma is in. 2015-07-31 15:57:10 +03:00
Araq
d3255f708c small steps for making --symbolFiles:on work again 2015-07-20 13:43:59 +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
751232dc7c implements .goto support for variables 2015-04-19 02:42:40 +02:00
def
39049e151f Get rid of deprecation warnings 2015-04-07 15:47:18 +02:00
Andreas Rumpf
99e0fb90e0 Merge pull request #2428 from arnetheduck/comp-lib-ropes
Comp lib ropes
2015-04-06 00:32:08 +02:00
Araq
d5f40ee70d better error message for implicit pragmas 2015-04-04 01:19:29 +02:00
Jacek Sieka
c40249cd43 compiler_ropes: ropeToStr -> $ 2015-04-01 22:32:15 +08:00
Araq
910ef7b2d1 'constructor' pragma for C++ support 2015-03-18 11:42:37 +01:00
Araq
1fc590b6ea don't generate memset calls for C++ objects 2015-03-18 11:42:36 +01:00
Araq
8763bffa84 better handling of gcsafety with --threadAnalysis:off 2015-02-12 14:56:56 +01:00
Araq
fe30ec83e2 nimsuggest improvements 2015-01-30 03:04:45 +01:00
Araq
26b853923c nimsuggest: first version 2015-01-27 01:36:19 +01:00
Guillaume Gelin
3119fe087d Happy new year! 2015-01-06 15:26:33 +01:00
Araq
24e66e04fa cleaned up os.nim; docgen improvements 2014-12-21 14:28:46 +01:00
Araq
4b7de4dc5e implemented 'experimental' switch 2014-12-05 10:09:29 +01:00
Araq
ee9c70e034 user defined pragmas work for generics instantiated in different modules 2014-11-06 00:21:39 +01:00
Araq
fdf996925b implements #1588 2014-10-26 13:36:42 +01:00
Araq
e65c296bcc implemented mixed mode codegen 2014-10-03 01:21:35 +02:00
Araq
e9dec2feed better lock level handling 2014-10-02 02:33:14 +02:00
Araq
d576fbb39a implemented locking levels; still incomplete 2014-09-27 15:06:06 +02:00
Araq
7916b1f9aa implemented 'guard' annotation 2014-09-21 18:39:00 +02:00
Araq
dbf9117c56 the big renamefest: first steps 2014-08-22 23:54:26 +02:00
Araq
9673e4f2df progress on deepCopy 2014-08-01 23:40:48 +02:00
Araq
4220b1c81d Merge branch 'new_spawn' of https://github.com/Araq/Nimrod into new_spawn 2014-06-06 21:11:11 +02:00
Araq
2de99653d0 Promises are now refs 2014-06-05 08:46:29 +02:00
Clay Sweetser
10e23e9159 Renamed considerAccents to considerQuotedIdent 2014-05-26 10:42:10 -04:00
Clay Sweetser
055cdb2cdf Renamed 'considerAcc' to 'considerAccents' for clarity
Added documentation string to 'considerAccents'
Modified renderParamType's assertion to allow nkAcc nodes.
2014-05-24 08:10:40 -04:00
Araq
4075159933 reintroduce thread analysis but disable it for backwards compatibility 2014-04-20 22:15:25 +02:00
Araq
e6d17e6273 made large parts of the stdlib gcsafe 2014-04-20 20:01:24 +02:00
Araq
3b69a8d27a New concurrency model: next steps 2014-04-19 22:24:43 +02:00
Araq
44ee8aecfd disable extern name checking as it breaks building of nimrtl.dll 2014-03-30 22:40:09 +02:00
Araq
31cfed0aa8 fixes a typo 2014-03-27 21:24:41 +01:00
Araq
cdb4d83ead implemented 'borrow dot' feature for distinct types 2014-03-26 01:27:22 +01:00
Audun Wilhelmsen
1e45bb79ab Added support for {.packed.} pragma on objects
Added tests for packed and union pragmas
2014-03-18 21:11:57 +01:00
Araq
dd216755ff Merge branch 'devel' of https://github.com/Araq/Nimrod into devel 2014-03-07 22:28:48 +01:00
Araq
91d842e1ec implements strongSpaces parsing mode 2014-03-07 22:25:05 +01:00
Zahary Karadjov
2cbe46daff Merge branch 'devel' of github.com:Araq/Nimrod into devel 2014-03-06 23:25:45 +02:00
Zahary Karadjov
862c0ef83d split the inline and closure iterators into different symbol kinds for easier discrimination between them 2014-03-06 21:57:35 +02:00
Araq
5506e8491d implemented 'union' and 'unchecked' pragmas 2014-03-05 20:19:04 +01:00
Araq
10768904eb Merge branch 'devel' of https://github.com/Araq/Nimrod into devel
Conflicts:
	lib/system/jssys.nim
2014-02-25 01:06:35 +01:00
Grzegorz Adam Hankiewicz
3aa7f65240 Addresses issues raised on #947. Refs #800.
* Uses errGenerated instead of deprecated extending of enums.
* Reduces bloat and usefulness of end user error messages.
* Limits checks to C, Cpp and Objc targets.
2014-02-22 10:21:24 +01:00
Grzegorz Adam Hankiewicz
adb390af4b Checks that exported symbols are valid C identifiers. Refs #800. 2014-02-21 00:32:28 +01:00
Araq
ab72377ce6 renamed noStackFrame to asmNoStackFrame 2014-02-18 09:57:59 +01:00
Araq
b731e6ef1c case consistency: cs:partial bootstraps on windows 2013-12-29 03:19:10 +01:00