--- rpl/src/instructions_r2.c 2012/12/17 21:22:44 1.44 +++ rpl/src/instructions_r2.c 2024/01/17 16:57:15 1.80 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.1.11 - Copyright (C) 1989-2012 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.36 + Copyright (C) 1989-2024 Dr. BERTRAND Joël This file is part of RPL/2. @@ -350,7 +350,7 @@ instruction_return(struct_processus *s_e unsigned char *instruction_majuscule; unsigned char *tampon; - unsigned long registre_position_courante; + integer8 registre_position_courante; struct_liste_chainee *tampon_expression; @@ -381,21 +381,6 @@ instruction_return(struct_processus *s_e return; } - if ((*s_etat_processus).niveau_courant == ((*s_etat_processus) - .niveau_initial + 1)) - { - /* - * On ne peut rien dépiler ! - */ - - if ((*s_etat_processus).mode_execution_programme == 'Y') - { - (*s_etat_processus).requete_arret = 'Y'; - } - - return; - } - tampon = (*s_etat_processus).instruction_courante; tampon_expression = (*s_etat_processus).expression_courante; @@ -416,7 +401,7 @@ instruction_return(struct_processus *s_e (*s_etat_processus).instruction_courante) == d_faux) { (*s_etat_processus).erreur_systeme = d_es; - instruction_majuscule = conversion_majuscule( + instruction_majuscule = conversion_majuscule(s_etat_processus, (*s_etat_processus).instruction_courante); if (instruction_majuscule == NULL) @@ -886,13 +871,13 @@ instruction_rdm(struct_processus *s_etat logical1 drapeau_fin_objet_originel; logical1 variable_partagee; - unsigned long i; - unsigned long j; - unsigned long k; - unsigned long l; - unsigned long nombre_colonnes; - unsigned long nombre_dimensions; - unsigned long nombre_lignes; + integer8 i; + integer8 j; + integer8 k; + integer8 l; + integer8 nombre_colonnes; + integer8 nombre_dimensions; + integer8 nombre_lignes; (*s_etat_processus).erreur_execution = d_ex; @@ -1175,7 +1160,8 @@ instruction_rdm(struct_processus *s_etat nombre_lignes; if (((*((struct_vecteur *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(integer8))) == NULL) + = malloc(((size_t) nombre_lignes) * sizeof(integer8))) + == NULL) { if (variable_partagee == d_vrai) { @@ -1233,7 +1219,7 @@ instruction_rdm(struct_processus *s_etat nombre_lignes; if (((*((struct_vecteur *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(real8))) == NULL) + = malloc(((size_t) nombre_lignes) * sizeof(real8))) == NULL) { if (variable_partagee == d_vrai) { @@ -1292,8 +1278,8 @@ instruction_rdm(struct_processus *s_etat nombre_lignes; if (((*((struct_vecteur *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(struct_complexe16))) - == NULL) + = malloc(((size_t) nombre_lignes) * + sizeof(struct_complexe16))) == NULL) { if (variable_partagee == d_vrai) { @@ -1361,7 +1347,8 @@ instruction_rdm(struct_processus *s_etat nombre_lignes; if (((*((struct_vecteur *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(integer8))) == NULL) + = malloc(((size_t) nombre_lignes) * sizeof(integer8))) + == NULL) { if (variable_partagee == d_vrai) { @@ -1432,7 +1419,7 @@ instruction_rdm(struct_processus *s_etat nombre_lignes; if (((*((struct_vecteur *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(real8))) == NULL) + = malloc(((size_t) nombre_lignes) * sizeof(real8))) == NULL) { if (variable_partagee == d_vrai) { @@ -1504,8 +1491,8 @@ instruction_rdm(struct_processus *s_etat nombre_lignes; if (((*((struct_vecteur *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(struct_complexe16))) - == NULL) + = malloc(((size_t) nombre_lignes) * + sizeof(struct_complexe16))) == NULL) { if (variable_partagee == d_vrai) { @@ -1621,7 +1608,7 @@ instruction_rdm(struct_processus *s_etat .nombre_colonnes = nombre_colonnes; if (((*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(integer8 *))) + = malloc(((size_t) nombre_lignes) * sizeof(integer8 *))) == NULL) { if (variable_partagee == d_vrai) @@ -1642,7 +1629,8 @@ instruction_rdm(struct_processus *s_etat { if ((((integer8 **) (*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau)[i] = - malloc(nombre_colonnes * sizeof(integer8))) == NULL) + malloc(((size_t) nombre_colonnes) * sizeof(integer8))) + == NULL) { if (variable_partagee == d_vrai) { @@ -1707,7 +1695,7 @@ instruction_rdm(struct_processus *s_etat .nombre_colonnes = nombre_colonnes; if (((*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(real8 *))) + = malloc(((size_t) nombre_lignes) * sizeof(real8 *))) == NULL) { if (variable_partagee == d_vrai) @@ -1728,7 +1716,8 @@ instruction_rdm(struct_processus *s_etat { if ((((real8 **) (*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau)[i] = - malloc(nombre_colonnes * sizeof(real8))) == NULL) + malloc(((size_t) nombre_colonnes) * sizeof(real8))) + == NULL) { if (variable_partagee == d_vrai) { @@ -1793,8 +1782,8 @@ instruction_rdm(struct_processus *s_etat .nombre_colonnes = nombre_colonnes; if (((*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(struct_complexe16 *))) - == NULL) + = malloc(((size_t) nombre_lignes) * + sizeof(struct_complexe16 *))) == NULL) { if (variable_partagee == d_vrai) { @@ -1814,7 +1803,7 @@ instruction_rdm(struct_processus *s_etat { if ((((struct_complexe16 **) (*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau)[i] = - malloc(nombre_colonnes * + malloc(((size_t) nombre_colonnes) * sizeof(struct_complexe16))) == NULL) { if (variable_partagee == d_vrai) @@ -1891,7 +1880,7 @@ instruction_rdm(struct_processus *s_etat .nombre_colonnes = nombre_colonnes; if (((*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(integer8 *))) + = malloc(((size_t) nombre_lignes) * sizeof(integer8 *))) == NULL) { if (variable_partagee == d_vrai) @@ -1914,7 +1903,7 @@ instruction_rdm(struct_processus *s_etat { if ((((integer8 **) (*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau)[i] = - malloc(nombre_colonnes * + malloc(((size_t) nombre_colonnes) * sizeof(integer8))) == NULL) { if (variable_partagee == d_vrai) @@ -1991,7 +1980,7 @@ instruction_rdm(struct_processus *s_etat .nombre_colonnes = nombre_colonnes; if (((*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(real8 *))) + = malloc(((size_t) nombre_lignes) * sizeof(real8 *))) == NULL) { if (variable_partagee == d_vrai) @@ -2014,7 +2003,7 @@ instruction_rdm(struct_processus *s_etat { if ((((real8 **) (*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau)[i] = - malloc(nombre_colonnes * + malloc(((size_t) nombre_colonnes) * sizeof(real8))) == NULL) { if (variable_partagee == d_vrai) @@ -2091,8 +2080,8 @@ instruction_rdm(struct_processus *s_etat .nombre_colonnes = nombre_colonnes; if (((*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau - = malloc(nombre_lignes * sizeof(struct_complexe16 *))) - == NULL) + = malloc(((size_t) nombre_lignes) + * sizeof(struct_complexe16 *))) == NULL) { if (variable_partagee == d_vrai) { @@ -2114,7 +2103,7 @@ instruction_rdm(struct_processus *s_etat { if ((((struct_complexe16 **) (*((struct_matrice *) (*s_objet_redimensionne).objet)).tableau)[i] = - malloc(nombre_colonnes * + malloc(((size_t) nombre_colonnes) * sizeof(struct_complexe16))) == NULL) { if (variable_partagee == d_vrai)