summary refs log tree commit diff stats
path: root/tests/arc
Commit message (Collapse)AuthorAgeFilesLines
* fix #14333 (#14336)cooldome2020-05-131-1/+17
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fix #14320 (tasyncawait.nim is recently very flaky) + avoid hardcoding ↵Timothee Cour2020-05-131-14/+7
| | | | | | | service ports everywhere + flakyAssert (#14327) * hotfix #14320 tasyncawait.nim is recently very flaky * fix #14327 * add flakyAssert
* close #13071 by adding test: nim cpp -r --gc:arc` segfaults on caught ↵Timothee Cour2020-05-121-0/+16
| | | | AssertionError (#14323)
* fix #14312cooldome2020-05-121-2/+13
|
* fix #14219 (#14225)cooldome2020-05-112-0/+16
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* Fix #14269 (#14286)Clyybber2020-05-091-1/+103
|
* Fix #14270 and add testcases (#14276)Clyybber2020-05-081-0/+30
|
* fix #14243 (#14257)cooldome2020-05-071-1/+15
| | | | | * fix #14243 Co-authored-by: cooldome <ariabushenko@bk.ru>
* Fix the DFA for "unstructured controlflow" (#14263)Clyybber2020-05-071-0/+24
| | | | | * Fix the DFA for "unstructured controlflow" * Add testcase from #14233
* fix #14236 (#14250)cooldome2020-05-071-0/+16
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fixes #14244 (#14248)cooldome2020-05-061-0/+19
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* destructors: don't produce stupid code for 'cast' (#14208) [backport:1.2]Andreas Rumpf2020-05-041-0/+14
| | | | | * destructors: don't produce stupid code for 'cast' * fixes #14207
* fixes #14079 [backport:1.2] (#14163)Andreas Rumpf2020-04-292-2/+30
|
* Error -> Defect for defects (#13908)Jacek Sieka2020-04-281-5/+5
| | | | | | | | | | | | | | * Error -> Defect for defects The distinction between Error and Defect is subjective, context-dependent and somewhat arbitrary, so when looking at an exception, it's hard to guess what it is - this happens often when looking at a `raises` list _without_ opening the corresponding definition and digging through layers of inheritance. With the help of a little consistency in naming, it's at least possible to start disentangling the two error types and the standard lib can set a good example here.
* new implementations for --gc:orc (#14121)Andreas Rumpf2020-04-271-1/+2
| | | | | | | | | * cycle collector: new implementation * cycle collector: make self-adaptive based on its previous effectiveness * cycle collector: added Lins's jump stack to improve traversal from 3*N to 2*N * cycle collector: make tests green * API extensions and bugfixes * code cleanup and use --gc:orc for tasyncawait
* cycle collector (#14071)Andreas Rumpf2020-04-221-0/+183
| | | | * figured out the wrong cycle trace proc problem * cycle collector/break refactorings and minor improvements
* fixes #14003 (#14006) [backport:1.2]cooldome2020-04-171-0/+17
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* Step2: fixes #13781, fixes #13805 (#13897)cooldome2020-04-161-0/+63
| | | | | | | | | * Fix sym owner in wrapper proc * threadpool changes * revert lowerings * add newFastMoveStmt * try fixing test by switching to cpp Co-authored-by: cooldome <ariabushenko@bk.ru>
* Implements RFCs #209 (#13995)cooldome2020-04-161-0/+49
| | | | | * add test * add changelod entry Co-authored-by: cooldome <ariabushenko@bk.ru>
* error msg for #13864 (#13962)cooldome2020-04-131-0/+15
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fixes #13810 (#13821)cooldome2020-03-311-1/+22
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* Unwind just the "pseudorandom probing" part of recent sets,tables changes ↵c-blake2020-03-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#13816) * Unwind just the "pseudorandom probing" (whole hash-code-keyed variable stride double hashing) part of recent sets & tables changes (which has still been causing bugs over a month later (e.g., two days ago https://github.com/nim-lang/Nim/issues/13794) as well as still having several "figure this out" implementation question comments in them (see just diffs of this PR). This topic has been discussed in many places: https://github.com/nim-lang/Nim/issues/13393 https://github.com/nim-lang/Nim/pull/13418 https://github.com/nim-lang/Nim/pull/13440 https://github.com/nim-lang/Nim/issues/13794 Alternative/non-mandatory stronger integer hashes (or vice-versa opt-in identity hashes) are a better solution that is more general (no illusion of one hard-coded sequence solving all problems) while retaining the virtues of linear probing such as cache obliviousness and age-less tables under delete-heavy workloads (still untested after a month of this change). The only real solution for truly adversarial keys is a hash keyed off of data unobservable to attackers. That all fits better with a few families of user-pluggable/define-switchable hashes which can be provided in a separate PR more about `hashes.nim`. This PR carefully preserves the better (but still hard coded!) probing of the `intsets` and other recent fixes like `move` annotations, hash order invariant tests, `intsets.missingOrExcl` fixing, and the move of `rightSize` into `hashcommon.nim`. * Fix `data.len` -> `dataLen` problem.
* cycle breaker (#13593)Andreas Rumpf2020-03-191-7/+12
| | | | * cycle breaking as an alternative to cycle detection
* fixes #13691 (#13694)Andreas Rumpf2020-03-191-0/+29
|
* arc optimizations (#13325)Andreas Rumpf2020-03-181-0/+55
| | | | | * scope based destructors * handle 'or' and 'and' expressions properly, see the new test arc/tcontrolflow.nim * make this branch mergable, logic is disabled for now
* new feature: --staticBoundChecks:on to enforce static array index checking ↵Andreas Rumpf2020-03-181-14/+14
| | | | (#10965)
* fixes #13622 (#13679)Andreas Rumpf2020-03-181-0/+20
|
* fixes #13240Araq2020-03-111-0/+25
|
* fixes #13596 (#13612)Andreas Rumpf2020-03-092-0/+112
|
* [backport] pseudorandom probing for hash collision (#13418)Timothee Cour2020-02-191-1/+1
|
* fixes #13368 (#13397)cooldome2020-02-141-0/+11
|
* fixes #13314 (#13372)Andreas Rumpf2020-02-091-1/+25
|
* fixes #13269 (#13344)Andreas Rumpf2020-02-071-0/+14
|
* Fixed codegen for constant cstring with --gc:arc (#13326)Ico Doornekamp2020-02-041-0/+16
| | | | | | * Fixed codegen for constant cstring with --gc:arc, fixes #13321 * Added test for #13321
* Repr v2 progress (#13268)cooldome2020-01-281-0/+34
| | | | | | | | | | * progress on repr_v2 * repr progress * add ref objects with distrinct * fix failing tests
* ARC works for async on Windows (#13179)Andreas Rumpf2020-01-171-0/+69
|
* ARC: misc bugfixes (#13156)Andreas Rumpf2020-01-152-0/+210
* fixes #13102 * closes #13149 * ARC: fixes a move optimizer bug (there are more left regarding array and tuple indexing) * proper fix; fixes #12957 * fixes yet another case object '=' code generation problem