--- rpl/src/interface_tex.c 2017/08/03 17:17:50 1.66 +++ rpl/src/interface_tex.c 2018/12/21 10:56:22 1.69 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.1.28 - Copyright (C) 1989-2017 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.29 + Copyright (C) 1989-2018 Dr. BERTRAND Joël This file is part of RPL/2. @@ -1562,13 +1562,11 @@ formateur_elementaire_tex(struct_process if (niveau == 0) { - sprintf((unsigned char *) (*s_sous_objet_1) - .objet, "%s", &(((unsigned char *) - (*s_sous_objet_1).objet)[1])); - ((unsigned char *) (*s_sous_objet_1).objet) - [strlen((unsigned char *) - (*s_sous_objet_1).objet) - 1] = - d_code_fin_chaine; + memmove(((unsigned char *) (*s_sous_objet_1) + .objet), ((unsigned char *) + (*s_sous_objet_1).objet) + 1, + strlen((unsigned char *) + (*s_sous_objet_1).objet)); } } @@ -2193,15 +2191,25 @@ correction_formateur_tex(struct_processu */ case '#' : +# if __GNUC__ >= 7 + __attribute__ ((fallthrough)); +# endif + case '_' : { if (mode_mathematique == d_vrai) { break; } +# if __GNUC__ >= 7 + __attribute__ ((fallthrough)); +# endif } case '%' : +# if __GNUC__ >= 7 + __attribute__ ((fallthrough)); +# endif case '&' : { if ((tampon = (unsigned char *) malloc((strlen((*ligne)) + 2) *