summary refs log tree commit diff stats
path: root/compiler/semasgn.nim
Commit message (Collapse)AuthorAgeFilesLines
* 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
|
* improvements for nimfixAraq2014-09-101-0/+1
|
* updated the compiler to use the new symbol namesAraq2014-08-281-0/+196