summary refs log tree commit diff stats
path: root/compiler/magicsys.nim
Commit message (Collapse)AuthorAgeFilesLines
* cString => cSourceString; tyCString => tyCstring so that error msgs show ↵Timothee Cour2021-04-171-1/+1
| | | | cstring, not cString (#17744)
* `import foo {.all.}` reboot (#17706)Timothee Cour2021-04-161-0/+1
|
* IC: bugfixes (WIP) (#16836)Andreas Rumpf2021-02-021-0/+2
| | | | | | | | * 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
* remove conditionals on nimHasUserErrors, nimNoNilSeqs2, nimNoNilSeqs (#16861)Timothee Cour2021-01-291-2/+0
| | | | | | | | | * cleanup docs for type(nil) | type(nil); simplify nimHasUserErrors * simplify nimNoNilSeqs2 * simplify nimNoNilSeqs * fixup
* IC: next steps (#16705)Andreas Rumpf2021-01-141-50/+0
| | | | | | | | | | | * code cleanups * refactorings for IC * more refactorings for IC * IC: attach the 'nil' type to its module * IC: refactorings and improvements * IC: progress * IC: more serialization fixes * IC: embarrassing omission * code cleanups
* IC: next steps (#16550)Andreas Rumpf2021-01-071-5/+2
| | | | | | | | | | | | | | | | | | * 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 Rumpf2021-01-021-8/+8
| | | | | | | | | | | | | | | | | | | * 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>
* explicit ID generation for easier IC (#15559)Andreas Rumpf2020-10-251-15/+15
| | | | | | | | | | | | | | | | | * 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)
* Implements RFCs #209 (#13995)cooldome2020-04-161-0/+25
| | | | | * add test * add changelod entry Co-authored-by: cooldome <ariabushenko@bk.ru>
* miscellaneous bug fixes (part 3) (#13304)Timothee Cour2020-02-071-2/+4
| | | | | | | | | | * fix deprecation; fix indentation * git clone: use -q * fix Warning: pragma before generic parameter list is deprecated; fix typo * bugfix: sysTypeFromName("float64") was never cached
* Cosmetic compiler cleanup (#12718)Clyybber2019-11-281-2/+2
| | | | | | | | | | | | | | | | | | * 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
* [refactoring] remove unused imports in the compiler and in some stdlib modulesAraq2019-07-181-1/+1
|
* even more strict isNil handling for strings/seqs in order to detect bugsAraq2018-08-221-1/+2
|
* baby steps for incremental compilationAndreas Rumpf2018-05-301-10/+1
|
* refactoring: remove idents.legacy global variable and pass the IdentCache ↵Andreas Rumpf2018-05-271-15/+5
| | | | around explicitly
* remove more global variables in the Nim compilerAndreas Rumpf2018-05-271-1/+1
|
* make tests green againAndreas Rumpf2018-05-181-1/+1
|
* platform.nim doesn't use globals anymore; prepare msgs.nim for not using globalsAndreas Rumpf2018-05-181-2/+2
|
* options.nim: no global variables anymoreAndreas Rumpf2018-05-131-2/+2
|
* sem pass compiles againAndreas Rumpf2018-05-121-3/+6
|
* big refactoring: magicsys compiles againAndreas Rumpf2018-05-101-93/+86
|
* make tests green againAraq2016-11-011-1/+1
|
* refactoring complete: explicit ident cacheAraq2016-10-311-0/+4
|
* big refactoring: step 1Araq2016-10-311-0/+4
|
* fixes #4295Andreas Rumpf2016-06-071-5/+9
|
* added undocumented exportNims pragma for Nimscript supportAraq2015-10-031-16/+22
|
* compiler: Trim .nim files trailing whitespaceAdam Strzelecki2015-09-041-13/+13
| | | | via OSX: find . -name '*.nim' -exec sed -i '' -E 's/[[:space:]]+$//' {} +
* implemented 'guard' annotationAraq2014-09-211-1/+1
|
* the big renamefest: first stepsAraq2014-08-221-5/+7
|
* some progress for jester+asyncAraq2014-06-271-0/+2
|
* case consistency: cs:partial bootstraps on windowsAraq2013-12-291-1/+1
|
* case consistency: next stepsAraq2013-12-291-1/+1
|
* case consistency part 4Araq2013-12-271-7/+7
|
* case consistency part 1Araq2013-12-271-9/+8
|
* fixes #578Araq2013-08-301-1/+1
|
* float64 is now an alias to 'float'; fixes #545Araq2013-08-301-4/+9
|
* implemented large parts of the 'not nil' checkingAraq2013-06-091-1/+15
|
* get rid of ImportTablePos and ModuleTablePosZahary Karadjov2013-05-121-2/+0
|
* Removes executable bit for text files.Grzegorz Adam Hankiewicz2013-03-161-0/+0
|
* small improvementsAraq2013-02-271-1/+4
|
* temporary debugging code for the memory leak investigationZahary Karadjov2012-11-281-0/+9
|
* exception tracking barely works; but disabledAraq2012-10-311-1/+1
|
* 'addSon' for types deprecated for 'int literal type' analysisAraq2012-07-091-0/+10
|
* changed integer promotion rules; breaks bootstrapping and lots of codeAraq2012-07-081-14/+41
|
* changed integer promotion rules; added math.fmodAraq2012-06-281-2/+21
|
* better support for unsigned integers.Zahary Karadjov2012-06-111-0/+6
|
* year 2012 for most copyright headersAraq2012-01-021-1/+1
|
* got rid of nstrtabs and nhashes modulesAraq2011-06-101-3/+3
|
* big repo cleanupAraq2011-04-121-0/+87