<div dir="ltr">Of course, if you think it is necessary.<div><br></div><div>I met a very similar problem about one year ago. GSL is a pure C library, and try/catch is something in C++.</div><div><br></div><div>Best,</div><div><br></div><div>KK</div><div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Dec 11, 2014 at 10:36 AM, Dirk Eddelbuettel <span dir="ltr"><<a href="mailto:edd@debian.org" target="_blank">edd@debian.org</a>></span> wrote:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Qiang, how about wrapping ten lines of context around<br>
it and making it an Rcpp Gallery post?  This ought to be documented....<br>
<br>
Dirk<br>
<div><div class="h5"><br>
|<br>
|<br>
| On Thu, Dec 11, 2014 at 10:03 AM, Devin <<a href="mailto:devin.heer@gmail.com">devin.heer@gmail.com</a>> wrote:<br>
|<br>
|<br>
|     Dear list<br>
|<br>
|      <br>
|<br>
|     My Rcpp source file contains a gsl_sf_hyperg_2F1() function, and for some<br>
|     input values to this function the return value is “NaN”, which leads in<br>
|     RStudio to an abortion error.<br>
|<br>
|      <br>
|<br>
|     In order to avoid abortion errors, I try to implement a try/catch exception<br>
|     handler:<br>
|<br>
|<br>
|     // [[Rcpp::depends(RcppGSL)]]<br>
|<br>
|     #include <RcppGSL.h><br>
|<br>
|     #include <gsl/gsl_sf_hyperg.h><br>
|<br>
|      <br>
|<br>
|     #include <Rcpp.h><br>
|<br>
|     #include <math.h><br>
|<br>
|     using namespace Rcpp;<br>
|<br>
|      <br>
|<br>
|     // [[Rcpp::export]]<br>
|<br>
|     int test()<br>
|<br>
|     {<br>
|<br>
|         try{<br>
|<br>
|             gsl_sf_hyperg_2F1(1,1,1.1467003,1); //  abortion error since not<br>
|     defined<br>
|<br>
|         }<br>
|<br>
|         catch(std::domain_error& e){<br>
|<br>
|             std::cout << "Domain Error occurred!"  << std::endl;<br>
|<br>
|         }<br>
|<br>
|         return 0;<br>
|<br>
|     }<br>
|<br>
|      <br>
|<br>
|     This seems to be wrong, since it still causes an abortion error in RStudio.<br>
|<br>
|      <br>
|<br>
|     I appreciate any input<br>
|<br>
|      <br>
|<br>
|     Thanks<br>
|<br>
|     Devin<br>
|<br>
|      <br>
|<br>
|<br>
|     _______________________________________________<br>
|     Rcpp-devel mailing list<br>
|     <a href="mailto:Rcpp-devel@lists.r-forge.r-project.org">Rcpp-devel@lists.r-forge.r-project.org</a><br>
|     <a href="https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel" target="_blank">https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel</a><br>
|<br>
|<br>
|<br>
|<br>
| --<br>
| Qiang Kou<br>
| <a href="mailto:qkou@umail.iu.edu">qkou@umail.iu.edu</a><br>
| School of Informatics and Computing, Indiana University<br>
|<br>
| _______________________________________________<br>
| Rcpp-devel mailing list<br>
| <a href="mailto:Rcpp-devel@lists.r-forge.r-project.org">Rcpp-devel@lists.r-forge.r-project.org</a><br>
| <a href="https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel" target="_blank">https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel</a><br>
<br>
--<br>
</div></div><a href="http://dirk.eddelbuettel.com" target="_blank">http://dirk.eddelbuettel.com</a> | @eddelbuettel | <a href="mailto:edd@debian.org">edd@debian.org</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Qiang Kou<div><a href="mailto:qkou@umail.iu.edu" target="_blank">qkou@umail.iu.edu</a><br><div>School of Informatics and Computing, Indiana University</div><div><br></div></div></div></div>
</div></div></div>