static void b_break(char **av) { if (av[1] != NULL) { arg_count("break"); return; } rc_raise(eBreak); }
extern void rc_error(char *s) { pr_error(s, -1); set(FALSE); redirq = NULL; cond = FALSE; /* no longer inside conditional */ rc_raise(eError); }
extern void sigint(int s) { if (s != SIGINT) panic("s != SIGINT in sigint catcher"); /* this is the newline you see when you hit ^C while typing a command */ if (interactive && nl_on_intr) fprint(2, "\n"); nl_on_intr = TRUE; redirq = NULL; cond = FALSE; rc_raise(eError); }
static void b_return(char **av) { if (*++av != NULL) ssetstatus(av); rc_raise(eReturn); }