gdl/gdl-alias.patch

55 lines
1.8 KiB
Diff

diff -up gdl-0.9.8/src/basic_pro_jmg.cpp.alias gdl-0.9.8/src/basic_pro_jmg.cpp
--- gdl-0.9.8/src/basic_pro_jmg.cpp.alias 2018-04-11 19:20:07.670748377 -0600
+++ gdl-0.9.8/src/basic_pro_jmg.cpp 2018-04-12 09:01:16.578294989 -0600
@@ -23,6 +23,7 @@
#include "envt.hpp"
#include "dinterpreter.hpp"
+#include "prognode.hpp"
#include "basic_pro_jmg.hpp"
#define MAXNDLL 40
@@ -38,8 +39,8 @@ namespace lib {
using namespace std;
- void (*dynPro[MAXNDLL/2])( EnvT* e);
- BaseGDL*(*dynFun[MAXNDLL/2])( EnvT* e);
+ LibPro dynPro[MAXNDLL/2];
+ LibFun dynFun[MAXNDLL/2];
void point_lun( EnvT* e)
{
@@ -141,11 +142,11 @@ namespace lib {
#if defined(_WIN32) && !defined(__CYGWIN__)
if (funcType == 0) {
- (void* &) dynPro[count_pro] =
- (void *) GetProcAddress(module[count], entryName.c_str());
+ dynPro[count_pro] =
+ (LibPro) GetProcAddress(module[count], entryName.c_str());
} else if (funcType == 1) {
- (BaseGDL* &) dynFun[count_fun] =
- (BaseGDL*) GetProcAddress(module[count], entryName.c_str());
+ dynFun[count_fun] =
+ (LibFun) GetProcAddress(module[count], entryName.c_str());
} else {
printf("Improper function type: %d\n", funcType);
FreeLibrary(module[count]);
@@ -153,11 +154,11 @@ namespace lib {
}
#else
if (funcType == 0) {
- (void* &) dynPro[count_pro] =
- (void *) dlsym(module[count], entryName.c_str());
+ dynPro[count_pro] =
+ (LibPro) dlsym(module[count], entryName.c_str());
} else if (funcType == 1) {
- (BaseGDL* &) dynFun[count_fun] =
- (BaseGDL*) dlsym(module[count], entryName.c_str());
+ dynFun[count_fun] =
+ (LibFun) dlsym(module[count], entryName.c_str());
} else {
printf("Improper function type: %d\n", funcType);
dlclose(module[count]);