mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-30 09:54:49 +00:00
fixes #23867 fixes #23316 follow up https://github.com/nim-lang/Nim/pull/22805; fixes https://github.com/nim-lang/Nim/issues/22794 in a different method
36 lines
690 B
Nim
36 lines
690 B
Nim
# bug #22794
|
|
type O = object
|
|
|
|
proc `=destroy`(x: O) = discard
|
|
proc `=trace`(x: var O; env: pointer) = discard
|
|
proc `=copy`(a: var O; b: O) = discard
|
|
proc `=dup`(a: O): O {.nodestroy.} = a
|
|
proc `=sink`(a: var O; b: O) = discard
|
|
|
|
|
|
# bug #23316
|
|
type SomeSturct = object
|
|
|
|
proc `=destroy`(x: SomeSturct) =
|
|
echo "SomeSturct destroyed"
|
|
|
|
# bug #23867
|
|
type ObjStr = object
|
|
s: string
|
|
|
|
let ostr = ObjStr() # <-- nimsuggest crashes
|
|
discard ostr
|
|
|
|
type ObjSeq = object
|
|
s: seq[int]
|
|
|
|
let oseq = ObjSeq() # <-- nimsuggest crashes
|
|
discard oseq
|
|
|
|
#[!]#
|
|
discard """
|
|
$nimsuggest --tester $file
|
|
>chk $1
|
|
chk;;skUnknown;;;;Hint;;???;;0;;-1;;">> (toplevel): import(dirty): tests/tchk2.nim [Processing]";;0
|
|
"""
|