Commit Graph

2302 Commits

Author SHA1 Message Date
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
1161482ec2 fixes #459 2013-08-31 11:22:49 +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
cf689f7472 bugfix: conversions to float32 are allowed again but of lower priority 2013-08-30 21:47:55 +02:00
Araq
74c24f3e6d conversions to float32 are allowed again but of lower priority 2013-08-30 21:40:47 +02:00
Araq
0c133b3f02 tester compiles again 2013-08-30 18:14:19 +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
Araq
7056ceda67 float64 is now an alias to 'float'; fixes #545 2013-08-30 12:24:54 +02:00
Araq
1ad1980f1f bugfix: 'not x of y' requires () 2013-08-30 12:16:18 +02:00
Araq
5f943cf4bc docgen: more newlines in the output to support primitive postprocessors 2013-08-29 23:18:02 +02:00
Dominik Picheta
c934a33ccd Implemented ability to connect through proxies for the httpclient module. 2013-08-26 18:02:45 +01:00
Dominik Picheta
18033026cb Removed outdated bootstrapping info from install.txt 2013-08-23 23:14:27 +01: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
cf38d635bf implemented opcTypeTrait 2013-08-22 19:28:34 +02:00
Araq
3940bd5b84 GC: added static cycleGC checks 2013-08-22 19:20:45 +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
4980ef85e2 check the owners of generic instantiations properly and fix tinvalidclosure 2013-08-19 01:45:16 +03:00
Zahary Karadjov
b01d9b6181 work-in-progress for compiling generics in their owner module 2013-08-19 01:45:16 +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
8b933e470e fixes iterating over enums 2013-08-19 01:36:04 +03:00
Zahary Karadjov
c6d0611112 Revert "Revert "made some tests green"" 2013-08-19 01:35:33 +03:00
Zahary Karadjov
a453d8d64d Revert "Revert "further fixes for void stripping. fixes tvoid.""
This reverts commit d11cf5d191.
2013-08-19 01:30:17 +03:00
Zahary Karadjov
cefa16ae77 Revert "Revert "fix threading tests""
This reverts commit 9c45e33d8c.
2013-08-19 01:29:58 +03:00
Zahary Karadjov
fc858927f0 Revert "Revert "fix tforwardgeneric""
This reverts commit e3f93241c3.
2013-08-19 01:29:47 +03:00
Zahary Karadjov
f760bc243b Revert "Revert "static and default params for generics""
This reverts commit 0662ec4a43.
2013-08-19 01:29:37 +03:00
Zahary Karadjov
ea54aa386c Revert "Revert "allow keyword params for the [] and {} operators""
This reverts commit b7ea4a7e65.
2013-08-19 01:29:22 +03:00
Zahary Karadjov
19eeb3556e remerge "allow void as field type" 2013-08-19 01:29:01 +03:00
Zahary Karadjov
6ddd4e6a3f Revert "Revert "bugfix: emulated thread vars used in combination with the mark & sweep GC""
This reverts commit 75c586bbe1.
2013-08-19 01:27:05 +03:00
Zahary Karadjov
dfb5cb3c5d remerge "Fixes #267" 2013-08-19 01:26:37 +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
50403afb5c fixes base64 module 2013-08-15 00:22:48 +02:00
Araq
d53f313599 implemented computed goto support 2013-08-13 11:21:02 +02:00
Araq
1633e22aec Merge branch 'master' of github.com:Araq/Nimrod 2013-08-11 18:48:59 +02:00
Araq
d18c82a9ef new VM: preparations for evalMacroCall 2013-08-11 18:48:33 +02:00
Araq
db027faf38 fixes a long standing channels bug 2013-08-09 00:25:31 +02:00
Araq
a294d45fd6 Merge branch 'master' of github.com:Araq/Nimrod 2013-08-08 21:11:20 +02:00
Araq
288cd05f89 new VM: register allocator bugfix; implemented more magics 2013-08-08 21:10:54 +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
06b3852143 Merge branch 'master' of github.com:Araq/Nimrod 2013-08-07 01:40:37 +02:00
Araq
aefa0da8a6 new VM: implemented constructors and jump optimizer 2013-08-07 01:40:08 +02:00
Araq
ee9aee6c00 bugfix createDir for solaris 2013-08-07 01:36:15 +02:00
Zahary Karadjov
5c32156a71 fixes #534 2013-08-07 00:01:58 +03:00