From f310cf52502fbf7ac27600a06f26fd00d06e0e3a Mon Sep 17 00:00:00 2001 From: Andreas Rumpf Date: Thu, 20 Jun 2019 19:40:18 +0200 Subject: [other] added system.dispose for owned refs --- lib/core/runtime_v2.nim | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/core/runtime_v2.nim b/lib/core/runtime_v2.nim index 5689e3072..4bc271f49 100644 --- a/lib/core/runtime_v2.nim +++ b/lib/core/runtime_v2.nim @@ -75,6 +75,9 @@ proc nimRawDispose(p: pointer) {.compilerRtl.} = cstderr.rawWrite "[FATAL] unpaired dealloc\n" quit 1 +template dispose*[T](x: owned(ref T)) = nimRawDispose(cast[pointer](x)) +#proc dispose*(x: pointer) = nimRawDispose(x) + proc nimDestroyAndDispose(p: pointer) {.compilerRtl.} = let d = cast[ptr PNimType](p)[].destructor if d != nil: cast[DestructorProc](d)(p) -- cgit 1.4.1-2-gfad0