Commit Graph

62 Commits

Author SHA1 Message Date
Araq
c0ad9a96ce fixes #3237 2015-08-25 22:44:53 +02:00
rku
24ad2cb392 Merge branch 'devel' into coroutines 2015-08-20 17:54:55 +03:00
Yuriy Glukhov
c42b05adb4 Fixed --debugger:on option. Removed c_line from termios. 2015-08-12 12:04:26 +03:00
rku
43bfda057b Coroutine support for i386/amd64 platforms unix/windows OSes markAndSweep/refCounting GCs. 2015-07-31 17:59:50 +03:00
Araq
8594faa543 fixes #2841 2015-07-22 17:08:21 +02:00
Araq
ecc0090939 fixes #2551; fixes #2212; breaks bootstrapping in debug mode; bootstrap with -d:release 2015-04-25 23:16:57 +02:00
Andreas Rumpf
e390d8ec4a Merge pull request #2225 from dyu/freebsd
compile nim on freebsd
2015-03-08 13:01:55 +01:00
Araq
d61f326f38 prevent name mangling for C++ DLLs 2015-03-05 01:34:09 +01:00
dyu
19354b62f6 compile nim on freebsd 2015-02-27 17:45:07 +08:00
Araq
f7f87a7709 merged #2083 manually 2015-02-08 13:38:04 +01:00
Guillaume Gelin
3119fe087d Happy new year! 2015-01-06 15:26:33 +01:00
Araq
e65c296bcc implemented mixed mode codegen 2014-10-03 01:21:35 +02:00
Araq
d576fbb39a implemented locking levels; still incomplete 2014-09-27 15:06:06 +02:00
Reimer Behrends
80255d8889 Fix the C++ exception struct in nimbase.h.
The struct NimException still referred to the old exception type
E_Base, which has since been renamed to Exception. This made the
C++ backend fail on any code that used exceptions.
2014-09-21 18:30:03 +02:00
Araq
ed226eba6d added stack overflow prevention 2014-07-16 22:32:09 +02:00
ReneSac
83661492e7 Fix typo in previous commit. 2014-04-06 14:20:51 -03:00
Zahary Karadjov
1546d210c5 fix #971 2014-03-10 18:13:48 +02:00
ReneSac
a88a635847 Added comment explaining 'assert_numbits' error. 2014-03-06 18:18:25 -03:00
Araq
5506e8491d implemented 'union' and 'unchecked' pragmas 2014-03-05 20:19:04 +01:00
Araq
52851b722d --os:standalone works again 2013-06-30 21:15:28 +02:00
Araq
9604df8431 fixes #466 2013-06-06 23:15:05 +02:00
Simon Hafner
e88c179982 nimbase.h doesn't need signal.h 2013-05-18 15:58:11 -05:00
Grzegorz Adam Hankiewicz
72a3e21f28 Removes executable bit for text files. 2013-03-16 23:53:07 +01:00
Araq
a64d4dc35c documented object constrs; endb works again 2013-03-09 20:43:56 +01:00
Zahary Karadjov
0cb95891d3 fixes nimrtl compilation 2013-01-28 00:47:41 +02:00
Zahary Karadjov
d0edb1826b adds an option to interleave the generated code with snippets from the original source
Lines from the original source are outputted as comments next to line directives.
Hopefully, this will make debugging codegen problems easier.

Other changes:
The frame setup code now uses a single-line C macro. My motivation was to reduce
the noise in the generated output and make it easier to step over the boiler-plate
code, but counter-intuitively this also improved the overall compilation speed a
little bit so I applied the same treatment to line tracking too (this reduces the size of
the generated files and the explanation is that probably the I/O overhead dominates
the macro expansion costs).
2012-12-02 20:36:29 +02:00
Araq
b4ad97a036 fixes #256 (I hope) 2012-11-20 21:33:22 +01:00
Araq
2133fbfcce bugfix: wrong assertions for C++ code generation; some solaris support; first steps to an effect system 2012-10-30 22:29:03 +01:00
Araq
12bc0419da fixes 182 2012-08-02 23:25:17 +02:00
Araq
58a66a0d70 more reliable NI/NU definitions 2012-07-28 17:28:36 +02:00
Araq
39f399f424 fixes #172 2012-07-25 00:56:34 +02:00
Dominik Picheta
41a9a941ab Fixed math.round, added math.ceil and fixed times.format. 2012-06-04 19:24:13 +01:00
Zahary Karadjov
bb850aafec codegen for C++ exceptions 2012-06-03 20:37:56 +03:00
Araq
161f6f7229 further steps for closure support 2012-02-06 08:44:18 +01:00
Araq
8aa4e46707 implemented incompleteStruct pragma; embedded debugger works with posix module 2012-01-05 00:46:51 +01:00
Araq
cd83cc81aa code gen can generate code to keep alive stack roots 2011-12-22 15:04:00 +01:00
Araq
c8d270268a bugfixes for .rod files and visual C++ 2011-12-03 17:21:35 +01:00
Araq
61792dc7d6 cgen: no type canon for integral types; osproc use posix_spawn instead of fork&exec 2011-11-18 00:29:56 +01:00
Zahary Karadjov
489340658e Added system.program_results for controlling the exit code of the program under normal circumstances
Implemented operators like +=, -=, etc for ordinals, floats and string

Programs using the UnitTest module will now report the number of failed tests as the exit code of test runs (0 for successful run)
2011-11-10 04:10:03 +02:00
Araq
42516c0086 code generator supports constant sequences; more consistent compile time evaluation 2011-10-07 09:02:08 +02:00
Araq
5131b3cea4 support for C++ code generation; importcpp and importobjc pragmas 2011-08-07 21:02:09 +02:00
Araq
67a30d8371 further steps for thread support; bootstrapping should require unzip C sources and ./build.sh 2011-05-16 00:27:47 +02:00
Araq
66cfc851a1 basic thread support; still broken on Windows; untested on Mac OS X 2011-01-18 02:22:01 +01:00
Araq
adf13aaea3 docgen understands and ignores *when false* 2010-11-18 22:26:20 +01:00
Araq
866572e2e4 fixes for exception handling; added system.compileOption 2010-09-13 00:52:44 +02:00
Araq
e439c6b02e bugfix: init of temps 2010-08-24 00:19:16 +02:00
Andreas Rumpf
c9e011e36c DLL generation of the stdlib for unix 2010-08-04 07:57:51 +02:00
Andreas Rumpf
d10973adb0 c2nim tool added 2010-07-21 09:44:47 +02:00
Andreas Rumpf
6c20509121 explicit types for generic routines 2010-05-28 23:32:46 +02:00
Andreas Rumpf
b2ad7b30dc bugfix: complex.nim compiles 2010-04-04 18:43:57 +02:00