--- rpl/src/instructions_o2.c 2010/04/27 15:53:36 1.8 +++ rpl/src/instructions_o2.c 2010/04/28 06:41:06 1.9 @@ -466,83 +466,4 @@ instruction_obget(struct_processus *s_et return; } - -/* -================================================================================ - Fonction 'onexit' -================================================================================ - Entrées : --------------------------------------------------------------------------------- - Sorties : --------------------------------------------------------------------------------- - Effets de bord : néant -================================================================================ -*/ - -void -instruction_onexit(struct_processus *s_etat_processus) -{ - struct_objet *s_objet_argument; - - (*s_etat_processus).erreur_execution = d_ex; - - if ((*s_etat_processus).affichage_arguments == 'Y') - { - printf("\n ONEXIT "); - - if ((*s_etat_processus).langue == 'F') - { - printf("(exécution d'une fonction à la sortie d'une tâche)\n\n"); - } - else - { - printf("(register a function to be called on task exit)\n\n"); - } - - printf(" 1: %s, %s\n", d_NOM, d_RPN); - - return; - } - else if ((*s_etat_processus).test_instruction == 'Y') - { - (*s_etat_processus).nombre_arguments = 1; - return; - } - - if (test_cfsf(s_etat_processus, 31) == d_vrai) - { - if (empilement_pile_last(s_etat_processus, 1) == d_erreur) - { - return; - } - } - - if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), - &s_objet_argument) == d_erreur) - { - (*s_etat_processus).erreur_execution = d_ex_manque_argument; - return; - } - - if ((*s_objet_argument).type == NOM) - { - liberation(s_etat_processus, (*s_etat_processus).on_exit); - (*s_etat_processus).on_exit = s_objet_argument; - } - else if ((*s_objet_argument).type == RPN) - { - liberation(s_etat_processus, (*s_etat_processus).on_exit); - (*s_etat_processus).on_exit = s_objet_argument; - } - else - { - liberation(s_etat_processus, s_objet_argument); - - (*s_etat_processus, s_objet_argument); - return; - } - - return; -} - // vim: ts=4