Commit Graph

703 Commits

Author SHA1 Message Date
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
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
Zahary Karadjov
5dfc0d0d19 Take into account dirty buffers in suggest output; Fixes zah/nimrod.vim#14 2013-08-07 18:58:46 +03:00
Araq
9acdf94cc0 fixes #531 2013-07-24 23:07:28 +02:00
Araq
b1d4dfa6b1 fixes #544 2013-07-24 22:32:09 +02:00
Grzegorz Adam Hankiewicz
2f0f1d0a3f Adds idetools failure case for re"" being reported as a module. 2013-07-06 20:20:58 +02:00
Grzegorz Adam Hankiewicz
baf4f8c9eb Documents idetools skMacro with failure test case. 2013-07-06 20:00:12 +02:00
Grzegorz Adam Hankiewicz
383d047763 Documents idetools skLabel with failure test case. 2013-07-06 19:42:36 +02:00
Grzegorz Adam Hankiewicz
4ed44fc634 Moves caasdriver comments into idetools document. 2013-07-06 18:51:37 +02:00
Grzegorz Adam Hankiewicz
b22af9776d Forces removal of nimcache dir for all caas runs.
Now some test cases fail because they can't use a previous nimcache
directory (which potentially could have wrong compiled code anyway).
2013-07-06 18:03:19 +02:00
Grzegorz Adam Hankiewicz
4583c4ea0a Adds more idetools suggest failure cases. 2013-07-06 16:51:55 +02:00
Araq
3e4dec3cf4 Merge pull request #485 from gradha/pr_suggest_case
Adds idetools --suggest test case. Refs #484.
2013-07-02 11:58:59 -07:00
Araq
c1155cd2a5 fixes #503 2013-07-02 19:32:12 +02:00
Grzegorz Adam Hankiewicz
f7f1408168 Adds idetools --suggest test case. Refs #484.
1) There are too many suggestions for the given prefix.
2) The suggestions don't take into account the preceeding type.
3) trackDirty only works on caas mode.
2013-07-02 12:28:22 +02:00