Commit Graph

6824 Commits

Author SHA1 Message Date
flywind
f3c504e49a a bit better message (#17606) 2021-04-01 08:49:10 +02:00
Timothee Cour
a31e601550 misc fixes: build_all.sh, changelog (#17601)
* fix a bug in build_all.sh: $@ => "$@"

* remove getSocket from changelog following #17587

* remove unused import
2021-04-01 08:48:44 +02:00
Timothee Cour
a7bb973a24 docgen: render pragmas by default except for a select list (and fix #9074) (#17054) 2021-04-01 08:45:55 +02:00
flywind
924ab3adea fix #17190 nimscript now accepts arbitrary file extensions for nim e 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>
2021-04-01 08:05:04 +02:00
Andreas Rumpf
ece7147734 better error messages for .raise effect analysis (#17595) 2021-03-31 13:26:44 +02:00
Timothee Cour
b18307f940 fix #17572 (#17586) 2021-03-31 11:27:02 +02:00
Timothee Cour
6d7d1e60fe fix #14585, fix #17589: access to static param now works (#17590) 2021-03-31 11:25:26 +02:00
Timothee Cour
8ee0eda841 fix #12282 distinct now does not create erroneous copy in VM (#17594) 2021-03-31 10:15:08 +02:00
Andreas Rumpf
5ecbe67371 makes DrNim compile again (#17584) 2021-03-30 20:13:18 +02:00
Araq
f5b1e384a4 parser.nim: simply layout change 2021-03-30 10:29:50 +02:00
flywind
3715fc41d5 fix #17512 (#17520) 2021-03-30 10:27:24 +02:00
Arne Döring
159c06e045 unify tuple expressions (#13793)
* 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>
2021-03-30 02:06:51 +02:00
Clyybber
ed126794b6 Fix #17412 (#17560)
* Fix #17412

* Address review
2021-03-29 21:16:11 +02:00
flywind
3f9c51a332 [nim check]fix #17460 (#17569) 2021-03-29 09:28:55 -07:00
Timothee Cour
d23a757765 fix https://github.com/nim-lang/RFCs/issues/352: show top-level import for top-level runnableExamples in generated docs (#17542)
* fix https://github.com/nim-lang/RFCs/issues/352: show top-level import for top-level runnableExamples in generated docs

* use canonical imoprt

* fix test
2021-03-29 16:25:27 +02:00
Andreas Rumpf
cfff27529e added nkError to the AST (#17567)
* added nkError to the AST

* Update lib/core/macros.nim

Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>

* Update compiler/ast.nim

Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>

Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
2021-03-29 16:23:19 +02:00
Clyybber
1a407402a4 Typo in vm.nim 2021-03-29 16:03:54 +02:00
flywind
81e54c1d30 Add hasClosure to std/typetraits (#17501)
* fix nim js cmp fails at CT

* Add `hasClosure` to `std/effecttraits`

* type

* Update changelog.md

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>

* Update lib/std/effecttraits.nim

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
2021-03-29 14:22:29 +02:00
Saem Ghani
c6dc9c0255 fixes #17437 - crash where error reporting > 1 (#17547)
* fixes #17437

* Fix bug reference comment

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>

* [skip ci] describe why we have hasError

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
2021-03-29 12:48:00 +02:00
Jason Beetham
d96469037e Fixed embedded nimscript imports (#17425) 2021-03-28 01:43:24 +01:00
Timothee Cour
bbe4cf4703 followup custom literals (#17500) 2021-03-27 12:03:14 -07:00
Andreas Rumpf
cf5ce7616b IC: bugfix (#17533)
* cleanups
* IC: bugfix
2021-03-27 12:21:57 +01:00
Timothee Cour
a65189a739 nnkArglist => nnkArgList + special case stylecheck:error (#17529)
* nnkArglist => nnkArgList

* special case stylecheck:error
2021-03-27 10:28:11 +01:00
Clyybber
bb3769975b Fix #17199 (#17348)
* don't zero out in a move in the VM

* Add testcases for #17199

* Update tests/arc/tarcmisc.nim

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>

* Update tests/vm/tissues.nim

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>

* Fix test failures

* Fix test

* Fix tests

Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
2021-03-26 13:05:51 +01:00
Andreas Rumpf
e3e9742143 added a 'koch ic' command for easier adhoc testing of IC (#17508)
* added a 'koch ic' command for easier adhoc testing of IC
* IC: progress
* IC: enable generics test
* make tests green
2021-03-26 08:52:26 +01:00
flywind
76d391a512 remove unnecessary check (#17502) 2021-03-25 07:06:30 +01:00
Andreas Rumpf
355985ac89 custom integer literals bugfixes (#17499)
* custom integer literals bugfixes

* make nimsuggest compile again
2021-03-24 22:29:42 +01:00
Andreas Rumpf
5f5a92379f custom integer literals (#17489)
* user defined integer literals; refs #17020
* updated renderer.nim
* use mlexerutils helper
* imported all test cases from https://github.com/nim-lang/Nim/pull/17020
* final grammar updated
2021-03-24 14:46:19 +01:00
Saem Ghani
7366a3da37 potential fix for semgeneric formal params (#17494)
marked locations where analysis of return formal param is done prior to
args. This might fix some subtle bugs.
2021-03-24 11:55:58 +01:00
Andreas Rumpf
86af2f7b50 make unary minus part of number literals, refs #17020 (#17488)
* make unary minus part of number literals, refs #17020
* fixes regression
2021-03-24 09:47:11 +01:00
flywind
465a41c308 [isolation]fix empty ref object bug (#17471)
* fix nim js cmp fails at CT

* [Minor]fix empty ref object for isolation

* Update compiler/isolation_check.nim

* Update compiler/isolation_check.nim

Co-authored-by: Clyybber <darkmine956@gmail.com>

Co-authored-by: Clyybber <darkmine956@gmail.com>
2021-03-24 09:44:24 +01:00
Andreas Rumpf
dbde97f649 fixes #16076 (#17486) 2021-03-23 23:46:19 +01:00
Clyybber
833084b671 Fixes #17450 (#17477)
* Fixes #17450

* Add missing test output
2021-03-23 16:30:49 +01:00
Clyybber
97f51ed7c2 Revert "Fixes #17450 (#17474)" (#17476)
This reverts commit 5f0c520489.
2021-03-23 15:44:20 +01:00
Clyybber
5f0c520489 Fixes #17450 (#17474)
* Fixes #17450

* Add missing test output
2021-03-23 15:40:30 +01:00
Timothee Cour
64e6670de4 fix #16973 ; nim doc now shows correct, canonical import name in title (#16999)
* nim doc now shows correct import name in title
2021-03-23 09:31:23 +01:00
Andreas Rumpf
d6a16020fe IC: backend: remember produced type information (#17440) 2021-03-23 08:52:00 +01:00
Timothee Cour
f3a6427109 refs #17292 fix repr with do: (#17449)
* refs #17292 fix `repr` with `do:`

* address comment
2021-03-23 08:34:04 +01:00
Timothee Cour
a75c4b70e8 hint:cc goes to stderr (like all other hints) instead of stdout (#17465)
Co-authored-by: ee7 <45465154+ee7@users.noreply.github.com>
2021-03-22 18:24:28 -07:00
Saem Ghani
e5873b3a93 semTemplateDef and t17433 clean-ups (#17448)
- use `doAssert` in t17433
- use setGenericParamsMisc in semTemplateDef akin to semProcAux
- pragma handling in semTemplateDef inline with semProcAux
2021-03-22 12:46:34 +01:00
Saem Ghani
23fd098428 Fixes #17433; gensym callDef return in templ body (#17445) 2021-03-22 00:33:37 +01:00
Andreas Rumpf
6c1c8f51b3 IC: green tests (#17311)
* IC: renamed to_packed_ast module to ic module

* IC: don't store the --forceBuild flag, makes it easier to test

* IC: enable hello world test

* Codegen: refactorings for IC; changed the name mangling algorithm

* fixed the HCR regressions

* life is too short for HCR

* tconvexhull is now allowed to use deepCopy

* IC exposed a stdlib bug, required a refactoring

* codegen: code cleanups

* IC: even if a module is outdated, its dependencies might come from disk

* IC: progress

* IC: better name mangling, module IDs are not stable

* IC: another refactoring helping with --ic:on --gc:arc

* disable arraymancer on Windows for the time being

* disable arraymancer altogether

* IC: make basic test work with 'nim cpp'

* IC: progress on --ic:on --gc:arc

* wip; name mangling for type info
2021-03-19 16:53:38 +01:00
Timothee Cour
452366982d fix #16901: sidebar groups now works with all routines, not just proc,func (#17416)
* fix #16901: sidebar groups now works with all routines, not just proc,func

* fix tests
2021-03-19 07:17:09 +01:00
Timothee Cour
9d4d27a3ce adjust spellSuggestSecretSauce logic to avoid too many matches for small symbols (#17410) 2021-03-18 13:26:45 +01:00
Andrey Makarov
4bfc5a9551 Rst test check messages (fix #17280) (#17338) 2021-03-17 20:13:04 +01:00
Saem Ghani
72b89eff82 semLambda removed, semProcAux reworked (#17379)
* simplified proc-like name ident to symbol code

* wip - reworking generic param sem

* wip - closer to removing nkEmpty generic params

* it's hacky but tests pass

* slowly tweaking semProcAux to take on semLambda

* fix pragma superset check proto vs current

* Set the symbol owner earlier

* partial progress reworking proto

found bug where default values between forward and impl lead to overload
resolution issues.

* simplified pragma handling and callConv checks

Co-authored-by: Clyybber <Clyybber@users.noreply.github.com>

* partially working

* cgexprs issue

* It works!

* comment clean-up

* clean-up asserts, comments, and other bits

* add isGenericParams, inline isGeneric queries

* seeing if this is sufficiently consistent
* can use this approach or continue it in a further PR

* commentary about nullary generics and clean-ups

* fixed a mistake in PNode isGenericRoutine

* Some small cleanups

* Small cleanup

* for func lambdas ensure we use lambda pragmas

* add some basic compileTime func tests

* [ci skip] remove comments

Co-authored-by: Clyybber <Clyybber@users.noreply.github.com>
Co-authored-by: Clyybber <darkmine956@gmail.com>
2021-03-17 19:51:50 +01:00
Timothee Cour
4d3f3513e2 followup #16067 --spellSuggest (#17401)
* followup #16067 --spellSuggest

* enable --spellSuggest by default

* fixup
2021-03-17 07:40:29 +01:00
Timothee Cour
48eab5370a fix #2844 #3911; add --spellsuggest to suggest symbols in scope with similar spellings on undefined symbol error (#16067)
* add --spellsuggest to suggest symbols in scope with similar spellings on undefined symbol errors
* implement --spellsuggest with 0 arguments
2021-03-16 10:41:30 +01:00
flywind
84cf3e5fca Revert "make system random work in VM" (#17378) 2021-03-15 10:21:25 +01:00
Miran
4f0bac791a fix #12155, improve nimpretty's handling of pragmas (#17353) 2021-03-12 15:34:42 +01:00