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
Araq
dfe195a4a1
fixes #501
2013-07-01 20:25:38 +02:00
Araq
30f8568570
fixes --os:standalone
2013-06-30 22:10:04 +02:00
Araq
1a5e30b053
made some tests green
2013-06-30 21:55:05 +02:00
Araq
52851b722d
--os:standalone works again
2013-06-30 21:15:28 +02:00
Araq
1bdc0d1dd3
fixes lots of regressions
2013-06-29 10:04:18 +02:00
Araq
7b946ec025
Merge pull request #486 from gradha/pr_idetools_docs
...
Adds idetools docs
2013-06-28 14:43:30 -07:00
Araq
693d019654
Merge pull request #487 from gradha/pr_no_more_slurping
...
Improves highlite module
2013-06-28 14:41:44 -07:00
Araq
b6f2902905
Merge branch 'master' of github.com:Araq/Nimrod
2013-06-27 19:57:24 +02:00
Dominik Picheta
a9f2c3ffaf
Fixed OSError + recvLine deprecation warnings.
2013-06-27 15:06:30 +01:00
Araq
8d4f5038d0
fixes #488
2013-06-27 08:19:03 +02:00
Araq
ed56b8c173
fixes #442
2013-06-27 08:06:55 +02:00
Grzegorz Adam Hankiewicz
579d0f6f41
Adds highlite to tests suite.
2013-06-18 22:18:44 +02:00
Grzegorz Adam Hankiewicz
a1da2b713b
Adds idetools hierarchy nesting test.
2013-06-16 22:39:38 +02:00
Grzegorz Adam Hankiewicz
1f8c5c37d3
Adds idetools test to verify --usages, reuses testcase.
2013-06-16 22:39:38 +02:00
Grzegorz Adam Hankiewicz
25f45cace1
Adds idetools test to check declaration proc signatures.
2013-06-16 22:39:38 +02:00
Grzegorz Adam Hankiewicz
b15f585273
Adds idetoos testcase to verify returned signatures.
...
At the moment too many of them return proc.
2013-06-16 22:39:38 +02:00
Grzegorz Adam Hankiewicz
d2def332fd
Adds $SILENT replacement to reduce test output verbosity.
2013-06-16 22:39:38 +02:00
Araq
ff1d68c50b
fixes #481
2013-06-13 15:19:55 +02:00
Araq
2464da5b26
Merge branch 'master' of github.com:Araq/Nimrod
2013-06-13 01:40:35 +02:00
Araq
d4c91bbd85
improvements for 'not nil' checking
2013-06-13 01:40:11 +02:00
zah
b1f4ade874
Merge pull request #478 from gradha/pr_idetools
...
More idetools additions
2013-06-12 02:25:25 -07:00
Araq
0097305953
bugfixes for the guarded data flow analysis
2013-06-12 00:41:02 +02:00
Grzegorz Adam Hankiewicz
b4ea608b65
Removes the nimcache symbol directory for each run.
2013-06-11 22:34:37 +02:00
Grzegorz Adam Hankiewicz
28041461b7
Adds symbol proc run mode as suggested by Zahary.
...
To avoid collision each test case uses a different nimcache directory
based on the input test filename.
2013-06-11 17:23:48 +02:00
Grzegorz Adam Hankiewicz
10c441deed
Enables trackDirty query for idetools proc mode.
2013-06-11 16:49:43 +02:00
Grzegorz Adam Hankiewicz
41c51a11d3
Adds $TESTNIM and $MODULE as variables to test cases.
2013-06-11 16:49:04 +02:00
Araq
38faa64b12
Merge branch 'master' of github.com:Araq/Nimrod
2013-06-11 00:32:27 +02:00
Araq
c156f2d493
next steps for guarded data flow analysis
2013-06-11 00:31:40 +02:00
Grzegorz Adam Hankiewicz
fe18117fb2
Adds idetools testcase for dynamic dispatch. Refs #477 .
2013-06-10 23:07:36 +02:00