Commit Graph

3743 Commits

Author SHA1 Message Date
Zahary Karadjov
fa3bb8d66b restore return type inference 2013-12-30 00:03:57 +02:00
Zahary Karadjov
723efe7cfb fix the filtering of void params in procs' signatures 2013-12-29 19:26:52 +02:00
Zahary Karadjov
afddae5aaf Merge branch 'upstream' into devel
Conflicts:
	compiler/ccgutils.nim
	compiler/msgs.nim
	compiler/sem.nim
	compiler/semexprs.nim
	compiler/seminst.nim
	compiler/semmagic.nim
	compiler/semstmts.nim
	compiler/semtypes.nim
	compiler/semtypinst.nim
	compiler/sigmatch.nim
	compiler/types.nim
	compiler/vmgen.nim
	lib/core/macros.nim
	lib/system.nim
	tests/reject/tenummix.nim
	web/news.txt
2013-12-29 17:21:00 +02:00
Zahary Karadjov
72291875bf integrate the logic of fixupProcType into ReplaceTypeVars 2013-12-29 16:08:33 +02:00
Araq
b731e6ef1c case consistency: cs:partial bootstraps on windows 2013-12-29 03:19:10 +01:00
Araq
438703f59e case consistency: next steps 2013-12-29 01:13:51 +01:00
Araq
1101a40f91 improvements for 'pretty' 2013-12-28 23:30:53 +01:00
Zahary Karadjov
66a2556525 make more tests green 2013-12-29 00:00:37 +02:00
Zahary Karadjov
5d75ce2f2e fix tclosure4 2013-12-28 15:07:30 +02:00
Dominik Picheta
f622504b5b Fixes #594
This was already partially fixed, ``expandTilde`` was the missing piece
from perfection.
2013-12-28 12:25:01 +00:00
Zahary Karadjov
f34ca1a7d7 fix illegal recursion checks 2013-12-28 14:17:36 +02:00
Zahary Karadjov
a59f13b00d lift generic parameters from concrete composite type classes 2013-12-28 12:50:45 +02:00
Araq
f2b9905b4e case consistency part 9 2013-12-28 01:57:19 +01:00
Araq
e2648fa3fb case consistency part 8 2013-12-28 01:47:40 +01:00
Araq
9c3751a37c case consistency part 5 2013-12-28 00:37:45 +01:00
Araq
92b8fac94a case consistency part 4 2013-12-27 23:10:36 +01:00
Araq
706266d8b7 case consistency part 3 2013-12-27 21:46:43 +01:00
Zahary Karadjov
a27eb51535 towards support for composite type classes such as seq[Number] and SquareMatrix[T] 2013-12-27 18:34:28 +02:00
Araq
a427648c48 case consistency part 2 2013-12-27 16:35:21 +01:00
Araq
2df9b442c6 case consistency part 1 2013-12-27 15:48:53 +01:00
Zahary Karadjov
e2594f44bd bugfix: in some contexts, newSeq[T](n) is incorrectly inferred to have a seq[typedesc[T]] type 2013-12-26 01:09:10 +02:00
Dominik Picheta
8c1ea5cb3f Added --noBabelPath override. 2013-12-25 22:38:53 +00:00
Zahary Karadjov
edab4aaad0 better integration of tyStatic into typeRel 2013-12-25 22:29:44 +02:00
Zahary Karadjov
1d02f2ea53 wip type class reforms (the compiler bootstraps fine)
* replace tfAny and tfAll with tyAnd and tyOr
* integrate matchTypeClass into typeRel
* introduce tyBuiltInTypeClass to handle types such as tuple, object, proc, etc
2013-12-25 19:25:04 +02:00
Araq
9e92455a53 templates can access hidden fields 2013-12-25 14:53:00 +01:00
Zahary Karadjov
299cefdc98 make the current PContext accessible through TCandidate
the goal here is to remove all the hacks from ParamTypeMatch and to handle
all type matching in typeRel (the context there is required to evaluate any static
params and to run the compilation tests of user-defined type classes)
2013-12-25 00:58:22 +02:00
Zahary Karadjov
952dbc4b8f documented static params 2013-12-25 00:32:53 +02:00
Araq
4d01408a46 bootstraps with new template symbol binding rules 2013-12-24 16:42:24 +01:00
Araq
83a0a31276 attempt to merge newtempl 2013-12-24 14:04:18 +01:00
Araq
4203e8955c Merge branch 'newtempl' into devel
Conflicts:
	lib/system.nim
	tests/reject/tenummix.nim
	todo.txt
2013-12-24 02:10:59 +01:00
Araq
1081c104d0 Merge branch 'vm2' of github.com:Araq/Nimrod into vm2 2013-12-24 01:30:48 +01:00
Araq
32ef1f8f32 vm: FFI improvements 2013-12-23 20:12:13 +01:00
Araq
4447c1b7e3 tcnstseq works again 2013-12-23 08:28:32 +01:00
Satish BD
033938a53a Correct the spelling of the word 'implicitly' 2013-12-23 04:29:50 +02:00
Araq
b76729df1c Merge branch 'master' of https://github.com/Araq/Nimrod into vm2
Conflicts:
	web/news.txt
2013-12-23 01:23:16 +01:00
Araq
9145bcfbb6 new VM: some progress for the FFI support 2013-12-23 01:17:48 +01:00
Andreas Rumpf
eae275c114 Merge pull request #742 from onionhammer/master
Added jsondoc compiler switch
2013-12-20 13:28:18 -08:00
Grzegorz Adam Hankiewicz
c0e2cb2919 Allows passing absolute paths for output. Refs #738.
Previous to this the project base dir was added always, preventing user
specified absolute paths to work.
2013-12-20 13:33:43 +01:00
Grzegorz Adam Hankiewicz
3b38ceac2e Runs user specified outFile if available. Refs #738. 2013-12-20 13:13:09 +01:00
Araq
4b0e391bb8 no stack tracing for the system module; fixes stack bottom detection 2013-12-20 00:02:04 +01:00
Zahary Karadjov
027f30610e static params: expr[T] is now static[T]
This introduces tyStatic and successfully bootstraps and handles
few simple test cases.  Static params within macros are no longer
treated as PNimrodNodes - they are now equivalent to constants
of the designated type.
2013-12-19 01:06:38 +02:00
Araq
3d869d4dec case expression with discardable result works 2013-12-18 07:28:25 +01:00
Araq
d46380e718 Merge branch 'master' of github.com:Araq/Nimrod 2013-12-16 22:26:34 +01:00
Araq
132b6b3efe implemented 'injectStmt'; more debug support 2013-12-16 22:26:17 +01:00
Araq
f095e51275 more tests work 2013-12-13 21:29:35 +01:00
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
Erik O'Leary
aaf49947e9 Added jsondoc compiler switch
Outputs top-level exported information in JSON
2013-12-12 10:59:30 -06:00
Araq
6db20a4be8 new VM: improvements 2013-12-12 01:34:01 +01:00
Michał Zieliński
39cabcdd27 Use quoteShell in stdlib, where appropriate. 2013-12-11 22:27:39 +01:00