summary refs log tree commit diff stats
path: root/compiler/seminst.nim
Commit message (Collapse)AuthorAgeFilesLines
* Revert "fix tforwardgeneric"Araq2013-05-271-0/+2
| | | | This reverts commit d82a032566de1612ff1ed2d82cc7ec2bd58267d7.
* Revert "fix threading tests"Araq2013-05-271-16/+8
| | | | This reverts commit d5fffc032f2b390abd7b4c4fea2e49b1a0ef9736.
* Revert "further fixes for void stripping. fixes tvoid."Araq2013-05-271-25/+20
| | | | This reverts commit 4ae4005f805c5b2e329b2e060fcf40169238a9f9.
* Revert "more test made green"Araq2013-05-271-21/+16
| | | | This reverts commit 911e6e710f28f454cf8bc1bb493c1a28c4694b76.
* more test made greenZahary Karadjov2013-05-261-16/+21
| | | | | | | | | the lambda lifting was trying too hard to ignore generic prods isGenericRoutine was producing false-negatives and only this allowed for some of the warning and error messages to be triggered. some files with mixed line endings were fixed
* further fixes for void stripping. fixes tvoid.Zahary Karadjov2013-05-261-20/+25
|
* fix threading testsZahary Karadjov2013-05-261-8/+16
| | | | | * more type names are valid expressions now * void is properly stripped off during generic instantiation
* fix tforwardgenericZahary Karadjov2013-05-261-2/+0
|
* fixes #267Zahary Karadjov2013-05-261-19/+84
|
* switch to a linked list of scopesZahary Karadjov2013-05-111-4/+4
|
* Removes executable bit for text files.Grzegorz Adam Hankiewicz2013-03-161-0/+0
|
* merged upstream masterZahary Karadjov2013-01-271-3/+3
|\
| * implemented generic multi methodsAraq2013-01-161-0/+1
| |
| * some fixes for generic first class iteratorsAraq2012-12-151-3/+3
| |
* | remove any traces of the old global generics cacheZahary Karadjov2013-01-271-4/+4
| |
* | store the instantiation cache in the generic symbolZahary Karadjov2012-11-281-20/+16
|/
* implemented return type inferenceZahary Karadjov2012-10-031-3/+8
| | | | | | Other fixes: * bind once is now the default for type classes as documented in the manual * fixes an issue in template overloading (erroneous ambiguity when different typedesc params were used)
* improved support for typedesc valuesZahary Karadjov2012-09-251-34/+5
| | | | | * can be stored in constants and variables (including in containers like sequences) * can be passed to and returned from macros
* proc bodies can be expressions with a typeAraq2012-09-221-1/+1
|
* fixes #194Araq2012-09-201-1/+17
|
* made more tests green; fixes #201Araq2012-09-121-3/+4
|
* term rewriting improvementsAraq2012-09-081-0/+1
|
* implemented generic templatesAraq2012-08-271-1/+4
|
* next steps to hygienic templatesAraq2012-08-201-2/+1
|
* top level closures should work; transf is not a pass anymore; next steps for ↵Araq2012-08-131-2/+1
| | | | first class iterator support
* idetools: 'usages' and 'def' should work now; documented js backendAraq2012-08-051-2/+2
|
* 'addSon' for types deprecated for 'int literal type' analysisAraq2012-07-091-1/+1
|
* added proc annotations: macros invoked as pragmasAraq2012-06-261-2/+2
|
* somewhat working closuresAraq2012-06-191-1/+3
|
* typedesc and expr paramsZahary Karadjov2012-03-311-1/+1
| | | | | | | | | | | | types are now valid proc/template/macro params and you can overload over them: proc foo(T: typedesc) # accept any type proc foo(T: typedesc{int}) # overload specifically for int proc foo(T: typedesc{int or float or Callable}) # overload for any type matching the constraints expr{type} is a param expecting compile time value of the designated type (or type class). when typedesc or expr params are used with a proc, the proc will be instantiated once for each unique type/value used as parameter.
* generic types can be used like type classes. distinct can be applied to type ↵Zahary Karadjov2012-03-251-3/+1
| | | | classes.
* expr params implemented for procs; paving the way for type classesZahary Karadjov2012-03-221-6/+38
|
* clean separation of PNimrodNode and tyExprAraq2012-03-161-2/+3
|
* year 2012 for most copyright headersAraq2012-01-021-1/+1
|
* proc arguments are in scope when the result type definition is being processedZahary Karadjov2011-12-091-1/+2
| | | | | This is intended for type deduction depending on the arguments proc foo(x: type): type(expr(x))
* bugfixes: objects still invalid for constants; fixed a typo concerning ↵Araq2011-11-151-4/+3
| | | | 'high' in eval context
* lazy loading of body ast implementedAraq2011-10-301-4/+7
|
* compilation cache: mostly working; generics not yetAraq2011-10-251-14/+13
|
* bugfixes for generics; new threads implementation still brokenAraq2011-09-201-0/+15
|
* modifyable results for generics; teventemitter worksAraq2011-08-091-2/+1
|
* fixes #35, fixes #43Araq2011-08-081-1/+2
|
* bugfix: forwarding of generic procs now worksAraq2011-07-301-13/+30
|
* bugfixes; step one for 'var T' as return type supportAraq2011-07-281-0/+1
|
* bugfix: proper cache for generic instantiationsAraq2011-07-211-25/+29
|
* first steps to explicit channels for thread communication; added mainThreadIdAraq2011-07-161-1/+1
|
* preparations for 0.8.12Araq2011-07-101-0/+2
|
* bugfix: invoking a generic iterator twice triggers a code gen bug (titer2)Araq2011-06-201-0/+3
|
* bugfix: typeinfo generation for tuplesAraq2011-06-191-9/+6
|
* big repo cleanupAraq2011-04-121-0/+128