source: src/examples/gc_no_raii/src/gc.h @ 6643e72

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsctordeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxmemorynew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since 6643e72 was 6643e72, checked in by Thierry Delisle <tdelisle@…>, 8 years ago

first basic test for garbage collector now compiles and works

  • Property mode set to 100644
File size: 408 bytes
RevLine 
[15db1ab]1#pragma once
2
3#include "gcpointers.h"
[f1e42c1]4#include "internal/collector.h"
[15db1ab]5
[6643e72]6// forall(otype T)
7// static inline gcpointer(T) gcmalloc()
8// {
9//     gcpointer(T) ptr = { gc_allocate(sizeof(T)) };
10//     ptr{};
11//     gc_conditional_collect();
12//     return ptr;
13// }
[e297ceb]14
15forall(otype T)
16static inline void gcmalloc(gcpointer(T)* ptr)
17{
[6643e72]18        ptr { gc_allocate(sizeof(T)) };
19        get(ptr) {};
[e297ceb]20      gc_conditional_collect();
21}
Note: See TracBrowser for help on using the repository browser.