The compiler generates an implicit try...finally frame around each procedure that needs initialization or nalization of variables, and nalizes the variables in the finally block. This slows down these procedures (up to 5-10% sometimes). With this directive, the generation of such frames can be disabled. One should be careful with this directive, because it can lead to memory leaks if an exception occurs inside the routine. Therefore, it is set to OFF by default.