Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Expand hoisted default params in sem (#15270) | Clyybber | 2020-09-05 | 1 | -2/+1 |
| | | | | | | | | | * Expand hoisted default params in sem Introduce ast.newTree{I,IT} Add test for default params in procs * Cleanup * Simplify hoist transformation and expand test | ||||
* | expr => untyped; stmt => typed (#14804) | Timothee Cour | 2020-06-25 | 1 | -2/+2 |
| | | | | | * expr => untyped; stmt => typed * changelog + comment | ||||
* | remove tyOpt, mOpt (#14636) | Timothee Cour | 2020-06-12 | 1 | -1/+1 |
| | | | | | * remove tyOpt, mOpt * fixup | ||||
* | Fix typeSym.getImpl for ref types (#13752) | zah | 2020-03-26 | 1 | -4/+4 |
| | | | | | | | | | | | | | | | | | | | | | * Fix typeSym.getImpl for ref types * Fix a codegen issue affecting the test suite of nim-beacon-chain * Fix tests/stdlib/tjsonmacro To understand the fix better it may help to take a look at the history of the replaced code. The nil check that is removed in this commit was introduced in another fix that failed to identify the root cause of the issue - namely that we allow an object type to exist for which no ast is present: https://github.com/nim-lang/Nim/pull/9601/files The original intention of the code is more obvious here: https://github.com/nim-lang/Nim/pull/9538/files | ||||
* | Cosmetic compiler cleanup (#12718) | Clyybber | 2019-11-28 | 1 | -31/+31 |
| | | | | | | | | | | | | | | | | | | * 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 | ||||
* | fixes #12663 staticRead now creates a dependency for rebuilds (#12731) ↵ | Timothee Cour | 2019-11-25 | 1 | -0/+2 |
| | | | | | | | [backport] * fix #12663 staticRead * address comments | ||||
* | fix range.getType crash | Jasper Jenkins | 2019-09-05 | 1 | -2/+3 |
| | |||||
* | [refactoring] remove unused imports in the compiler and in some stdlib modules | Araq | 2019-07-18 | 1 | -1/+1 |
| | |||||
* | styleCheck: make the compiler and large parts of the stdlib compatible with ↵ | Araq | 2019-07-10 | 1 | -6/+6 |
| | | | | --styleCheck:error | ||||
* | rename tyExpr/tyStmt to tyUntyped/tyTyped (#11227) | Arne Döring | 2019-05-11 | 1 | -2/+2 |
| | |||||
* | code cleanup: there is no tyOptRef | Andreas Rumpf | 2019-02-22 | 1 | -1/+1 |
| | |||||
* | make code more readable | Andreas Rumpf | 2019-02-18 | 1 | -3/+3 |
| | |||||
* | fixes #9600 (#9601) | jcosborn | 2018-11-07 | 1 | -1/+4 |
| | |||||
* | getTypeImpl now returns pragmas for object types (#9538) | jcosborn | 2018-10-30 | 1 | -9/+7 |
| | |||||
* | fixes #9532 | Araq | 2018-10-28 | 1 | -1/+1 |
| | |||||
* | Unchecked arrays now have their own type (#9267) | LemonBoy | 2018-10-10 | 1 | -1/+5 |
| | |||||
* | Fix range type construction in the VM (#9205) | LemonBoy | 2018-10-09 | 1 | -2/+9 |
| | | | | | | The `range[X,Y]` representation is wrong, we use `range[X .. Y]` instead. Fixes #9194 | ||||
* | compiler refactoring; use typesafe path handing; docgen: render symbols ↵ | Andreas Rumpf | 2018-09-07 | 1 | -1/+1 |
| | | | | between modules | ||||
* | Custom pragmas in proc types (#8205) | cooldome | 2018-07-09 | 1 | -1/+2 |
| | |||||
* | refactoring: remove idents.legacy global variable and pass the IdentCache ↵ | Andreas Rumpf | 2018-05-27 | 1 | -26/+26 |
| | | | | around explicitly | ||||
* | remove more global variables in the Nim compiler | Andreas Rumpf | 2018-05-27 | 1 | -1/+1 |
| | |||||
* | preparations of making compiler/msgs.nim free of global variables | Andreas Rumpf | 2018-05-17 | 1 | -1/+1 |
| | |||||
* | remove ast.emptyNode global; cleanup configuration.nim | Araq | 2018-05-16 | 1 | -11/+11 |
| | |||||
* | transf and vmgen compile again | Andreas Rumpf | 2018-05-12 | 1 | -5/+5 |
| | |||||
* | Fix the return value of GetType and friends when given a `var T` type. (#7701) | Varriount | 2018-04-27 | 1 | -1/+6 |
| | |||||
* | introduce nkTupleConstr AST node for unary tuple construction; breaking change | Andreas Rumpf | 2018-04-13 | 1 | -1/+1 |
| | |||||
* | preparations for language extensions: 'sink' and 'lent' types | Andreas Rumpf | 2018-01-07 | 1 | -1/+3 |
| | |||||
* | modify getTypeImpl to reduce result to final implementation (#6891) | jcosborn | 2017-12-09 | 1 | -3/+3 |
| | | | | | * added test case for getTypeImpl * modify getTypeImpl to reduce result to final implementation | ||||
* | fix getTypeInst for tyGenericInst (#6868) | jcosborn | 2017-12-04 | 1 | -3/+6 |
| | |||||
* | deprecated unary '<' | Andreas Rumpf | 2017-10-29 | 1 | -3/+3 |
| | |||||
* | implemented new experimental scriptable import mechanism | Andreas Rumpf | 2017-10-01 | 1 | -44/+1 |
| | |||||
* | first steps of making 'opt' a first class type for Nim | Andreas Rumpf | 2017-09-25 | 1 | -1/+1 |
| | |||||
* | some work to make 'opt' a first class type | Andreas Rumpf | 2017-09-24 | 1 | -1/+2 |
| | |||||
* | Corrected tuple type to nkPar for unnamed tuples on getType (#6172) | Yuriy Glukhov | 2017-08-03 | 1 | -1/+2 |
| | |||||
* | fixed macros.getTypeImpl for a symbol of type tyGenericBody (#5788) (#5812) | jcosborn | 2017-05-14 | 1 | -1/+6 |
| | | | | | * fixed macros.getTypeImpl for a symbol of type tyGenericBody * added test case and commented test code | ||||
* | support derived values in non-generic user type classes | Zahary Karadjov | 2017-03-24 | 1 | -4/+7 |
| | |||||
* | introduce tyInferred for the unbound concept type params | Zahary Karadjov | 2017-03-24 | 1 | -0/+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. | ||||
* | fix getTypeImpl for tyEnum (#5568) | jcosborn | 2017-03-19 | 1 | -1/+3 |
| | | | | | * fixed getTypeImpl for tyEnum * fixed getType for enum and updated release notes about change | ||||
* | Fix sigsegv in getTypeImpl for unnamed tuple (#5440) | Fabian Keller | 2017-03-02 | 1 | -2/+7 |
| | | | avoid sigsegv in getTypeImpl for unnamed tuple; fixes #4862 | ||||
* | added system.gorgeEx that includes the exitCode; refs #4874; fixes #1994 | Araq | 2017-01-07 | 1 | -12/+12 |
| | |||||
* | fixes #5131 | Araq | 2016-12-20 | 1 | -1/+1 |
| | |||||
* | Merge branch 'devel' into sighashes | Araq | 2016-12-13 | 1 | -4/+9 |
|\ | |||||
| * | macros.getType: do not copy symbols if not necessary | Araq | 2016-12-07 | 1 | -4/+9 |
| | | |||||
* | | removed tyArrayConstr completely from the compiler; introduced tyAlias ↵ | Araq | 2016-11-14 | 1 | -2/+2 |
|/ | | | | instead in preparation for further bugfixes | ||||
* | Merge pull request #4945 from arnetheduck/cleanup-tyXxx | Andreas Rumpf | 2016-10-24 | 1 | -4/+1 |
|\ | | | | | Cleanup ty xxx | ||||
| * | clean up tyMutable remnants | Jacek Sieka | 2016-10-24 | 1 | -2/+1 |
| | | |||||
| * | clean up tyConst remnants | Jacek Sieka | 2016-10-24 | 1 | -2/+1 |
| | | |||||
| * | clean up tyBigNum remnants | Jacek Sieka | 2016-10-24 | 1 | -2/+1 |
| | | |||||
* | | Merge pull request #4872 from flyx/gorgefix | Andreas Rumpf | 2016-10-24 | 1 | -3/+6 |
|\ \ | |/ |/| | Fixes #4871 | ||||
| * | Fixes #4871 | Felix Krause | 2016-10-09 | 1 | -3/+6 |
| | |