Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | drnim: tiny progress (#13882) | Andreas Rumpf | 2020-04-15 | 1 | -0/+21 |
| | | | | | | | | | | | * drnim: tiny progress * refactoring complete * drnim: prove .ensures annotations * Moved code around to avoid code duplication * drnim: first implementation of the 'old' property * drnim: be precise about the assignment statement * first implementation of --assumeUnique * progress on forall/exists handling | ||||
* | DrNim (Nim compiler with Z3 integration) (#13743) | Andreas Rumpf | 2020-03-31 | 1 | -0/+6 |
| | | | | | | | | | | | | | | | | | | | | | | | | * code cleanups and feature additions * added basic test and koch/CI integration * make it build on Unix * DrNim: now buildable on Unix, only takes 10 minutes, enjoy * added basic documentation for DrNim which can also be seen as the RFC we're following * drnim: change the build setup so that drnim.exe ends up in bin/ * makes simple floating point ranges work * added basic float range check * drnim: teach Z3 about Nim's range types plus code refactoring * drnim: make unsigned numbers work * added and fixed index checking under setLen * first implementation of .ensures, .invariant and .assume (.requires still missing and so is proc type compatibility checking * drnim: .requires checking implemented * drnim: implemented .ensures properly * more impressive test involving min() * drnim: check for proc type compatibility and base method compatibility wrt .requires and .ensures * testament: support for 'pattern <directory> * koch: uses new <directory> feature of testament * drnim: added tiny musings about 'old' * Make testament work with old SSL versions * koch: add support for 'koch drnim -d:release' * drnim: preparations for the param.old notation | ||||
* | fix #13730 (#13787) | Timothee Cour | 2020-03-28 | 1 | -2/+6 |
| | |||||
* | trees.nim: compare floating points by their bitpatterns because NaN ↵ | Araq | 2020-03-23 | 1 | -1/+1 |
| | | | | comparisions are always false (WORST design in the history of computing!) | ||||
* | trees.nim: compare floating points by their bitpatterns because NaN ↵ | Araq | 2020-03-23 | 1 | -1/+1 |
| | | | | comparisions are always false (WORST design in the history of computing!) | ||||
* | new feature: --staticBoundChecks:on to enforce static array index checking ↵ | Andreas Rumpf | 2020-03-18 | 1 | -0/+1 |
| | | | | (#10965) | ||||
* | better support for PROGMEM like annotations for lets/vars; fixes #12216 (#12799) | Andreas Rumpf | 2019-12-05 | 1 | -5/+12 |
| | |||||
* | Cosmetic compiler cleanup (#12718) | Clyybber | 2019-11-28 | 1 | -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) | Clyybber | 2019-09-09 | 1 | -5/+5 |
| | | | | | * Remove sonsLen * Use Indexable | ||||
* | [refactoring] remove unused imports in the compiler and in some stdlib modules | Araq | 2019-07-18 | 1 | -1/+1 |
| | |||||
* | Render deprecated pragmas (#8886) | LemonBoy | 2019-06-03 | 1 | -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 ..< y | Clyybber | 2019-05-07 | 1 | -3/+3 |
| | |||||
* | introduce temporary <//> for 'owned' to get this compile with 0.19 (#11145) | Andreas Rumpf | 2019-05-02 | 1 | -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 Rumpf | 2019-03-23 | 1 | -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 expressions | Jacek Sieka | 2018-12-05 | 1 | -2/+1 |
| | |||||
* | introduce nkTupleConstr AST node for unary tuple construction; breaking change | Andreas Rumpf | 2018-04-13 | 1 | -1/+1 |
| | |||||
* | the .deprecated pragma for procs now supports a user-definable deprecation ↵ | Andreas Rumpf | 2018-02-02 | 1 | -1/+1 |
| | | | | message | ||||
* | preparations for language extensions: 'sink' and 'lent' types | Andreas Rumpf | 2018-01-07 | 1 | -1/+1 |
| | |||||
* | deprecated unary '<' | Andreas Rumpf | 2017-10-29 | 1 | -1/+1 |
| | |||||
* | introduce a pre-processing pass for the concept bodies | Zahary Karadjov | 2017-06-20 | 1 | -3/+5 |
| | | | | | | | fixes #4982 fixes #3805 close #3414 | ||||
* | improved comment satement support in macros (#5904) | Arne Döring | 2017-06-02 | 1 | -0/+1 |
| | |||||
* | isDeepConstExpr helper can handle nkRange | Andreas Rumpf | 2017-05-01 | 1 | -1/+1 |
| | |||||
* | update code from a time when unsigned didn't exist | Araq | 2017-02-16 | 1 | -1/+1 |
| | |||||
* | fixes #5391 | Araq | 2017-02-16 | 1 | -1/+1 |
| | |||||
* | removed tyArrayConstr completely from the compiler; introduced tyAlias ↵ | Araq | 2016-11-14 | 1 | -1/+1 |
| | | | | instead in preparation for further bugfixes | ||||
* | big refactoring: step 1 | Araq | 2016-10-31 | 1 | -1/+1 |
| | |||||
* | Cleanup and fix isConstExpr to return true for all atomic node types. | Matthew Baulch | 2016-08-27 | 1 | -4/+2 |
| | |||||
* | Remove unnecessary result initialisations. | Matthew Baulch | 2016-08-27 | 1 | -2/+1 |
| | |||||
* | Remove useless/misleading comment. flattenStmts not only for patterns. | Matthew Baulch | 2016-08-27 | 1 | -1/+0 |
| | |||||
* | Remove unused procs getProcSym, getOpSym. | Matthew Baulch | 2016-08-27 | 1 | -11/+0 |
| | |||||
* | Remove (unused) flattenTree proc. | Matthew Baulch | 2016-08-27 | 1 | -14/+0 |
| | |||||
* | Remove (unused) swapOperands proc. | Matthew Baulch | 2016-08-27 | 1 | -5/+0 |
| | |||||
* | Rewrite cyclicTree. Performance improved by approx 50%. | Matthew Baulch | 2016-08-27 | 1 | -20/+10 |
| | |||||
* | fixes #4354 | Andreas Rumpf | 2016-08-04 | 1 | -7/+12 |
| | |||||
* | fixes #2985 | Araq | 2015-06-25 | 1 | -4/+8 |
| | |||||
* | VM: minor fixes to make lexim work | Araq | 2015-04-20 | 1 | -42/+42 |
| | |||||
* | fixes #1547 | Araq | 2014-11-27 | 1 | -1/+3 |
| | |||||
* | Nimrod renamed to Nim | Araq | 2014-08-28 | 1 | -1/+1 |
| | |||||
* | case consistency: cs:partial bootstraps on windows | Araq | 2013-12-29 | 1 | -2/+2 |
| | |||||
* | case consistency part 1 | Araq | 2013-12-27 | 1 | -18/+18 |
| | |||||
* | implemented large parts of the 'not nil' checking | Araq | 2013-06-09 | 1 | -2/+1 |
| | |||||
* | Removes executable bit for text files. | Grzegorz Adam Hankiewicz | 2013-03-16 | 1 | -0/+0 |
| | |||||
* | first steps to implement object construction expressions | Araq | 2013-03-07 | 1 | -1/+1 |
| | |||||
* | term rewriting macros fully implemented; still buggy | Araq | 2012-09-03 | 1 | -0/+16 |
| | |||||
* | distinguish properly between nkOpen and nkClosedSymChoice | Araq | 2012-08-26 | 1 | -1/+2 |
| | |||||
* | made compiler more robust for idetools support | Araq | 2012-07-30 | 1 | -1/+1 |
| | |||||
* | further steps to closure support | Araq | 2012-02-06 | 1 | -1/+1 |
| | |||||
* | pragma blocks; fixed line information issue with user defined assertions | Araq | 2012-01-17 | 1 | -0/+4 |
| | |||||
* | year 2012 for most copyright headers | Araq | 2012-01-02 | 1 | -1/+1 |
| | |||||
* | better code generation for constant aggregates | Araq | 2011-11-02 | 1 | -0/+13 |
| |