summary refs log tree commit diff stats
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* Introduce localErrorNode (#17785)Clyybber2021-04-197-24/+27
|
* ic refactoring (#17778)Andreas Rumpf2021-04-197-159/+146
| | | | | * minor IC documentation update * IC: refactoring: removed the 'shared' type and fields, these were a leftover from an earlier design
* fix #12521(type alias for openArray) (#17593)flywind2021-04-191-1/+1
| | | | | | | * fix nim js cmp fails at CT * fix #12521 * address comments
* [ci skip] document compiler/ic/rodfiles.nim (#17771)Saem Ghani2021-04-191-0/+72
| | | | | | | | | | | | | | | | * [ci skip] document compiler/ic/rodfiles.nim Why? * understand how rodfile module works and a bit of the format * leave notes behind for others * rather than Araq guess what others need, he can fix what other glean * possible model for making the compiler more aproachable Bonus: * might have found a minor bug in `loadSection` * Update compiler/ic/rodfiles.nim Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* privateAccess now works with ref | ptr (#17760)Timothee Cour2021-04-192-4/+6
|
* declaredlocs followup: handle `cannot instantiate` errors (#17745)Timothee Cour2021-04-191-3/+3
|
* IC: fixes a long standing bug about DCE set computations (#17763)Andreas Rumpf2021-04-181-25/+33
|
* fix range to unsigned conversion (#17754)Tanguy Cizain2021-04-171-1/+1
|
* -d:nimDebug: calls doAssert false instead of quit (#17739)Timothee Cour2021-04-179-14/+20
|
* cString => cSourceString; tyCString => tyCstring so that error msgs show ↵Timothee Cour2021-04-1727-71/+71
| | | | cstring, not cString (#17744)
* IC: yet another embarrassing omission (#17743)Andreas Rumpf2021-04-174-10/+12
| | | | | * IC: yet another embarrassing omission * VM: fewer hacks that kept IC from working
* refs #17292 fix `repr`: `(discard)` now does't render as `discard` which ↵Timothee Cour2021-04-161-1/+7
| | | | | | | gave illegal code (#17455) * refs #17292 fix `repr` with (discard) * add tests * add more tests
* ic navigator tests (#17735)Andreas Rumpf2021-04-162-2/+3
| | | * IC navigator: first basic test
* `import foo {.all.}` reboot (#17706)Timothee Cour2021-04-1616-76/+177
|
* Fix array's high & low return type for empty arrays (#17705)Tanguy Cizain2021-04-151-0/+2
| | | | | | | | | * fix array.high/low return type * Add test for empty array low return type Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* IC: rodfiles: no floats (#17720)Andreas Rumpf2021-04-144-21/+18
|
* IC: first steps towards 'nim check --def --ic:on' (#17714)Andreas Rumpf2021-04-1410-12/+208
| | | | | | | | | * IC: first steps towards 'nim check --def --ic:on' * IC navigator: deduplicate output lines * IC navigator: progress * IC navigator: use a different nimcache entry * IC navigator: special logic for templates/macros * IC navigator: proper error messages * IC navigator: prepare for testing code; document only what currently works somewhat
* type with same name in different scope now works (#17710)Timothee Cour2021-04-142-7/+19
| | | | * type with same name in different scope now works * fix tests/enum/tenum.nim which was wrong because it was affected by this bug
* IC: code cleanup (#17708)Andreas Rumpf2021-04-131-45/+12
|
* IC: serialization bugfix (#17701)Andreas Rumpf2021-04-131-4/+4
|
* IC: integrity checking (#17695)Andreas Rumpf2021-04-116-3/+164
| | | | | | * IC: integrity checking: the plumbing code * progress * progress + bugfix (yes, the code already found a bug) * implemented integrity checking
* iterable[T] (#17196)Timothee Cour2021-04-1113-22/+71
| | | | | | | | * fix failing test toSeq in manual which now works * changelog * reject proc fn(a: iterable) * add iterable to spec * remove MCS/UFCS limitation that now works
* refs #15667 improve invalid indentation errors, report when & where `=` ↵Timothee Cour2021-04-102-4/+16
| | | | | | | | | | | could be missing (#16397) * refs #15667 improve invalid indentation errors * also show line info where = is missing * add test * add more tests
* IC: added converter test case (#17688)Andreas Rumpf2021-04-092-3/+10
| | | | | * IC: added converter test case * IC: make converter example work
* Genode platform fixes (#17521)Emery Hemingway2021-04-092-5/+11
| | | | | | | | | | | | | | | | | | | * Genode: move dyncall failures to runtime Do not use the "error" pragma to warn that dynamic library loading is not implemented, print a message at runtime and exit. * Genode: use stricter dataspace type in page allocator * Genode: remove compiler configuration from nim.cfg Self-hosting Nim is not supported on Genode and defining the cross-compilation environment can be done externally. * Genode: use new mutex API * Genode: call nim_component_construct as a C procedure * Genode: implement echo for NimStringV2
* make repr handle setters `foo=` (#17683)Timothee Cour2021-04-091-5/+8
|
* ast: add getPIdent (#17684)Timothee Cour2021-04-093-16/+19
| | | | | * ast: add getPIdent * fixup
* IC: added basic test case for methods (#17679)Andreas Rumpf2021-04-092-6/+27
| | | | | * IC: added basic test case for methods * IC: better methods test
* minor typos (#17668)flywind2021-04-071-2/+2
|
* removing warning imported and not used debugutils (#17660)rockcavera2021-04-071-1/+2
|
* fixes #17656 (#17657)Andreas Rumpf2021-04-071-1/+2
|
* add compiler/debugutils.nim to help debugging compiler (#17652)Timothee Cour2021-04-062-7/+35
| | | | | * add compiler/debugutils.nim * address comments
* fix #16898 #17621 (#17628)flywind2021-04-062-3/+6
| | | | | | * fix #16898 * fix #17621 * Update compiler/semtypes.nim
* fix #14850: `repr` now correctly renders `do` (#17623)Timothee Cour2021-04-031-7/+13
| | | | | | | * fix #14850: `repr` now correctly renders `do` * add tests * fix test
* repr: fix rendering of `'big`, `=destroy` etc (#17624)Timothee Cour2021-04-031-3/+19
|
* implement RFCs/294 ; disallow enum <=> enum conversion (#16351)Timothee Cour2021-04-033-5/+10
| | | | | | | | | | | * fix https://github.com/nim-lang/RFCs/issues/294 ; disallow enum <=> enum conversion * fix the runnableExamples that was the instigator of this RFC * legacy -d:nimLegacyConvEnumEnum * use -d:nimLegacyConvEnumEnum in important_package nimgame2 * add test for enum cast * improve changelog * add changelog: Changes affecting backward compatibility * cleanup changelog * fix changelog
* fix #17615(runnableExamples silently ignored if placed after some code) (#17619)flywind2021-04-021-15/+18
| | | Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* enable syntax highlighting for inline code (#17585)Andrey Makarov2021-04-021-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | * enable syntax highlighting for inline code * finish '.. default-role' and preliminary '.. role' implementation * more compact check in dirRole * set :literal: as default role for *.rst * Update lib/packages/docutils/rst.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * use whichRole for setting currRoleKind * Update lib/packages/docutils/rst.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * rename rnGeneralRole -> rnUnknownRole Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* a bit better message (#17606)flywind2021-04-011-2/+2
|
* misc fixes: build_all.sh, changelog (#17601)Timothee Cour2021-04-011-1/+1
| | | | | | | * fix a bug in build_all.sh: $@ => "$@" * remove getSocket from changelog following #17587 * remove unused import
* docgen: render pragmas by default except for a select list (and fix #9074) ↵Timothee Cour2021-04-013-13/+33
| | | | (#17054)
* fix #17190 `nimscript` now accepts arbitrary file extensions for `nim e ↵flywind2021-04-012-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | main.customext` (#17596) * fix #17190 * cah * merge * Update tnimscriptwithnimext.nim * Update tnimscriptwithmacro.nims * Apply suggestions from code review * Delete tnimscriptwithnimext.nim * Update tests/tools/tnimscriptwithmacro.nims * fix * fix * add a test * Apply suggestions from code review Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Apply suggestions from code review * Update changelog.md Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* better error messages for .raise effect analysis (#17595)Andreas Rumpf2021-03-311-5/+7
|
* fix #17572 (#17586)Timothee Cour2021-03-311-1/+2
|
* fix #14585, fix #17589: access to static param now works (#17590)Timothee Cour2021-03-312-2/+2
|
* fix #12282 distinct now does not create erroneous copy in VM (#17594)Timothee Cour2021-03-311-2/+12
|
* makes DrNim compile again (#17584)Andreas Rumpf2021-03-301-1/+2
|
* parser.nim: simply layout changeAraq2021-03-301-1/+2
|
* fix #17512 (#17520)flywind2021-03-301-1/+8
|
* unify tuple expressions (#13793)Arne Döring2021-03-304-7/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * unify tuple expressions * fix test * fix test * apply feedback * Handle empty tuples * Fix rendering named unary tuple * Protect static NimNode against stripping * Slightly less hacky * Revert "Slightly less hacky" This reverts commit 170c5aec0addc029f637afbc948700ca006b7942. * Slightly less hacky * Cleanup * Fix test * Fix another test * Add condsym * Rebase fallout * changelog: Move from compiler changes to language changes * Add stricter tests * Add empty tuple example to doc/astspec * Fix test Co-authored-by: Clyybber <darkmine956@gmail.com>