--- rpl/src/instructions_o2.c 2010/04/27 15:53:36 1.8 +++ rpl/src/instructions_o2.c 2013/02/26 19:56:15 1.42 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.0.15 - Copyright (C) 1989-2010 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.12 + Copyright (C) 1989-2013 Dr. BERTRAND Joël This file is part of RPL/2. @@ -20,7 +20,7 @@ */ -#include "rpl.conv.h" +#include "rpl-conv.h" /* @@ -463,85 +463,6 @@ instruction_obget(struct_processus *s_et return; } - 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; }