Changes in / [a6dd5b0:9c98156]
- Location:
- src/examples/gc_no_raii
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
src/examples/gc_no_raii/src/gc.h
ra6dd5b0 r9c98156 7 7 static inline gcpointer(T) gcmalloc() 8 8 { 9 gcpointer(T) ptr; 10 void* address = gc_allocate(sizeof(T)); 11 (&ptr){ address }; 12 ctor(&ptr, address); 9 gcpointer(T) ptr = { gc_allocate(sizeof(T)) }; 10 ptr{}; 13 11 gc_conditional_collect(); 14 12 return ptr; 15 13 } 14 15 forall(otype T) 16 static inline void gcmalloc(gcpointer(T)* ptr) 17 { 18 ptr{ gc_allocate(sizeof(T)) }; 19 (*ptr){}; 20 gc_conditional_collect(); 21 } -
src/examples/gc_no_raii/test/gctest.c
ra6dd5b0 r9c98156 8 8 sout | "Bonjour au monde!\n"; 9 9 10 gcpointer(int) anInt = gcmalloc(); 10 for(int i = 0; i < 1000000; i++) { 11 gcpointer(int) anInt; 12 gcmalloc(&anInt); 13 } 11 14 }
Note: See TracChangeset
for help on using the changeset viewer.