Skip to content

Commit 92e3905

Browse files
committed
add EXTPTR compatibility re-maps
1 parent 7988863 commit 92e3905

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

src/rJava.h

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,21 @@
7878

7979
#include "config.h"
8080

81+
/* R 4.0.1 broke EXTPTR_PTR ABI so re-map it to safety at the small expense of speed */
82+
#ifdef EXTPTR_PTR
83+
#undef EXTPTR_PTR
84+
#endif
85+
#define EXTPTR_PTR(X) R_ExternalPtrAddr(X)
86+
/* PROT/TAG are safe so far, but just to make sure ... */
87+
#ifdef EXTPTR_PROT
88+
#undef EXTPTR_PROT
89+
#endif
90+
#define EXTPTR_PROT(X) R_ExternalPtrProtected(X)
91+
#ifdef EXTPTR_TAG
92+
#undef EXTPTR_TAG
93+
#endif
94+
#define EXTPTR_TAG(X) R_ExternalPtrTag(X)
95+
8196
#ifdef MEMPROF
8297
#include <stdio.h>
8398
#include <time.h>

0 commit comments

Comments
 (0)