summary refs log tree commit diff stats
path: root/compiler/trees.nim
Commit message (Collapse)AuthorAgeFilesLines
* better support for PROGMEM like annotations for lets/vars; fixes #12216 (#12799)Andreas Rumpf2019-12-051-5/+12
|
* Cosmetic compiler cleanup (#12718)Clyybber2019-11-281-19/+19
| | | | | | | | | | | | | | | | | | * Cleanup compiler code base * Unify add calls * Unify len invocations * Unify range operators * Fix oversight * Remove {.procvar.} pragma * initCandidate -> newCandidate where reasonable * Unify safeLen calls
* Small ast.nim cleanup (#12156)Clyybber2019-09-091-5/+5
| | | | | * Remove sonsLen * Use Indexable
* [refactoring] remove unused imports in the compiler and in some stdlib modulesAraq2019-07-181-1/+1
|
* Render deprecated pragmas (#8886)LemonBoy2019-06-031-0/+6
| | | | | | | | | * Render deprecated pragmas * fix the expected html * clean up the documentation regarding deprecations * fix typo * fix system.nim * fix random
* Replace countup(x, y-1) with x ..< yClyybber2019-05-071-3/+3
|
* introduce temporary <//> for 'owned' to get this compile with 0.19 (#11145)Andreas Rumpf2019-05-021-1/+1
| | | | | | | | * introduce temporary <//> for 'owned' to get this compile with 0.19 * make newTable[string, owned Node]() compile (but it crashes) * make sink/owned parameters consistent * make actiontable test compile again * VM: support sytem.move; makes tests green
* more destructor based changes (#10885)Andreas Rumpf2019-03-231-0/+10
| | | | | | | | | | | * mark user defined destructors with sfOverriden to simplify the logic * refactoring in preparation to merge liftings and generic instantiations for destructors * ast: introduce nkHiddenTryStmt for destructor generation in order to be able to optimize better the code later on * renamed 'patterns' switch to 'trmacros' as it was totally misleading before * destructors: introduce tfCheckedForDestructor flag in preparation of strict =destroy checking * test for invalid/too late destructor introductions * liftdestructors: make code robust for nimsuggest * --newruntime works for hello world again * newruntime: code generation for closures
* allow uints to appear in deep constant expressionsJacek Sieka2018-12-051-2/+1
|
* introduce nkTupleConstr AST node for unary tuple construction; breaking changeAndreas Rumpf2018-04-131-1/+1
|
* the .deprecated pragma for procs now supports a user-definable deprecation ↵Andreas Rumpf2018-02-021-1/+1
| | | | message
* preparations for language extensions: 'sink' and 'lent' typesAndreas Rumpf2018-01-071-1/+1
|
* deprecated unary '<'Andreas Rumpf2017-10-291-1/+1
|
* introduce a pre-processing pass for the concept bodiesZahary Karadjov2017-06-201-3/+5
| | | | | | | fixes #4982 fixes #3805 close #3414
* improved comment satement support in macros (#5904)Arne Döring2017-06-021-0/+1
|
* isDeepConstExpr helper can handle nkRangeAndreas Rumpf2017-05-011-1/+1
|
* update code from a time when unsigned didn't existAraq2017-02-161-1/+1
|
* fixes #5391Araq2017-02-161-1/+1
|
* removed tyArrayConstr completely from the compiler; introduced tyAlias ↵Araq2016-11-141-1/+1
| | | | instead in preparation for further bugfixes
* big refactoring: step 1Araq2016-10-311-1/+1
|
* Cleanup and fix isConstExpr to return true for all atomic node types.Matthew Baulch2016-08-271-4/+2
|
* Remove unnecessary result initialisations.Matthew Baulch2016-08-271-2/+1
|
* Remove useless/misleading comment. flattenStmts not only for patterns.Matthew Baulch2016-08-271-1/+0
|
* Remove unused procs getProcSym, getOpSym.Matthew Baulch2016-08-271-11/+0
|
* Remove (unused) flattenTree proc.Matthew Baulch2016-08-271-14/+0
|
* Remove (unused) swapOperands proc.Matthew Baulch2016-08-271-5/+0
|
* Rewrite cyclicTree. Performance improved by approx 50%.Matthew Baulch2016-08-271-20/+10
|
* fixes #4354Andreas Rumpf2016-08-041-7/+12
|
* fixes #2985Araq2015-06-251-4/+8
|
* VM: minor fixes to make lexim workAraq2015-04-201-42/+42
|
* fixes #1547Araq2014-11-271-1/+3
|
* Nimrod renamed to NimAraq2014-08-281-1/+1
|
* case consistency: cs:partial bootstraps on windowsAraq2013-12-291-2/+2
|
* case consistency part 1Araq2013-12-271-18/+18
|
* implemented large parts of the 'not nil' checkingAraq2013-06-091-2/+1
|
* Removes executable bit for text files.Grzegorz Adam Hankiewicz2013-03-161-0/+0
|
* first steps to implement object construction expressionsAraq2013-03-071-1/+1
|
* term rewriting macros fully implemented; still buggyAraq2012-09-031-0/+16
|
* distinguish properly between nkOpen and nkClosedSymChoiceAraq2012-08-261-1/+2
|
* made compiler more robust for idetools supportAraq2012-07-301-1/+1
|
* further steps to closure supportAraq2012-02-061-1/+1
|
* pragma blocks; fixed line information issue with user defined assertionsAraq2012-01-171-0/+4
|
* year 2012 for most copyright headersAraq2012-01-021-1/+1
|
* better code generation for constant aggregatesAraq2011-11-021-0/+13
|
* bugfix: proper cache for generic instantiationsAraq2011-07-211-23/+10
|
* bugfix: subranges in generics properly detectedAraq2011-06-291-2/+4
|
* slices are first class citizensAraq2011-04-221-3/+9
|
* got rid of some arcane module namesAraq2011-04-211-1/+1
|
* big repo cleanupAraq2011-04-121-0/+140