static void DoSave (Widget w) { char *sname; XtPopdown (save_popup); sname = XawDialogGetValueString (save_dialog); save_unparse_buffer (sname); save_cont (); };
static pic_value pic_callcc(pic_state *pic, pic_value proc) { struct fullcont *cont = pic_malloc(pic, sizeof(struct fullcont)); if (setjmp(cont->jmp) != 0) { return pic_valuesk(pic, cont->retc, cont->retv); } else { pic_value c[1]; save_cont(pic, cont); /* save the continuation object in proc */ c[0] = pic_lambda(pic, cont_call, 1, pic_data_value(pic, cont, &cont_type)); return pic_applyk(pic, proc, 1, c); } }
static void DontSave (Widget w) { XtPopdown (save_popup); changed = 0; save_cont (); };