summary refs log tree commit diff stats
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* properly fix #10053 ; `FieldDefect` msg now shows discriminant value + ↵Timothee Cour2021-08-139-38/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lineinfo, in all backends (c,vm,js) (#11955) * fix #10053 FieldError for vm * fixup * FieldError now also shows runtime value of discriminant * fix field error reporting in vm * also report culprit line info in err msg * fix errors for newruntime 2 * fix for js * fixup * PRTEMP4 * works * works * works perfect * refactor * std/private/repr_impl * suppport --gc:arc * cleanup * refactor * simplify * simplify * simplify * fixup * move out compiler.vmgen.genCustom * fixup * fixup * add tests * revert compiler/debugutils.nim * simplify reprDiscriminant * fixup * lib/std/private/repr_impl.nim -> lib/system/repr_impl.nim * try to fix D20210812T165220 * honor --declaredlocs * control toFileLineCol via --declaredlocs
* fixes #18643 [backport:1.0] (#18678)Andreas Rumpf2021-08-121-1/+1
|
* fix #18674 --nimcache now works better with --os:windows (#18675)Timothee Cour2021-08-111-0/+4
|
* fixes #18665 DFA generator bug (#18676)Andreas Rumpf2021-08-111-0/+6
|
* fix: `var a{.foo.} = expr` inside templates (refs #15920) (except when `foo` ↵Timothee Cour2021-08-112-18/+32
| | | | | | | | | | | is overloaded) (#13869) * fix: `var a{.foo.} = expr` inside templates * add test * improve tdecls test * improve tests * add failing test * PRTEMP * fixup
* --cc:env now works correctly to assign linker executable, allowing to ↵Timothee Cour2021-08-111-1/+1
| | | | | | | cross-compile/run for windows on osx via wine (#18672) * --cc:env now works correctly to assign linker executable, allowing using wine on osx * fixup
* Remove unused imports, and deprecated function usage (#18663)Kyle Brown2021-08-112-3/+3
| | | | | | | * clean up imports and slice to remove delete * revert buggy code * Replace "delete" with setlen to remove depreciation warning
* Add optional recursive arg to distinctBase (v2) (#18659)Timothee Cour2021-08-091-2/+3
| | | | | | * Add optional recursive arg to distinctBase * Add docs and examples Co-authored-by: ALANVF <alan.invents@gmail.com>
* make proc names consistent (#18626)flywind2021-08-011-5/+5
| | | | | * rename `endswith` to `endsWith` * rename
* fixes #18371 (#18617)Andreas Rumpf2021-07-301-2/+5
|
* refs #16613: check opcWrDeref for nil (#18613)Timothee Cour2021-07-301-5/+4
|
* implements overloadable enum values; WIP (#18470)Andreas Rumpf2021-07-288-10/+76
| | | | | * implements overloadable enum values * simpler code
* support same-line doc comments in routines (#18595)Timothee Cour2021-07-271-0/+7
| | | | * support same-line comments in routines * remove assert as per review comment
* fixes #18570 (#18599)Andreas Rumpf2021-07-271-2/+3
|
* delEnv now works at CT (#18568)Timothee Cour2021-07-271-1/+2
|
* add comment to astalgo.debug (#18594)Timothee Cour2021-07-271-0/+3
|
* Fixed const tuples in inferred generics (#18598)Jason Beetham2021-07-271-17/+16
|
* fixes #18565 (#18593)Andreas Rumpf2021-07-272-12/+14
| | | * fixes #18565
* fix #18578 (#18580)flywind2021-07-271-6/+9
| | | | | | | | | | | | | * fix #18578 * add tests * tiny * apply changes * typo * add removeStaticFile
* don't use plus instead of space (#18589)Miran2021-07-261-2/+2
|
* fixes #18558 again (#18586)Andreas Rumpf2021-07-261-0/+2
|
* added missing .inline for toCCharAraq2021-07-261-1/+1
|
* docgen: sort symbols (fix #17910) (#18560)Andrey Makarov2021-07-251-14/+84
| | | | | | | | | | | | | | * docgen: sort symbols (fix #17910) * add workaround + change naming * switch to a dedicated sort comparator * fix numbers with unequal string lengths * dedicated `sortName` instead of `plainNameEsc`: * more compact names for non-overloaded symbols * more predictable Ascii sort (e.g. `<` instead of `&lt;`)
* fixes #18385 (#18571)Saem Ghani2021-07-251-2/+10
| | | | needs a more permanent fix by better incorporating IC, but fixes nimsuggest highlighting for now.
* refactoring: removed dead code (#18567)Andreas Rumpf2021-07-244-17/+11
|
* rename nimFpRoundtrips => nimPreviewFloatRoundtrip (#18566)Timothee Cour2021-07-231-1/+1
|
* fixes #18558 (#18563)Andreas Rumpf2021-07-231-16/+28
| | | | | * fixes #18558 * better fix
* Fixed template const tuple unpacking (#18562)Jason Beetham2021-07-231-22/+18
|
* mitigates #12815 (#18557)Andreas Rumpf2021-07-222-2/+8
| | | | | | | | | * mitigates #12815 * Update doc/nimc.rst Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* fixes #12815 (#18554)Andreas Rumpf2021-07-223-3/+8
|
* fix setCommand so it behaves like regular nim invocation (#18555)Timothee Cour2021-07-223-18/+12
|
* fixes #18550 (#18553)Andreas Rumpf2021-07-214-1/+36
| | | | | * fixes #18550 * update the manual to reflect reality
* undo RFC #294, it breaks code for no good reason, the compiler can wa… ↵Andreas Rumpf2021-07-213-5/+3
| | | | | | | | | | | | | (#18546) * undo RFC #294, it breaks code for no good reason, the compiler can warn about the construct instead * Update changelog.md Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> * enable test case Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* fixes #18469 (#18544)Andreas Rumpf2021-07-203-15/+30
| | | | | * fixes #18469 * Update compiler/injectdestructors.nim
* make -d:nimFpRoundtrips work consistently in vm vs rt, fix #18400, etc (#18531)Timothee Cour2021-07-209-37/+44
| | | | | | * compiler/vmhooks: add getVar to allow vmops with var params * addFloat vmops with var param * cgen now renders float32 literals in c backend using roundtrip float to string
* rst: add missing line/column info for some warnings (#18383)Andrey Makarov2021-07-203-56/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rst: add missing line/column info for some warnings * add workaround * use TLineInfo/FileIndex for storing file names * fix blank lines in include file (rm harmful strip) * don't use ref TLineInfo * return `hasToc` as output parameter for uniformity * Update compiler/docgen.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update compiler/docgen.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update lib/packages/docutils/rst.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * address review - stylistic things * Update compiler/docgen.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * unify RST warnings/errors names * doAssert + minor name change * fix a bug caught by doAssert * apply strbasics.strip to final HTML/Latex * rm redundant filename * fix test after rebase * delete `order` from rnFootnoteRef, also display errors/warnings properly when footnote references are from different files * Update compiler/lineinfos.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update lib/packages/docutils/rstast.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update lib/packages/docutils/rstast.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update lib/packages/docutils/rstast.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * revert because of error: Error: cannot prove that it's safe to initialize 'info' with the runtime value for the discriminator 'kind' * Update lib/packages/docutils/rstgen.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * apply suggestion * Update lib/packages/docutils/rst.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * add Table for string->file name mapping * do not import compiler/lineinfos * fix ambiguous calls Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> Co-authored-by: narimiran <narimiran@disroot.org>
* minor clenup in vmops (#18529)Timothee Cour2021-07-191-4/+5
|
* nim doc now correctly renders deprecated pragmas for routines and types (#18515)Timothee Cour2021-07-193-14/+36
|
* Make error message for empty new-styled concept more descriptive (#18506)konsumlamm2021-07-182-8/+9
| | | | | | | * Allow empty new-styled concept Slightly improve error messages * Make empty new-styled concepts an error
* Add changes required by Nimble lock file support (#12104)Ivan Bobev2021-07-152-31/+53
| | | | | | | | | | | | | | | | Implemented support for Nimble local cache with package directories with a checksum of the package at the end of their names. Now the compiler supports package paths in the form: * /path_to_nimble_cache_dir/pkgs/package_name-1.2.3- FEBADEAEA2345E777F0F6F8433F7F0A52EDD5D1B * /path_to_nimble_cache_dir/pkgs/package_name-#head- 042D4BE2B90ED0672E717D71850ABDB0A2D19CD2 * /path_to_nimble_cache_dir/pkgs/package_name-#branch-name- DBC1F902CB79946E990E38AF51F0BAD36ACFABD9 Related to nim-lang/nimble#127
* Extended side effect error messages (#18418)quantimnot2021-07-152-17/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Extended side effect error messages * Applied feedback: - refactored `markSideEffect` - refactored string interpolations - single message - skip diagnostics in `system.compiles` context Other: - started a test of diagnostic messages [ci skip] Tests aren't updated yet because messaging isn't nailed down. * - Added hints of where for side effect call locations. - Tried to clarify the reasons. * fix tests * Applied PR review feedback: - moved collection of side effects from TSym to TContext - used pragma shorthand form `.sideEffect` and `.noSideEffect` in messages - added leading '>' to structured messages for readability - changed `sempass2.markSideEffect` to a proc - replaced `system.echo` in the test to make the test compatible with Windows * Applied NEP1 formatting suggestion Co-authored-by: quantimnot <quantimnot@users.noreply.github.com>
* fixes #17893 (#18485)Andreas Rumpf2021-07-131-6/+1
| | | * fixes #17893
* closes #18433 (#18484)Andreas Rumpf2021-07-132-6/+4
| | | | | * beneficial refactoring; use system.Endianness * closes #18433
* ORC: support for custom =trace procs (#18459)Andreas Rumpf2021-07-098-8/+35
| | | | | | | | | | | * ORC: support custom =trace procs (WIP) * Update tests/arc/tcustomtrace.nim Co-authored-by: Clyybber <darkmine956@gmail.com> * =trace is now documented and seems to work * make test green Co-authored-by: Clyybber <darkmine956@gmail.com>
* runnableExamples now show originating location in stacktraces on failure ↵Timothee Cour2021-07-092-11/+25
| | | | | | | | | (#18457) * runnableExamples now show originating location in stacktraces on failure * PRTEMP * fix indentation inside multiline strings
* improve `--declaredLocs` to help disambiguate types (generics, aliases etc) ↵Timothee Cour2021-07-084-9/+15
| | | | | | | | | (#18389) * improve --declaredlocs to help disambiguate types (generics, aliases etc) * avoid a cyclic deps * fix test after rebase
* followup #18252: show special flags -d:danger, -d:release when given (#18451)Timothee Cour2021-07-081-0/+4
|
* ORC: use =destroy instead of =dispose (#18440)Andreas Rumpf2021-07-074-47/+12
| | | | | | * ORC refactoring in preparation for further changes (=dispose must die) * ORC: embrace =destroy, avoid =dispose * ORC: no need for =dispose * closes #18421
* Make procedure mismatch more informative with pragma/call convention ↵Jason Beetham2021-07-063-32/+96
| | | | | | | | | | | | | | | | | | mismatches (#18384) * Added more concise calling convention/pragma mismatch messages * Now only adds callConvMsg/lock message when sensible * Fixed message formatting * Added tests, and fixed some bugs * Tests joined, and always indenting * More tests and more bug fixes * Fixed first test in tprocmismatch * Using var param for writting mismatches * Better logic for handling proc type rel and conv/pragma mismatch * Refactored getProcConvMismatch * Fixed callConv message formatting * Fixed test for proper message * Cleanup to address issues * getProcConvMismatch now returns tuple, and reformatted code
* [minor]remove unnecessary stringify (#18419)flywind2021-07-021-4/+4
|