Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | IC: bugfixes (WIP) (#16836) | Andreas Rumpf | 2021-02-02 | 1 | -4/+4 |
| | | | | | | | | * minor improvements * IC: added the required logic for compilerProcs * LazySym ftw * we need this testing logic * reimplement the old way we use for module package creation * fixes a regression; don't pick module names if you can avoid it | ||||
* | IC: next steps (#16550) | Andreas Rumpf | 2021-01-07 | 1 | -19/+8 |
| | | | | | | | | | | | | | | | | | | * cleanups * ast.nim: cleanups * IC: no more sym.tab field, stored externally in the module graph * nimble compiles again * rodfiles: store bitwidth of integers and the endianness in the cookie because we serialize 'int' directly * rodfiles: added compilerproc and export sections * rodfiles: added all the missing sections * rodfiles: track the missing information * IC: architecture for lazy loading of proc bodies * make tests green again * completed the lazy loading of proc bodies * symbol lookup integration, part 1 * symbol lookup integration, part 2 * symbol lookup integration, part 3 * make tcompilerapi work again * rodfiles: fixed config change handling | ||||
* | big steps torwards an efficient, simple IC implementation (#16543) | Andreas Rumpf | 2021-01-02 | 1 | -1/+2 |
| | | | | | | | | | | | | | | | | | | | * reworked ID handling * the packed AST now has its own ID mechanism * basic serialization code works * extract rodfiles to its own module * rodfiles: store and compare configs * rodfiles: store dependencies * store config at the end * precise dependency tracking * dependency tracking for rodfiles * completed loading of PSym, PType, etc * removed dead code * bugfix: do not realloc seqs when taking addr into an element * make IC opt-in for now * makes tcompilerapi green again * final cleanups Co-authored-by: Andy Davidoff <github@andy.disruptek.com> | ||||
* | refactorings to prepare the compiler for IC (#15935) | Andreas Rumpf | 2020-12-17 | 1 | -40/+127 |
| | | | | | | | | | | | | | | * added ic specific Nim code; WIP * make the symbol import mechanism lazy; WIP * ensure that modules can be imported multiple times * ambiguity checking * handle converters and TR macros properly * make 'enum' test category green again * special logic for semi-pure enums * makes nimsuggest tests green again * fixes nimdata * makes nimpy green again * makes more important packages work | ||||
* | explicit ID generation for easier IC (#15559) | Andreas Rumpf | 2020-10-25 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | * refactoring: idents don't need inheritance * refactoring: adding an IdGenerator (part 1) * refactoring: adding an IdGenerator (part 2) * refactoring: adding an IdGenerator (part 3) * refactoring: adding an IdGenerator (part 4) * refactoring: adding an IdGenerator (part 5) * refactoring: adding an IdGenerator (part 5) * IdGenerator must be a ref type; hello world works again * make bootstrapping work again * progress: add back the 'exactReplica' ideas * added back the missing exactReplica hacks * make tcompilerapi work again * make important packages green * attempt to fix the build for 32 bit machines (probably need a better solution here) | ||||
* | compiler: minor code cleanups | Araq | 2020-07-27 | 1 | -2/+1 |
| | |||||
* | Cosmetic compiler cleanup (#12718) | Clyybber | 2019-11-28 | 1 | -26/+26 |
| | | | | | | | | | | | | | | | | | | * 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 #5050; fixes #11826 (#12606) [backport] | cooldome | 2019-11-07 | 1 | -0/+4 |
| | |||||
* | Fix spellings (#12277) [backport] | Federico Ceratto | 2019-09-27 | 1 | -1/+1 |
| | |||||
* | Small ast.nim cleanup (#12156) | Clyybber | 2019-09-09 | 1 | -3/+3 |
| | | | | | * Remove sonsLen * Use Indexable | ||||
* | fixes 'unused module' feature for 32 bit builds of Nim for good [nobackport] | Araq | 2019-08-09 | 1 | -2/+2 |
| | |||||
* | fixes #11809 | Andreas Rumpf | 2019-08-08 | 1 | -11/+12 |
| | |||||
* | fixes #11790 [nobackport] | Araq | 2019-07-19 | 1 | -1/+1 |
| | |||||
* | Merge branch 'devel' into araq-detect-unused-imports | Andreas Rumpf | 2019-07-18 | 1 | -2/+2 |
|\ | |||||
| * | [refactoring] remove unused imports in the compiler and in some stdlib modules | Araq | 2019-07-18 | 1 | -2/+2 |
| | | |||||
* | | [feature] detect unused imports | Araq | 2019-07-17 | 1 | -0/+1 |
|/ | |||||
* | styleCheck: make the compiler and large parts of the stdlib compatible with ↵ | Araq | 2019-07-10 | 1 | -1/+1 |
| | | | | --styleCheck:error | ||||
* | fixes #3333 | Andreas Rumpf | 2019-07-06 | 1 | -6/+6 |
| | |||||
* | Replace countup(x, y-1) with x ..< y | Clyybber | 2019-05-07 | 1 | -4/+4 |
| | |||||
* | Fix 105, few fixes for 101 (#11148) | genotrance | 2019-05-04 | 1 | -1/+1 |
| | |||||
* | Deprecate gc v2 (#10151) | Neelesh Chandola | 2019-01-01 | 1 | -2/+2 |
| | | | | | | * Deprecate gc v2 * warnDeprecated now has custom messages | ||||
* | Nimsuggest now shows gotodef for y in `from x import y` (#10023) | Neelesh Chandola | 2018-12-18 | 1 | -0/+1 |
| | |||||
* | IC: further progress | Araq | 2018-11-22 | 1 | -1/+1 |
| | |||||
* | compiler refactoring; use typesafe path handing; docgen: render symbols ↵ | Andreas Rumpf | 2018-09-07 | 1 | -8/+6 |
| | | | | between modules | ||||
* | fixes #8852 | Araq | 2018-09-03 | 1 | -5/+5 |
| | |||||
* | fixes #8066 | Araq | 2018-08-31 | 1 | -2/+8 |
| | |||||
* | Fix nkImportAs regression (#8796) | Oscar Nihlgård | 2018-08-28 | 1 | -9/+14 |
| | |||||
* | Fix for module alias inside brackets (#8726) | Oscar Nihlgård | 2018-08-23 | 1 | -7/+19 |
| | |||||
* | incremental compilation: implemented basic replay logic | Andreas Rumpf | 2018-06-02 | 1 | -11/+13 |
| | |||||
* | baby steps for incremental compilation | Andreas Rumpf | 2018-05-30 | 1 | -2/+3 |
| | |||||
* | refactoring: remove idents.legacy global variable and pass the IdentCache ↵ | Andreas Rumpf | 2018-05-27 | 1 | -2/+2 |
| | | | | 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 | -2/+2 |
| | |||||
* | fixes testament compilation | Araq | 2018-05-14 | 1 | -5/+8 |
|\ | |||||
| * | implement the export/except statement | Zahary Karadjov | 2018-05-07 | 1 | -5/+8 |
| | | |||||
* | | options.nim: no global variables anymore | Andreas Rumpf | 2018-05-13 | 1 | -1/+2 |
| | | |||||
* | | make nimsuggest compile again | Andreas Rumpf | 2018-05-13 | 1 | -1/+1 |
| | | |||||
* | | pragmas compiles again | Andreas Rumpf | 2018-05-11 | 1 | -17/+17 |
|/ | |||||
* | the 'deprecated' pragma for modules now supports an error message | Araq | 2018-04-06 | 1 | -1/+4 |
| | |||||
* | Jump to definition on import will open the imported module (#7155) | Yuriy Glukhov | 2018-01-31 | 1 | -2/+2 |
| | |||||
* | make type vs proc ambiguous handling more consistent; fixes #6726; fixes #6693 | Araq | 2017-12-15 | 1 | -1/+1 |
| | |||||
* | Add sections (type, var, let, const, using) support for reorder pragma (#6326) | BigEpsilon | 2017-10-28 | 1 | -73/+1 |
| | |||||
* | implemented new experimental scriptable import mechanism | Andreas Rumpf | 2017-10-01 | 1 | -10/+40 |
| | |||||
* | .pure enums are much more convenient to use now | Andreas Rumpf | 2017-09-17 | 1 | -2/+10 |
| | |||||
* | fixes #5185 | Andreas Rumpf | 2017-02-08 | 1 | -0/+1 |
| | |||||
* | fixes #5185 | Andreas Rumpf | 2017-01-06 | 1 | -2/+3 |
| | |||||
* | implements module grouping for the import statement | Andreas Rumpf | 2016-12-21 | 1 | -7/+19 |
| | |||||
* | recursive modules are only detected to improve error messages | Andreas Rumpf | 2016-11-24 | 1 | -3/+3 |
| | |||||
* | make tests green again | Andreas Rumpf | 2016-11-24 | 1 | -1/+1 |
| | |||||
* | disallow recursive module dependencies | Araq | 2016-11-23 | 1 | -3/+17 |
| |