ringabout
755307be61
fixes #24141 ; Calling algorithm reverse causes a SIGSEGV on ORC ( #24142 )
...
fixes #24141
2024-09-19 15:17:25 +02:00
ringabout
26107e931c
fixes #23973 ; fixes #23974 ; Memory corruption with lent and ORC ( #23981 )
...
fixes #23973 ;
fixes #23974
2024-08-20 11:57:47 +02:00
ringabout
1d59e1cbb6
fixes #23907 ; Double destroy using proc type alias with a sink ( #23909 )
...
fixes #23907
2024-08-11 10:12:48 +02:00
ringabout
309f97af4c
fixes #23627 ; Simple destructor code gives invalid C ( #23631 )
...
fixes #23627
```nim
type
TestObj = object of RootObj
TestTestObj = object of RootObj
testo: TestObj
proc `=destroy`(x: TestTestObj) =
echo "Destructor for TestTestObj"
proc testCaseT() =
echo "\nTest Case T"
let tt1 {.used.} = TestTestObj(testo: TestObj())
```
When generating const object fields, it's likely that
we need to generate type infos for the object, which may be an object
with
custom hooks. We need to generate potential consts in the hooks first.
https://github.com/nim-lang/Nim/pull/20433 changed the semantics of
initialization. It should evaluate`BracedInit` first.
2024-05-21 14:53:08 +02:00
ringabout
cd3cf3a20e
fixes #23524 ; global variables cannot be analysed when injecting move ( #23529 )
...
fixes #23524
```nim
proc isAnalysableFieldAccess*(orig: PNode; owner: PSym): bool =
...
result = n.kind == nkSym and n.sym.owner == owner and
{sfGlobal, sfThread, sfCursor} * n.sym.flags == {} and
(n.sym.kind != skParam or isSinkParam(n.sym))
```
In `isAnalysableFieldAccess`, globals, cursors are already rejected
2024-04-24 12:47:05 +02:00
ringabout
acd4c8a353
fixes #23505 ; fixes injectdestructors errors on transformed addr (deref) refs ( #23507 )
...
fixes #23505
2024-04-18 17:57:44 +08:00
ringabout
29ac3c9986
fixes #22923 ; fixes =dup issues ( #23182 )
...
fixes #22923
2024-01-11 11:23:42 +01:00
ringabout
f5d70e7fa7
fixes #19250 ; fixes #22259 ; ORC AssertionDefect not containsManagedMemory(n.typ) ( #22823 )
...
fixes #19250
fixes #22259
The strings, seqs, refs types all have this flag, why should closures be
treated differently?
follow up https://github.com/nim-lang/Nim/pull/14336
2023-10-13 21:34:13 +02:00
ringabout
5f13e15e0a
fixes #22664 ; guard against potential seqs self assignments ( #22671 )
...
fixes #22664
2023-09-08 17:05:57 +02:00
ringabout
a37a83cbff
fixes #21617 ; createTypeBoundOps with PContext in order to instantiate generics ( #21619 )
...
* fixes #21617 ; createTypeBoundOps with PContext in order to instantiate generics
* keep idgen
2023-04-07 22:18:09 +02:00
ringabout
a80f1a324f
fixes #21592 ; create type bound operations for calls in the method dispatcher for ORC ( #21594 )
...
* fixes #21592 ; create type operations for the method dispatcher
* add a test case
2023-04-01 17:08:45 +02:00
ringabout
6552a27ec1
fixes #19857 ; Exception raised in closure may be "skipped" in ORC ( #21530 )
...
fixes #19857 ; Exception raised in closure may be "skipped"
2023-03-16 21:07:54 +08:00
ringabout
38f876dd48
fixes #19795 ; fixes #11852 ; fixes #19974 ; remove parsing pipeline, Nim now parses the whole module at one time ( #21379 )
...
* fixes #19795 ; remove parse pipeline
* isScript
* fixes nimscriptapi
* don't touch reorder
* check script
* fixes tests
* it seems implicit imports of system cause troubles
* access the first child of `nkStmtList`
* ignore comments
* minor messages
* perhaps increases hloLoopDetector
* the module is a stmtList, which changes the errors
* fixes nimdoc
* fixes tlinter
* fixes nim secret tests
* fixes arc_misc
* fixes nim secret tests again
* safe; fixes one more test
* GlobalError is the root cause too
* fixes parsing errors
* put emit types to the cfsForwardTypes section
* fixes #11852 ; `{.push checks:off}` now works in procs
* disable navigator
* fixes nimdoc
* add tests for JS
* fixes nimsuggest
2023-02-22 20:34:20 +01:00
ringabout
3d692d08f7
fixes a long-standing ARC bug ( #20849 )
...
* fixes an ARC bug
* add a testcase
2022-11-16 07:36:14 +01:00
Bung
fdc8dd4128
Arc global ( #20768 )
...
* temp
* unsure
* fix condition
* port macro arc runable examples to one file
* trigger doc ci
* fix
Co-authored-by: ringabout <43030857+ringabout@users.noreply.github.com >
2022-11-06 11:47:35 +01:00
ringabout
afd4e22f76
Revert "fix arc global variable issues" ( #20764 )
...
* Revert "fix arc global variable issues (#20759 )"
This reverts commit a3d32a4176 .
* trigger documentation builds
2022-11-05 22:47:12 +08:00
Bung
a3d32a4176
fix arc global variable issues ( #20759 )
...
* temp
* unsure
2022-11-05 12:22:16 +01:00
ringabout
114acff98d
closes #9401 ; add testcase ( #20507 )
2022-10-06 13:51:42 +08:00
Andreas Rumpf
32d4bf3525
fixes an old ARC bug: the produced copy/sink operations don't copy the hidden type field for objects with enabled inheritance; fixes #19205 [backport:1.6] ( #19232 )
2021-12-09 22:23:16 +01:00
flywind
4b764f4c7c
close #17319 ; add testcase ( #18934 )
2021-10-01 16:19:02 +08:00
flywind
bf1700bab1
add testcase for #7308 ( #18849 )
2021-09-14 19:39:55 +02:00
Andreas Rumpf
e8dad482a3
fixes #16246 ( #18800 )
2021-09-04 15:57:16 +02:00
Andreas Rumpf
af3d2d8ad9
added nimAllocPagesViaMalloc switch ( #18490 )
...
* added switch
* alloc.nim needs page aligned memory blocks
2021-07-15 17:58:47 +02:00
Andreas Rumpf
3ceaf5c130
fixes #18030 ( #18415 )
2021-07-01 17:35:04 +02:00
Clyybber
b03d6c9b2f
Fix #17712 ( #17873 )
2021-04-27 13:03:26 +02: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
flywind
6d442a40a6
use doAssert in tests ( #16486 )
2020-12-28 14:13:21 +01:00
Clyybber
66cd9c2e57
Fix #15599 ( #15601 )
...
* Fix #15599
* Add test
2020-10-16 18:03:01 +02:00
cooldome
531ed2dc36
fix #15405 . deepcopy arc ( #15410 )
...
* fix #15405
* fix tests
* deepcopy for ARC has to be enabled via --deepcopy:on
Co-authored-by: Araq <rumpf_a@web.de >
2020-10-01 17:39:48 +02:00
Andreas Rumpf
9ff2c50155
fixes #15122 [backport:1.2] ( #15139 )
2020-08-01 13:16:50 +02:00
Andreas Rumpf
aae998feff
fixes #15038 [backport:1.2]
2020-07-26 01:16:06 +02:00
Andreas Rumpf
624762cfb7
fixes #15052
2020-07-26 01:16:06 +02:00
Andreas Rumpf
c90c53e8bb
fixes #15044 [backport:1.2]
2020-07-23 20:27:17 +02:00
Danil Yarantsev
f25454d5c6
Add a testcase for #14480 . Fixes #14480 ( #15037 )
2020-07-22 09:52:38 +02:00
Clyybber
282128ab66
Fix #14994 ( #14996 )
...
* Fix #14994
* Revert misplaced "optimization"
* Typo
2020-07-15 23:33:58 +02:00
Clyybber
2b0e336c97
injectdestructors fixes and refactor ( #14964 )
...
* injectdestructors fixes and refactor
* Tiny cleanup
* Refactor and expand testcase
* Closes #14902 by adding testcase
* Better naming
* Fix test failures
* Misc cleanup
* Add testcase for #14968
* Better approach; expand testcases
* Optimizations and fixes
* Add testcase
* typo
* Tiny cleanup
2020-07-14 14:15:39 +02:00
Clyybber
af27e6bdea
Fix #14396 ( #14793 )
...
* Correct Left-To-Right evaluation of proc args
* Fix CPP backend
* Add testcase
* closes #14396
* closes #14345
* Improve test and optimize
* Improve testcase and optimize literals
* Fix bug
* Expand testcase and use DFA to optimize
* Turn genParams into proc
* Turn withTmpIfNeeded into a proc
* Cleanup
* Fix crash
* Better analysis
* Cleanup
* Trailing newline..
* Fix build
* Tiny cleanup
Co-authored-by: Andreas Rumpf <rumpf_a@web.de >
2020-07-04 17:45:07 +02:00
Andreas Rumpf
1854d29781
scoped memory management ( #14790 )
...
* fixes the regressions
* closes #13936
* scope based memory management implemented
* enabled tcontrolflow.nim test case
* final cleanups
2020-07-04 07:37:24 +02:00
Andreas Rumpf
3105909f88
fixes #14495 [backport:1.2] ( #14496 )
2020-05-29 23:35:57 +02:00
cooldome
5fb40af57e
fix #14333 ( #14336 )
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-05-13 23:57:05 +02:00
cooldome
5fa7d374c4
fix #14243 ( #14257 )
...
* fix #14243
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-05-07 22:15:25 +02:00
cooldome
0d8507cd3d
fix #14236 ( #14250 )
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-05-07 00:13:59 +02:00
Andreas Rumpf
b6fb609e0d
destructors: don't produce stupid code for 'cast' ( #14208 ) [backport:1.2]
...
* destructors: don't produce stupid code for 'cast'
* fixes #14207
2020-05-04 07:43:22 +02:00
Andreas Rumpf
d9e907c0e2
fixes #14079 [backport:1.2] ( #14163 )
2020-04-29 21:58:59 +02:00
cooldome
f10689d3d4
fixes #14003 ( #14006 ) [backport:1.2]
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-04-17 13:23:04 +02:00
cooldome
c70b3952ff
fixes #13810 ( #13821 )
...
Co-authored-by: cooldome <ariabushenko@bk.ru >
2020-03-31 21:15:06 +02:00
Andreas Rumpf
034dad8e32
fixes #13691 ( #13694 )
2020-03-19 12:57:45 +01:00