+** New way to deal with non-local exits and reentries.
+
+There is a new set of functions that essentially do what
+scm_internal_dynamic_wind does, but in a more convenient way. Here is
+a quick example of how to prevent a potential memory leak:
+
+ void
+ foo ()
+ {
+ char *mem;
+
+ scm_begin_frame (0);
+
+ mem = scm_malloc (100);
+ scm_on_unwind (free, mem, SCM_F_WIND_EXPLICITELY);
+
+ /* MEM would leak if BAR throws an error. SCM_ON_UNWIND frees it
+ nevertheless.
+ */
+ bar ();
+
+ scm_end_frame ();
+
+ /* Because of SCM_F_WIND_EXPLICITELY, MEM will be freed by
+ SCM_END_FRAME as well.
+ */
+ }
+
+For full documentation, see the node "Frames" in the manual.
+