Bung
7e80df2267
fix #3505 wrong var {.global.} initialization, asign variable to it ( #20812 )
...
* fix #3505 wrong var {.global.} initialization, asign variable to it
* fix #5132 as well
* follow suggestions
* handle all call kinds
* Update tests/global/t3505.nim
* Update compiler/semstmts.nim
* Update compiler/semstmts.nim
* Update compiler/semstmts.nim
* follow suggestion
* Update compiler/semstmts.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de >
(cherry picked from commit 1410243d3b )
2023-04-26 09:31:32 +02:00
ringabout
e70379811b
fixes regression #17121 ; adding doc comment in importc proc makes it silently noop at CT ( #20766 )
...
* fixes regression #17121 ; adding doc comment in importc proc makes it silently noop at CT
* Update compiler/vmgen.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de >
(cherry picked from commit a228e331f3 )
2023-04-26 09:31:32 +02:00
Bung
0c9c6d2a68
fix #19149 Invalid codegen when returning var tuple from a template ( #20762 )
...
* fix #19149 Invalid codegen when returning var tuple from a template
* fix type
(cherry picked from commit bae0fb720a )
2023-04-26 09:31:32 +02:00
ringabout
4e56bcfc0e
closes #14216 ; add testcase ( #20733 )
...
(cherry picked from commit 87f7f50553 )
2023-04-25 19:34:04 +02:00
Bung
d5be917994
fix #20272 range of uint64 shows signed upper bound ( #20702 )
...
(cherry picked from commit 49e793e8c4 )
2023-04-25 18:27:54 +02:00
Bung
fe1e09a881
fix #20148 implicit compile time conversion int to ranged float cause… ( #20698 )
...
fix #20148 implicit compile time conversion int to ranged float causes compiler fatal error
(cherry picked from commit a51ed90c5d )
2023-04-25 16:27:31 +02:00
Bung
b2b226bb28
fix #16264 low(Time) OverflowDefect ( #20552 )
...
fix #16264 regression(0.18.0 => devel): import times; echo low(Time) gives OverflowDefect
(cherry picked from commit 534c97edc5 )
2023-04-25 16:27:31 +02:00
metagn
592321c7f5
alternate fix + test for #12094 , refs #13804 ( #20686 )
...
(cherry picked from commit cb3af8ad39 )
2023-04-25 16:27:30 +02:00
Bung
cf12d6fcde
fix #6637 array index type depends generic ( #20673 )
...
(cherry picked from commit aa6f9d490f )
2023-04-25 16:27:30 +02:00
ringabout
26e52d7c5d
fixes #19201 ; fixes sink causes crash in VM ( #20658 )
...
(cherry picked from commit 4b377b07fc )
2023-04-25 16:27:30 +02:00
ringabout
5c4044cd80
closes #4466 ; add testcase ( #20625 )
...
(cherry picked from commit 684a862526 )
2023-04-25 16:27:30 +02:00
ringabout
46543d8e9b
enable static tests for topenarray ( #20620 )
...
(cherry picked from commit fa1606c6d6 )
2023-04-25 16:27:30 +02:00
Jason Beetham
32171fc66d
Unpack mSlice tupleconstr for static openarrays ( #20615 )
...
(cherry picked from commit da0a2fdca2 )
2023-04-25 16:27:29 +02:00
Bung
b220294f13
fix #20152 Illegal capture of closure iterator, when should be legal ( #20607 )
...
(cherry picked from commit 66cbcaab84 )
2023-04-25 16:27:29 +02:00
Bung
6274bc35dd
fix #19426 compile error using when/elif/else and typedesc in template ( #20550 )
...
(cherry picked from commit 04c48e3c5b )
2023-04-25 16:27:29 +02:00
Can Lehmann
a76f36b4e5
Fix #12517 Allow single branch when nimvm statements ( #20577 )
...
Allow single branch when statements
(cherry picked from commit 2102e3b02f )
2023-04-25 16:27:29 +02:00
Bung
425f828178
fix #19700 Crash when passing a template to a generic functio… ( #20567 )
...
fix nim-lang#19700 Crash when passing a template to a generic function expecting a procedure
(cherry picked from commit 0510a2be0d )
2023-04-25 15:34:47 +02:00
Bung
f2b52ec432
fix #7446 Generics: type mismatch 'SomeunsignedInt or Natural' ( #20522 )
...
* fix #7446 Generics: type mismatch 'SomeunsignedInt or Natural'
* try fix
(cherry picked from commit 083ea8f10c )
2023-04-25 15:34:47 +02:00
Bung
01d27ef1db
fix #18886 crash on ambiguous proc cast ( #20472 )
...
* fix #18886 crash on ambiguous proc cast
* follow suggestion
(cherry picked from commit db3d2971cf )
2023-04-25 15:34:47 +02:00
ringabout
6df5fa424a
closes #12994 ; add testcase ( #20511 )
...
(cherry picked from commit a132f5502a )
2023-04-25 15:34:47 +02:00
ringabout
ebd6619aaa
close #11415 ; add testcase ( #20486 )
...
(cherry picked from commit 852a7c4919 )
2023-04-25 15:34:46 +02:00
Bung
0cf39669df
Fix #19224 For loops over a hardcoded empty array crash the compiler ( #20476 )
...
* Fix #11684 For loops over a hardcoded empty array crash the compiler
* Update t19224.nim
(cherry picked from commit 567c3f055d )
2023-04-25 15:34:46 +02:00
metagn
5def1fc8f6
temporarily disable badssl tests ( #21710 )
...
* temporarily disable badssl tests
refs #21709
* fix
(cherry picked from commit 6ad246b215 )
2023-04-25 08:45:43 +02:00
ringabout
07824b3053
close #15955 ; add a test case ( #20414 )
...
(cherry picked from commit 37ca97dd76 )
2023-04-24 22:09:42 +02:00
Bung
0dc51dfe47
Improve error message when instantiating generics with object constructor ( #20358 )
...
* Improve error message when instantiating generics with object constructor
* follow suggestion
* Update compiler/semobjconstr.nim
Co-authored-by: Clay Sweetser <Varriount@users.noreply.github.com >
* Update tests/errmsgs/t19882_2.nim
Co-authored-by: Clay Sweetser <Varriount@users.noreply.github.com >
(cherry picked from commit 2afce84616 )
2023-04-24 22:09:34 +02:00
Bung
09be80c857
report expression has no type other than has to be used (or discarded… ( #20392 )
...
report expression has no type other than has to be used (or discarded) when typ is tyNone in discardCheck
(cherry picked from commit 08c02f0236 )
2023-04-24 22:09:22 +02:00
Bung
82af5c7f6d
fix #19882 Improve error message when instantiating generics that lac… ( #20356 )
...
* fix #19882 Improve error message when instantiating generics that lack a type
* Update tests/errmsgs/t19882.nim
Co-authored-by: Clay Sweetser <Varriount@users.noreply.github.com >
(cherry picked from commit a302b26e0e )
2023-04-24 22:09:13 +02:00
Tomohiro
892b1f7583
Fix #16937 ; --clib option pass library name to backend C compiler correctly ( #19754 )
...
* Fix 16937: Make --clib option works
* Make tests/compiler/tcmdlineclib.nim works from any current dir
* Try to fix link error on macosx
* Add a comment to tests/compiler/tcmdlineclib.nims
Co-authored-by: Clay Sweetser <Varriount@users.noreply.github.com >
(cherry picked from commit 2a34d143ac )
2023-04-24 22:09:07 +02:00
ringabout
7acdacb253
fixes #18983 #5282 #13008 ; recursive types casue infinite type ( #20172 )
...
* fixes #18983 #5282 #13008 ; recursive types casue infinite type
* re
* add testcases
(cherry picked from commit a895bbf714 )
2023-04-24 22:08:53 +02:00
ringabout
b92336ab33
fixes #20149 ; fixes #16762 ; hintAsError and warningAsError now ignore foreign packages ( #20151 )
...
* fixes #20149 ; hintAsError/warningAsError ignores foreign packages
* add changelog
* fixes the test
* remove
* fixes tests again
* fix
* I'm careless
Co-authored-by: xflywind <43030857+xflywind@users.noreply.github.com >
(cherry picked from commit 641381e3d4 )
2023-04-24 22:08:02 +02:00
ringabout
6f347a82aa
closes #6559 ; add testcase ( #20200 )
...
(cherry picked from commit 1a7b33942b )
2023-04-24 22:06:43 +02:00
metagn
e494f1b21e
fix #20002 ( #20004 )
...
While this fix seems innocent,
this unlocks the hidden behavior of
method calls not being able to call
gensym'ed routines inside templates.
(cherry picked from commit f35c9cf73d )
2023-04-24 22:02:43 +02:00
flywind
81a52fae78
closes #15897 ; add testcase ( #19961 )
...
(cherry picked from commit 4897c47c80 )
2023-04-24 22:02:19 +02:00
Tanguy
ab1717984d
Allow recursive closure iterators ( #19939 )
...
(cherry picked from commit ce4078acd4 )
2023-04-24 22:01:28 +02:00
flywind
d6ea7cc49a
closes #11042 ; add testcase ( #19935 )
...
close #11042 ; add testcase
(cherry picked from commit 8a344cb25b )
2023-04-24 21:58:57 +02:00
Khaled Hammouda
85e943db50
Fix distinct requiresInit test and manual ( #19901 )
...
fix distinct test and manual
(cherry picked from commit caf6aff06b )
2023-04-24 21:58:34 +02:00
Bung
75bc4a9b78
test for #19046 ( #19839 )
...
* test for #19046
* add threads flag
(cherry picked from commit ac89eead8a )
2023-04-24 21:58:15 +02:00
quantimnot
1af76bc5a2
Stop type aliases from inheriting sfUsed ( #19861 )
...
Fixes #18201
Co-authored-by: quantimnot <quantimnot@users.noreply.github.com >
(cherry picked from commit f7a13f62d6 )
2023-04-24 17:35:02 +02:00
flywind
1779f6aa9a
[testcase] genSym fails to make unique identifier for ref object types ( #19506 )
...
close #15118
(cherry picked from commit 2ef71c0a46 )
2023-04-24 17:33:44 +02:00
Regis Caillaud
a33603925d
Clonkk fix2 11923 ( #19451 )
...
* fix nnkBracketExpr not compiling for getImpl on customPragmaNode
* fix test import
* fix alias not working with hasCustomPragmas
(cherry picked from commit 486cb09ec2 )
2023-04-24 17:33:24 +02:00
Jason Beetham
da325b0822
No longer segfault when using a typeclass with a self referencing type ( #19467 )
...
(cherry picked from commit 1830a3b505 )
2023-04-24 17:33:13 +02:00
flywind
196e93f9e1
[add testcase] NRVO does not occur with init procedures ( #19462 )
...
* [add testcase] NRVO does not occur with init procedures
close #19094
* Update tests/ccgbugs2/tcodegen.nim
(cherry picked from commit 33cd883e27 )
2023-04-24 17:33:04 +02:00
Regis Caillaud
70478d34e3
Fix #11923 ( #19427 )
...
* Apply commit 5da931fe81 that was never merged (was part of a bigger PR). Should fix issue #11932
* add a generic object for custom pragma
(cherry picked from commit 1563cb2f6e )
2023-04-24 17:31:56 +02:00
metagn
fe5edb7ab0
Don't reject types directly on AST ( #19407 )
...
Instead of rejecting type expressions based on node kind,
evaluate the expression as a type.
This is already the behavior for call results, and it has its own error
for non-types, which is the same error you would normally get
with 2 words swapped.
(cherry picked from commit 08261cb9e3 )
2023-04-24 17:31:41 +02:00
Jason Beetham
de6d7dcca9
Fixed concept constraints for static types ( #19391 )
...
(cherry picked from commit 7bdfeb7819 )
2023-04-24 17:31:34 +02:00
Jason Beetham
9e3762b6da
Generic parameters now can constrain statics in type definitions ( #19362 )
...
* Parameters now can constrain static in type definitions
resolved regression with generic procedures
* Update compiler/sigmatch.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de >
(cherry picked from commit a93f6e7acc )
2023-04-24 17:31:27 +02:00
hlaaftana
4857d9204e
treat do with pragmas but no parens as proc ( #19191 )
...
fixes #19188
(cherry picked from commit 1ef945668d )
2023-04-24 17:28:15 +02:00
hlaaftana
c5df4ed62a
fix #12274 ( #19180 )
...
(cherry picked from commit 2859069dbe )
2023-04-24 17:26:18 +02:00
Kaushal Modi
2f6dc73342
Add test for issue 15435 ( #19079 )
...
* Add test for issue 15435
Closes https://github.com/nim-lang/Nim/issues/15435 .
* Specify bug # in comment
Addresses https://github.com/nim-lang/Nim/pull/19079#discussion_r740279547
(cherry picked from commit 539bced70d )
2023-04-24 17:25:59 +02:00
Jason Beetham
48936ab1c0
Fix VM's sametype impl to work for generics/typedescs ( #19073 )
...
* Fix vm's sametype implementation to properly handle generics and typedescs
* actually fixed sametype + have test
* added comments and removed unsafe code
(cherry picked from commit cc984217a9 )
2023-04-24 17:25:37 +02:00