--- rpl/src/rplexternals.h 2010/04/07 13:45:10 1.6 +++ rpl/src/rplexternals.h 2010/05/25 18:09:45 1.10 @@ -1,6 +1,6 @@ /* ================================================================================ - RPL/2 (R) version 4.0.14 + RPL/2 (R) version 4.0.16 Copyright (C) 1989-2010 Dr. BERTRAND Joël This file is part of RPL/2. @@ -39,9 +39,10 @@ ================================================================================ */ -#define allocation(a) allocation((*rpl_arguments).s_etat_processus, a) -#define copie_objet(a, b) copie_objet((*rpl_arguments).s_etat_processus, a, b) -#define liberation(a) liberation((*rpl_arguments).s_etat_processus, a) +#define allocation(a) librpl_allocation((*rpl_arguments).s_etat_processus, a) +#define copie_objet(a, b) librpl_copie_objet( \ + (*rpl_arguments).s_etat_processus, a, b) +#define liberation(a) librpl_liberation((*rpl_arguments).s_etat_processus, a) /* -------------------------------------------------------------------------------- @@ -193,12 +194,17 @@ #define logger(...) do { syslog(LOG_NOTICE, __VA_ARGS__); } while(0) #define exportExternalFunctions(...) \ - char **__external_symbols(unsigned long *nb_symbols) { \ + char **__external_symbols(unsigned long *nb_symbols, \ + const char *version) { \ char arguments[] = #__VA_ARGS__; \ char **tableau; \ char *ptr1, *ptr2; \ int drapeau; \ unsigned long i; \ + if (strcmp(version, _d_version_rpl) != 0) \ + { \ + (*nb_symbols) = -1; return(NULL); \ + } \ (*nb_symbols) = 0; ptr1 = arguments; drapeau = 0; \ while((*ptr1) != 0) \ { \