Commit Graph

58 Commits

Author SHA1 Message Date
Andreas Rumpf
3308d26581 breaking change: arrays of char do not convert to cstring; ptr to array of char does 2017-10-10 00:17:20 +02:00
Andreas Rumpf
f7f3a25be8 first steps of making 'opt' a first class type for Nim 2017-09-25 13:19:36 +02:00
Fredrik Høisæther Rasch
c39e202976 Introduce first class support for Android (#5772) 2017-08-06 02:18:15 +02:00
Zahary Karadjov
5e368f3639 support for external types with covariant generic params 2017-05-08 21:45:37 +03:00
Eugene Kabanov
9c99973ff8 Make DragonFlyBSD a first class BSD-like OS (#5548) 2017-03-16 14:47:53 +01:00
Andreas Rumpf
f04d21f279 refactoring: explict config state instead of globals 2017-02-01 23:39:40 +01:00
Araq
adf8eea4df existance of new distros.nim module can be detected with defined(nimDistros) 2016-12-31 02:04:27 +01:00
Andreas Rumpf
9c4a60193f new shift ops for Nim; based on #4743 2016-12-29 12:07:27 +01:00
Andreas Rumpf
a8edf67a28 make nim bootstrap again for older versions 2016-07-30 00:50:38 +02:00
Jeff Ciesielski
94d1aa5109 Add the ability to pass a value with the -d flag
This allows the end user to use the {.magic: "IntDefine"/"StrDefine"}
pragmas to pass values into code at compile time.  This has a nice side
effect of also allowing/requiring a default value to be assigned in the
code (see osalloc.nim/StandaloneHeapSize for an example)
2016-07-04 18:11:25 -04:00
Araq
8ef66b973d first attempt to fix 'a[i]' handling in generics 2015-09-12 10:55:28 +02:00
Yuriy Glukhov
b3cecddd64 Fixed seq.insert and seq.delete for js. 2015-09-07 18:10:45 +03:00
Araq
87815cbdf7 attempt to fix bootstrapping; refs #3139 2015-08-07 22:32:06 +02:00
Araq
cabbcd411d implements varargs[untyped]; refs #2545; to be documented 2015-07-02 16:18:11 +02:00
Araq
8d39669233 fixes #2909 2015-06-15 00:56:20 +02:00
Araq
c8bebe92e2 fixes #2569 2015-04-23 23:49:10 +02:00
Araq
1e6aef62ba macros.PNimrodNode is now NimNode 2015-02-24 00:13:27 +01:00
Araq
d9c73b49d1 the compiler knows vxWorks is an OS 2015-01-28 12:59:05 +01:00
Guillaume Gelin
3119fe087d Happy new year! 2015-01-06 15:26:33 +01:00
Araq
b131439a2a fixes #1735 2014-12-15 02:21:44 +01:00
Araq
a639824e5e introduced 'benign' pragma 2014-10-25 22:01:23 +02:00
Araq
a9a5766c66 docgen should work again 2014-10-05 03:06:19 +02:00
Araq
fc47c0edc7 Merge branch 'devel' of https://github.com/Araq/Nimrod into bigbreak
Conflicts:
	lib/impure/db_postgres.nim
	lib/pure/os.nim
	lib/wrappers/postgres.nim
2014-10-04 19:40:23 +02:00
Reimer Behrends
cb6441e73d Use _setjmp()/_longjmp() only on BSD-like systems for now. 2014-09-27 18:05:30 +02:00
Reimer Behrends
f99c40f61b Improve setjmp()/longjmp() performance.
Exception handling for the C backend used setjmp()/longjmp()
unconditionally. However, on POSIX systems, these functions save and
restore the signal mask, adding considerable overhead to exception
handling, even where no exceptions are involved. The compiler and
library now try to use either _setjmp()/_longjmp() or
sigsetjmp()/siglongjmp() where possible, marked by the defines
"nimRawSetjmp" and "nimSigSetjmp", respectively. The define
"nimStdSetjmp" can be used to revert to setjmp()/longjmp() instead.
2014-09-25 23:29:02 +02:00
Araq
22fb9db845 nimfix improvements 2014-09-10 20:34:33 +02:00
Araq
5946747970 updated the compiler to use the new symbol names 2014-08-28 23:48:42 +02:00
Araq
2781fea9e2 Nimrod renamed to Nim 2014-08-28 09:38:14 +02:00
Araq
dbf9117c56 the big renamefest: first steps 2014-08-22 23:54:26 +02:00
Araq
710cbe3f1f fixes #1492 2014-08-17 21:23:46 +02:00
Araq
dd806cafa0 distinguish between 'defined' and 'declared' 2014-08-11 20:38:28 +02:00
Araq
a7911addf7 parseBiggestFloat is now builtin 2014-07-16 00:41:03 +02:00
Araq
5e839d50b4 fixes DLL generation 2014-04-21 03:44:48 +02:00
Araq
b961e47bfe new concurrency model: first steps; shared is not a keyword anymore 2014-04-14 08:45:43 +02:00
Araq
5506e8491d implemented 'union' and 'unchecked' pragmas 2014-03-05 20:19:04 +01:00
Araq
b731e6ef1c case consistency: cs:partial bootstraps on windows 2013-12-29 03:19:10 +01:00
Araq
438703f59e case consistency: next steps 2013-12-29 01:13:51 +01:00
Araq
92b8fac94a case consistency part 4 2013-12-27 23:10:36 +01:00
Araq
2df9b442c6 case consistency part 1 2013-12-27 15:48:53 +01:00
Araq
d53f313599 implemented computed goto support 2013-08-13 11:21:02 +02:00
Araq
731c6f9083 'nimrod pretty' usable 2013-07-31 20:35:04 +02:00
Araq
bfbdb1f028 refactorings for the eval engine; bugfix: clean templates as accessors 2013-07-19 22:22:20 +02:00
Zahary Karadjov
89f9772f15 nimrod dump can now produce a machine readable json report
The data in the report includes necessary information for starting
the compiler service and setting up the project paths in the IDE.

the default verbosity of 1 is now set in the compiler code to fix an
issue with verbosity being temporary set to 1 during config parsing
even when it's explicitly overridden on the command-line.

compiler/lexbase was temporary renamed to nimlexbase as a
work-around for a codegen naming conflict with lib/pure/lexbase
resulting in linking errors (further investigation needed).
2013-05-01 20:46:05 +03:00
Grzegorz Adam Hankiewicz
72a3e21f28 Removes executable bit for text files. 2013-03-16 23:53:07 +01:00
Araq
b6c8e16b0f bugfix: openssl import for macosx 2012-12-19 21:45:18 +01:00
Araq
7148812524 first steps for FFI support at compile time 2012-12-19 02:22:39 +01:00
Araq
a840a4ce53 improvements for --babelPath 2012-12-09 23:20:48 +01:00
Araq
3c0a6a8962 'assert' hides EAssertionFailsure; stdlib makes use of 'tags' 2012-11-18 01:36:20 +01:00
Araq
9bbf56bdbb allow 'mixin' in generics 2012-10-12 17:13:58 +02:00
Araq
d17caa86e8 objects with no ancestor are not implicitely final 2012-08-24 17:33:04 +02:00