Araq
8c553fa8a2
Merge branch 'master' into vm2
2013-12-13 15:58:03 +01:00
Araq
328f193292
new VM: globals kinda work
2013-12-13 01:21:23 +01:00
Clay Sweetser
5b3bc28721
Commented out CAAS testing code.
2013-12-12 15:04:28 -05:00
Araq
6db20a4be8
new VM: improvements
2013-12-12 01:34:01 +01:00
Michał Zieliński
8561ef5bc8
use parseopt2 in parseopt2 test
2013-12-10 20:48:18 +01:00
Michał Zieliński
896766ae2c
Fix : and = precedence in parseopt.
2013-12-10 19:10:06 +01:00
Michał Zieliński
d1f3512aba
Reimplement parseopt which parses arguments given as a sequence of strings, not single string.
2013-12-09 23:29:16 +01:00
Araq
4ffe6a8282
new VM: passes more tests
2013-12-06 01:48:02 +01:00
Araq
3560827a28
makes 'reject' tests green
2013-12-05 11:28:45 +01:00
Araq
c0a3d44060
bugfix: keywords are sorted
2013-12-05 10:45:36 +01:00
Araq
5eba93d584
Merge branch 'master' into vm2
...
Conflicts:
compiler/sem.nim
2013-12-05 00:03:27 +01:00
Araq
fe983b1309
fixes a regression where memset was used without including <string.h>
2013-12-03 01:59:38 +01:00
Araq
b3d759ca6d
fixes #681
2013-11-30 03:15:14 +01:00
Araq
2dcbc6493a
fixes #686
2013-11-29 20:42:12 +01:00
Zahary Karadjov
a068aaed3c
simple unit test and better documentation for the user defined type classes
2013-11-17 22:50:26 +02:00
Zahary Karadjov
9061b8961e
failing test for static params
2013-11-05 21:55:46 +02:00
Araq
6ea538cec3
computed goto now works; some progress on the new VM
2013-10-25 13:30:34 +02:00
Dominik Picheta
199c4d21bd
Fixed regression on ARM caused by the changed behaviour of noStackFrame in commit ac474a2812.
2013-10-19 21:01:32 +01:00
Andreas Rumpf
b700e0d2f8
Merge pull request #604 from reactormonk/master
...
moved eqproc to the correct magic position
2013-10-05 12:07:26 -07:00
Araq
422327c010
fixed another semicolon related parsing bug
2013-10-02 07:57:30 +02:00
Araq
2f0671eb79
examples from the talk part of test suite
2013-09-27 08:45:14 +02:00
Simon Hafner
ab31ad2704
don't mess with semfold, use vars instead
2013-09-26 15:10:54 -05:00
Simon Hafner
becd55dced
moved eqproc to the correct magic position
...
also added mEqCString to evalOps so the test runs
2013-09-26 15:05:00 -05:00
Araq
a0b82db402
the compiler can now deal with multiple modules of the same name
2013-09-26 17:34:46 +02:00
Araq
275c7ccf82
fixes #575
2013-09-10 22:04:12 +02:00
Araq
40b379859c
resolved the conflict
2013-09-03 23:46:41 +02:00
Araq
891f871ba7
better support for GNU's assembler
2013-09-03 23:44:31 +02:00
Zahary Karadjov
6082595e96
Merge branch 'type-classes' into upstream
2013-09-03 03:14:56 +03:00
Araq
9c6de08db0
fixes #516
2013-08-31 16:45:10 +02:00
Araq
b40ab4dc9e
fixes #554 , fixes #179
2013-08-31 11:49:33 +02:00
Araq
e698d6255b
fixes #563
2013-08-31 10:03:41 +02:00
Araq
6cc06cd35d
fixes #569 ; C++ codegen works again
2013-08-31 02:07:52 +02:00
Araq
4d9b2f671a
fixes #578
2013-08-30 22:47:14 +02:00
Araq
8710118b2c
Merge branch 'master' of github.com:Araq/Nimrod
2013-08-30 12:44:27 +02:00
Araq
a17076cf4f
fixes #572
2013-08-30 12:44:09 +02:00
Zahary Karadjov
9cc23118be
fix tcompiles
2013-08-27 01:01:03 +03:00
Zahary Karadjov
dc33638cb2
proper discrimination between csEmpty and csNoMatch
...
fixes twrongtupleaccess and topaque
2013-08-27 00:08:47 +03:00
Zahary Karadjov
bdeaee4a33
fix tnoop
...
This commit requires further investigation.
Fixing semExpr(nkCall) once and for all to work with sym-choices and to
allow overloading with immediate templates and macros will probably set
this straight too.
2013-08-26 23:43:39 +03:00
Zahary Karadjov
28d9398de7
implemented delegators and improved the error messages of unmatched type classes
2013-08-26 23:29:24 +03:00
Zahary Karadjov
56d75bd23b
implemented and documented the new typedesc binding rules
2013-08-23 15:43:27 +03:00
Zahary Karadjov
8682ed9bd0
pass-through of static int generic params to arrays when late instantiation is disabled
2013-08-23 01:10:20 +03:00
Zahary Karadjov
fee2a7ecfa
Experimental support for delayed instantiation of generics
...
This postpones the semantic pass over the generic's body until
the generic is instantiated. There are several pros and cons for
this method and the capabilities that it enables may still be possible
in the old framework if we teach it a few new trick. Such an attempt
will follow in the next commits.
pros:
1) It allows macros to be expanded during generic instantiation that
will provide the body of the generic. See ``tmacrogenerics``.
2) The instantiation code is dramatically simplified. Dealing with unknown
types in the generic's body pre-pass requires a lot of hacky code and error
silencing in semTypeNode. See ``tgenericshardcases``.
cons:
1) There is a performance penalty of roughly 5% when bootstrapping.
2) Certain errors that used to be detected in the previous pre-pass won't
be detected with the new scheme until instantiation.
2013-08-23 01:10:20 +03:00
Araq
a8c8a85135
Merge branch 'master' of github.com:Araq/Nimrod
2013-08-22 19:28:58 +02:00
Araq
6f1fc1b5ba
fixed and documented computedGoto pragma
2013-08-22 08:38:47 +02:00
Zahary Karadjov
ca3a4ce672
hacky fix for generic constraints matching
2013-08-19 01:48:25 +03:00
Zahary Karadjov
3e79e9f981
some steps to improve the type mismatches with the new
...
generic instantiation logic
2013-08-19 01:45:16 +03:00
Zahary Karadjov
c6d0611112
Revert "Revert "made some tests green""
2013-08-19 01:35:33 +03:00
Zahary Karadjov
fc858927f0
Revert "Revert "fix tforwardgeneric""
...
This reverts commit e3f93241c3 .
2013-08-19 01:29:47 +03:00
Zahary Karadjov
f127bc387a
Revert "Revert "test cases for the new features""
...
This reverts commit e1b668c868 .
2013-08-19 01:17:07 +03:00
Araq
d53f313599
implemented computed goto support
2013-08-13 11:21:02 +02:00