Index: src/examples/gc_no_raii/bug-repro/push_back.c
===================================================================
--- src/examples/gc_no_raii/bug-repro/push_back.c	(revision 385c1309bdc9ace6d6de8377cf50fe8b65bccccb)
+++ src/examples/gc_no_raii/bug-repro/push_back.c	(revision 385c1309bdc9ace6d6de8377cf50fe8b65bccccb)
@@ -0,0 +1,48 @@
+#include <stddef.h>
+#include <stdint.h>
+
+//------------------------------------------------------------------------------
+//Declaration
+trait allocator_c(otype T, otype allocator_t) {
+	void realloc(allocator_t*, size_t);
+	T* data(allocator_t*);
+};
+
+forall(otype T, otype allocator_t | allocator_c(T, allocator_t))
+struct vector
+{
+	allocator_t storage;
+	size_t size;
+};
+
+//------------------------------------------------------------------------------
+//Allocator
+forall(otype T)
+struct heap_allocator
+{
+	T* storage;
+	size_t capacity;
+};
+
+forall(otype T)
+void realloc(heap_allocator(T)* this, size_t size);
+
+forall(otype T)
+inline T* data(heap_allocator(T)* this)
+{
+	return this->storage;
+}
+
+//------------------------------------------------------------------------------
+//Modifiers
+forall(otype T, otype allocator_t | allocator_c(T, allocator_t))
+void push_back(vector(T, allocator_t)* this, T value);
+
+typedef vector(intptr_t*, heap_allocator(intptr_t*)) worklist_t;
+
+inline void test()
+{
+	worklist_t w;
+	intptr_t zero = 0;
+	push_back(&w, &zero);
+}
Index: src/examples/gc_no_raii/bug-repro/test-assert.cpp
===================================================================
--- src/examples/gc_no_raii/bug-repro/test-assert.cpp	(revision 385c1309bdc9ace6d6de8377cf50fe8b65bccccb)
+++ src/examples/gc_no_raii/bug-repro/test-assert.cpp	(revision 385c1309bdc9ace6d6de8377cf50fe8b65bccccb)
@@ -0,0 +1,9 @@
+#include <cassert>
+#include "../src/tools/checks.h"
+
+int main(int argc, char* argv[])
+{
+	//check(false);
+	assert(false);
+	return 0;
+}
Index: src/examples/gc_no_raii/bug-repro/void_pointer.c
===================================================================
--- src/examples/gc_no_raii/bug-repro/void_pointer.c	(revision 29ad0aca9f324870dae03dc08594b28747857c11)
+++ src/examples/gc_no_raii/bug-repro/void_pointer.c	(revision 385c1309bdc9ace6d6de8377cf50fe8b65bccccb)
@@ -2,8 +2,8 @@
 #include <stdint.h>
 
-//inline intptr_t test(void* address)
-//{
-//	return (intptr_t)address;
-//}
+inline void* test(intptr_t address)
+{
+	return (void*)address;
+}
 
 //inline void* test2(void* address)
@@ -12,7 +12,7 @@
 //}
 
-inline int test()
-{
-	void* d = 0;
-	return (int)d;
-}
+// inline int test()
+// {
+// 	void* d = 0;
+// 	return (int)d;
+// }
