summary refs log tree commit diff stats
path: root/compiler/semasgn.nim
Commit message (Collapse)AuthorAgeFilesLines
* code cleanup: there is no tyOptRefAndreas Rumpf2019-02-221-2/+1
|
* gc: destructors is beginning to work (#10483)Andreas Rumpf2019-01-291-0/+5
| | | | | | | | | | | | | | | | * kochdocs.nim: code cleanup * docgen: nicer indentation * parser.nim: code cleanup * fixes #10458 * make tests green again * make =destroy mixins * gc:destructors: produced C code is almost working * --gc:destructors simple program compiles (but leaks memory) * gc:destructors make examples compile in C++ mode * destructors: string implementation bugfixes * strs.nim: minor code cleanup * destructors: builtin seqs are beginning to work * remove debugging helpers
* destructors: first step towards fixing #9617 (#10341)cooldome2019-01-181-63/+63
|
* destructors: lift type bound operations for case and distinct objects (#10238)cooldome2019-01-101-5/+41
|
* destructors: defensive programming against wrong generated destructor for ↵Andreas Rumpf2018-12-111-5/+9
| | | | string/seq
* fixes #9692Araq2018-11-151-3/+6
|
* added first version of a nimfind tool for the poor souls that don't have a ↵Andreas Rumpf2018-11-141-3/+3
| | | | good nimsuggest integretation
* language cleanup: the .unchecked pragma is deadAraq2018-11-061-1/+1
|
* Unchecked arrays now have their own type (#9267)LemonBoy2018-10-101-2/+2
|
* make tests green againAndreas Rumpf2018-09-241-1/+2
|
* destroyer pass: adaptations for the new destructor based runtimeAndreas Rumpf2018-07-271-5/+23
|
* enable destructors without the --newruntime switchAndreas Rumpf2018-07-041-5/+2
|
* refactoring: remove idents.legacy global variable and pass the IdentCache ↵Andreas Rumpf2018-05-271-7/+7
| | | | around explicitly
* platform.nim doesn't use globals anymore; prepare msgs.nim for not using globalsAndreas Rumpf2018-05-181-1/+1
|
* remove ast.emptyNode global; cleanup configuration.nimAraq2018-05-161-2/+2
|
* semstmts compiles againAndreas Rumpf2018-05-121-26/+26
|
* .experimental can now be used to enable specific featuresAndreas Rumpf2018-04-241-2/+2
|
* preparations for language extensions: 'sink' and 'lent' typesAndreas Rumpf2018-01-071-3/+3
|
* make Nim compile with older nim versionsAndreas Rumpf2017-12-281-1/+1
|
* more progress on destructors; removed old destructor based code as it proved ↵Araq2017-12-011-4/+10
| | | | confusing
* deprecated unary '<'Andreas Rumpf2017-10-291-3/+3
|
* destructors: supportsCopyMem finally works for recursive typesAraq2017-10-261-0/+2
|
* topttree destructor finally worksAraq2017-10-261-29/+0
|
* destructors: work in progressAraq2017-10-261-7/+39
|
* added broken tbintree testAndreas Rumpf2017-10-191-4/+3
|
* make nested custom seqs workAndreas Rumpf2017-10-191-0/+1
|
* make destructors more robust against unchecked arraysAndreas Rumpf2017-10-191-1/+1
|
* destructors: irresponsibly simple tcustomseq test worksAndreas Rumpf2017-10-171-10/+3
|
* destructors: lift type bound ops to objects and arrays etcAndreas Rumpf2017-10-171-28/+64
|
* destructors: preparations for upcoming changesAraq2017-10-171-1/+11
|
* minor refactorings for better destructorsAndreas Rumpf2017-10-141-3/+3
|
* first steps of making 'opt' a first class type for NimAndreas Rumpf2017-09-251-1/+1
|
* some work to make 'opt' a first class typeAndreas Rumpf2017-09-241-2/+2
|
* introduce tyInferred for the unbound concept type paramsZahary Karadjov2017-03-241-1/+1
| | | | | | | | | | | | | | | | | | * Why is tyInferred needed? The bindings in TCandidate are capable of inferring types within a single call expression. In concepts, we need to infer types in the same way, but across the whole body of the concept. Previously, once a concept type param was inferred, it was destructively mutated using t.assignType, but this proved to be problematic in the presence of overloads, because the bindings established while a non-matching overload is tested must be reverted/forgotten. tyInferred offers a non-destructive way to keep track of the inference progress. While introducing new types usually requires a lot of code paths in the compiler to updated, currently tyInferred is only a short-lived type within the concept body pass and it's unlikely to introduce breakage elsewhere in the compiler.
* make tests green againAndreas Rumpf2017-02-241-0/+1
|
* big compiler refactoring; avoid globals for multi method dispatcher generationAndreas Rumpf2017-02-221-3/+3
|
* removed tyArrayConstr completely from the compiler; introduced tyAlias ↵Araq2016-11-141-3/+3
| | | | instead in preparation for further bugfixes
* clean up tyMutable remnantsJacek Sieka2016-10-241-2/+2
|
* clean up tyConst remnantsJacek Sieka2016-10-241-2/+2
|
* clean up tyBigNum remnantsJacek Sieka2016-10-241-2/+2
|
* remove remnants of tyIterJacek Sieka2016-10-241-1/+2
|
* fixes #4673Andreas Rumpf2016-09-011-1/+2
|
* fixes #4371Andreas Rumpf2016-07-081-1/+1
|
* overloading of '=' worksAraq2015-04-061-0/+1
|
* first implementation of overloading of '='; missing: rewriting let/var sectionsAraq2015-04-061-130/+210
|
* minor todo updateAraq2015-03-231-1/+1
|
* concept example from the manual now works againAraq2015-03-231-4/+10
|
* Fix typosFederico Ceratto2015-02-151-1/+1
|
* nimsuggest improvementsAraq2015-01-301-1/+1
|
* Happy new year!Guillaume Gelin2015-01-061-1/+1
|