Index: doc/theses/rob_schluntz/examples/variadic/new.c
===================================================================
--- doc/theses/rob_schluntz/examples/variadic/new.c	(revision 90152a4860529aff7214be01cd22abd37012cd19)
+++ doc/theses/rob_schluntz/examples/variadic/new.c	(revision 90152a4860529aff7214be01cd22abd37012cd19)
@@ -0,0 +1,13 @@
+forall(dtype T | sized(T)) T * malloc(void);
+
+forall(dtype T, ttype Params | sized(T) | { void ?{}(T *, Params); })
+T * new(Params p) {
+  return ((T*)malloc()){ p }; // construct result of malloc
+}
+
+struct S { int x, y; }; 
+void ?{}(S *, int, int);
+
+int main() {
+  S * s = new(3, 4);
+}
