--- rpl/src/rpl.h 2011/06/23 13:03:39 1.99 +++ rpl/src/rpl.h 2011/06/25 10:40:48 1.104 @@ -1,6 +1,6 @@ /* ================================================================================ - RPL/2 (R) version 4.1.0.prerelease.3 + RPL/2 (R) version 4.1.0.prerelease.4 Copyright (C) 1989-2011 Dr. BERTRAND Joël This file is part of RPL/2. @@ -23,21 +23,28 @@ #ifndef INCLUSION_RPL #define INCLUSION_RPL -#define _GNU_SOURCE -#define _POSIX_C_SOURCE 200112L +#ifndef __RPLCAS +# define _GNU_SOURCE +# define _POSIX_C_SOURCE 200112L +#endif + #define _REENTRANT -#ifdef Darwin -# define _DARWIN_C_SOURCE -#endif +#ifndef __RPLCAS +# ifdef Darwin +# define _DARWIN_C_SOURCE +# endif -#ifdef OpenBSD -# define _BSD_SOURCE +# ifdef OpenBSD +# define _BSD_SOURCE +# endif #endif #ifdef OS2 -# define _BSD_SOURCE -# define _XOPEN_SOURCE 600 +# ifndef __RPLCAS +# define _BSD_SOURCE +# define _XOPEN_SOURCE 600 +# endif # include enum { SHUT_RD = 0, SHUT_WR, SHUT_RDWR }; @@ -923,6 +930,7 @@ pid_t debug_fork(); # define d_ex_nom_implicite __erreur(81) # define d_ex_version_bibliotheque __erreur(82) # define d_ex_creation_variable_globale __erreur(83) +# define d_ex_erreur_interne_rplcas __erreur(84) #endif @@ -973,6 +981,7 @@ pid_t debug_fork(); #define VIN __RPL_VIN #define VRL __RPL_VRL +enum t_rplcas_commandes { RPLCAS_INTEGRATION = 0, RPLCAS_LIMITE }; enum t_type { ADR = 0, ALG, BIN, CHN, CPL, FCH, FCT, INT, LST, MCX, MIN, MRL, MTX, NOM, NON, PRC, REL, RPN, SCK, @@ -2810,7 +2819,6 @@ void affichage_pile(struct_processus *s_ niveau_courant); #endif -void *allocation(struct_processus *s_etat_processus, enum t_type type); void *allocation_maillon(struct_processus *s_etat_processus); #ifndef RPLARGS @@ -2889,6 +2897,8 @@ void insertion_thread_surveillance(struc void integrale_romberg(struct_processus *s_etat_processus, struct_objet *s_expression, unsigned char *variable, real8 a, real8 b, real8 precision); +void interface_cas(struct_processus *s_etat_processus, + enum t_rplcas_commandes commande); void interruption1(SIGHANDLER_ARGS); void interruption2(SIGHANDLER_ARGS); void interruption3(SIGHANDLER_ARGS); @@ -3070,8 +3080,6 @@ unsigned char *formateur_nombre(struct_p void *valeur_numerique, unsigned char type); unsigned char *formateur_reel(struct_processus *s_etat_processus, void *valeur_numerique, unsigned char type); -unsigned char *interface_cas(struct_processus *s_etat_processus, - unsigned char *commande, unsigned char *argument); unsigned char *messages(struct_processus *s_etat_processus); unsigned char *purification_chaine(unsigned char *chaine); unsigned char *reencodage(struct_processus *s_etat_processus, @@ -3267,6 +3275,7 @@ struct_objet *copie_objet(struct_process struct_objet *s_objet, unsigned char type); #ifndef RPLARGS +struct_objet *allocation(struct_processus *s_etat_processus, enum t_type type); struct_objet *formateur_date(struct_processus *s_etat_processus, struct timeval *temps); struct_objet *lecture_pipe(struct_processus *s_etat_processus, int pipe);