Esempio n. 1
0
/*

=item C<static void runcode(PARROT_INTERP, int argc, char *argv[])>

This function runs the code in the interpreter's (in C<PARROT_INTERP>)
code segment.

=cut

*/
static void
runcode(PARROT_INTERP, int argc, ARGIN(char *argv[]))
{

    /* runs :init functions */
    PackFile_fixup_subs(interp, PBC_MAIN, NULL);

    Parrot_runcode(interp, argc, argv);
}
Esempio n. 2
0
File: main.c Progetto: kapace/parrot
static void
PDB_run_code(PARROT_INTERP, int argc, const char *argv[])
{
    new_runloop_jump_point(interp);
    if (setjmp(interp->current_runloop->resume)) {
        free_runloop_jump_point(interp);
        fprintf(stderr, "Caught exception\n");
        return;
    }

    /* Loop to avoid exiting at program end */
    do {
        Parrot_runcode(interp, argc, argv);
        interp->pdb->state |= PDB_STOPPED;
    } while (! (interp->pdb->state & PDB_EXIT));
    free_runloop_jump_point(interp);
}