summary refs log tree commit diff stats
path: root/compiler/ast.nim
Commit message (Collapse)AuthorAgeFilesLines
* micro optimizations for the evaluation engineAraq2013-02-141-4/+6
|
* added GC_addCycleRootAraq2013-02-121-3/+4
|
* merged upstream masterZahary Karadjov2013-01-271-3/+6
|\
| * fixes #293Araq2013-01-081-1/+1
| |
| * constraint now part of the parameter symbol and not of the typeAraq2012-12-051-1/+1
| |
| * implemented 'import except'Araq2012-11-281-2/+3
| |
| * first steps for the 'export' featureAraq2012-11-281-0/+2
| |
* | minor bug fixes to make some tests greenZahary Karadjov2013-01-211-1/+8
| |
* | track the "owner" heap object in the ref write barrierZahary Karadjov2012-12-011-0/+3
| | | | | | | | See the papers for reference counting with heap sliding views for details:
* | temporary debugging code for the memory leak investigationZahary Karadjov2012-11-281-1/+1
| |
* | store the instantiation cache in the generic symbolZahary Karadjov2012-11-281-6/+22
| |
* | CaaS in-memory cachingZahary Karadjov2012-11-281-0/+8
|/ | | | | removed some redundant filepath params and variables and switched to canonical paths in most places
* first steps for 'not nil' annotationAraq2012-11-251-0/+2
|
* added missing type flagsAraq2012-11-231-4/+10
|
* added 2 necessary node kindsAraq2012-11-211-0/+3
|
* fixes #250Araq2012-11-191-1/+1
|
* added system.finished for first class iteratorsAraq2012-11-171-1/+1
|
* bugfix: stack traces; first class iterators almost workingAraq2012-11-151-1/+2
|
* AST quasi-quoting for macrosZahary Karadjov2012-11-111-1/+2
|
* bugfix: wrong assertions for C++ code generation; some solaris support; ↵Araq2012-10-301-0/+7
| | | | first steps to an effect system
* Improved support for nkSymChoices in type coercionsZahary Karadjov2012-10-151-0/+1
| | | | | | | | | | For example, this allows you to pick up a proc with a specific signature from an overload set. bugfix: nimrod generated invalid code when a RVO function had a single compile-time param bugfix: nkHiddenDerefs were not neutralised properly for indirect proc calls
* fixes #211Zahary Karadjov2012-10-131-0/+5
| | | | transf: fix a clang compilation error when lineDir:on is used
* syntax compatibility between do blocks and stmt blocksZahary Karadjov2012-10-041-1/+12
| | | | | | | | | | | | See the section `do notation` in the manual for more info. * nkMacroStmt has been removed Macro statements are now mapped to regular nkCall nodes. The support for additional clauses (such as else, except, of, etc) have been restored - they will now appear as additional arguments for the nkCall node (as nkElse, nkExcept, etc nodes) * fixed some regressions in the `is` operator and semCompiles
* implemented case expressionsZahary Karadjov2012-10-031-0/+5
|
* implemented return type inferenceZahary Karadjov2012-10-031-0/+2
| | | | | | 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-0/+6
| | | | | * 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-0/+1
|
* semExpr/semStmt mergedAraq2012-09-131-0/+4
|
* term rewriting macros fully implemented; still buggyAraq2012-09-031-5/+18
|
* next steps towards term rewriting macros; simple examples workAraq2012-08-301-8/+9
|
* first steps towards term rewriting macrosAraq2012-08-301-5/+10
|
* parameter passing works the same for macros and templates; use callsite ↵Araq2012-08-281-1/+1
| | | | magic to access the invokation AST
* distinguish properly between nkOpen and nkClosedSymChoiceAraq2012-08-261-1/+7
|
* bindSym suffices; no 'bind' for macros anymoreAraq2012-08-251-1/+1
|
* objects with no ancestor are not implicitely finalAraq2012-08-241-2/+3
|
* implemented 'bind' for macrosAraq2012-08-241-0/+1
|
* next steps to hygienic templatesAraq2012-08-201-7/+11
|
* first steps to make templates hygienicAraq2012-08-201-15/+3
|
* bycopy/byref for object/tuple typesAraq2012-08-161-2/+4
|
* next steps for tyVarargs/tyOpenArray splitAraq2012-08-141-1/+2
|
* first steps for varargs supportAraq2012-08-131-1/+1
|
* top level closures should work; transf is not a pass anymore; next steps for ↵Araq2012-08-131-1/+3
| | | | first class iterator support
* idetools: 'usages' and 'def' should work now; documented js backendAraq2012-08-051-1/+2
|
* idetools improvementsAraq2012-08-031-0/+1
|
* idetools improvements; preparation of first class iterators; fixes #183Araq2012-08-021-1/+3
|
* next steps for closure consistency; fixes #176Araq2012-07-251-0/+8
|
* added system.compilesAraq2012-07-201-1/+2
|
* got rid of some mAddU64 etc. magicsAraq2012-07-201-2/+2
|
* removed nimdat in favor of per-module dat init procsZahary Karadjov2012-07-191-0/+2
|
* make tests green againAraq2012-07-171-1/+1
|