# HG changeset patch # User Frits van Bommel # Date 1245519894 -7200 # Node ID b6b6afc2dfc72e1fff036709a6c5de369ac8b487 # Parent e07f15c4ab4d7af8a57b32910e71806e5d6c7620 Put scope-limited data on the stack instead of using 'new' and 'delete'. diff -r e07f15c4ab4d -r b6b6afc2dfc7 gen/functions.cpp --- a/gen/functions.cpp Sat Jun 20 19:12:04 2009 +0200 +++ b/gen/functions.cpp Sat Jun 20 19:44:54 2009 +0200 @@ -774,10 +774,12 @@ } // output function body - irfunction->gen = new FuncGen; - fd->fbody->toIR(gIR); - delete irfunction->gen; - irfunction->gen = 0; + { + FuncGen fg; + irfunction->gen = &fg; + fd->fbody->toIR(gIR); + irfunction->gen = 0; + } // TODO: clean up this mess