diff options
author | joequant <joequant@gmail.com> | 2013-07-14 20:29:37 +0800 |
---|---|---|
committer | joequant <joequant@gmail.com> | 2013-07-14 20:29:37 +0800 |
commit | e8c6384f77b05514f26338fae463860b865ddf97 (patch) | |
tree | 8ab4dcd30f2293a313b58ae3584395d13baedfb0 | |
parent | 93b63969f9b70895ee1d841c66f414b1be46e90d (diff) | |
download | swig-e8c6384f77b05514f26338fae463860b865ddf97.tar.gz |
add regression tests for SEXP return values
-rw-r--r-- | Examples/test-suite/r/Makefile.in | 3 | ||||
-rw-r--r-- | Examples/test-suite/r/r_sexp_runme.R | 7 | ||||
-rw-r--r-- | Examples/test-suite/r_sexp.i | 10 |
3 files changed, 19 insertions, 1 deletions
diff --git a/Examples/test-suite/r/Makefile.in b/Examples/test-suite/r/Makefile.in index bece71c2f..18e2d4b25 100644 --- a/Examples/test-suite/r/Makefile.in +++ b/Examples/test-suite/r/Makefile.in @@ -16,7 +16,8 @@ C_TEST_CASES += \ CPP_TEST_CASES += \ r_double_delete \ - r_overload_array + r_overload_array \ + r_sexp include $(srcdir)/../common.mk diff --git a/Examples/test-suite/r/r_sexp_runme.R b/Examples/test-suite/r/r_sexp_runme.R new file mode 100644 index 000000000..96b36e8af --- /dev/null +++ b/Examples/test-suite/r/r_sexp_runme.R @@ -0,0 +1,7 @@ +source("unittest.R") +dyn.load(paste("r_sexp", .Platform$dynlib.ext, sep="")) +source("r_sexp.R") +cacheMetaData(1) + +obj <- return_sexp(1); +unittest(obj, 1) diff --git a/Examples/test-suite/r_sexp.i b/Examples/test-suite/r_sexp.i new file mode 100644 index 000000000..9f786f428 --- /dev/null +++ b/Examples/test-suite/r_sexp.i @@ -0,0 +1,10 @@ +%module r_sexp + +extern "C" SEXP return_sexp(SEXP x); + +%inline %{ +SEXP return_sexp(SEXP x) { + return x; //Rcpp NumericVector is automatically casted to SEXP +} +%} + |