From c334efd36bc6cb66cb7b9bdc70d1f9472a441cf8 Mon Sep 17 00:00:00 2001 From: Richard Beare Date: Fri, 5 Aug 2016 15:43:50 +1000 Subject: [PATCH] Writing R extensions says: Most R header files can be included within C++ programs but they should not be included within an extern "C" block (as they include system headers). This patch moves the Rdefines.h and Rversion.h outside the extern block. --- Lib/r/rrun.swg | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Lib/r/rrun.swg b/Lib/r/rrun.swg index 823b61ea5..f2c14a574 100644 --- a/Lib/r/rrun.swg +++ b/Lib/r/rrun.swg @@ -1,15 +1,4 @@ -#ifdef __cplusplus -#include -extern "C" { -#endif - -/* for raw pointer */ -#define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_R_ConvertPtr(obj, pptr, type, flags) -#define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_R_ConvertPtr(obj, pptr, type, flags) -#define SWIG_NewPointerObj(ptr, type, flags) SWIG_R_NewPointerObj(ptr, type, flags) - - /* Remove global namespace pollution */ #if !defined(SWIG_NO_R_NO_REMAP) # define R_NO_REMAP @@ -20,6 +9,17 @@ extern "C" { #include #include + +#ifdef __cplusplus +#include +extern "C" { +#endif + +/* for raw pointer */ +#define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_R_ConvertPtr(obj, pptr, type, flags) +#define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_R_ConvertPtr(obj, pptr, type, flags) +#define SWIG_NewPointerObj(ptr, type, flags) SWIG_R_NewPointerObj(ptr, type, flags) + #include #include