stan-dev / rstan

RStan, the R interface to Stan
https://mc-stan.org
1.04k stars 267 forks source link

Ternary operation on Windows 7 not compiling with 2.17.2 #481

Open christacular opened 6 years ago

christacular commented 6 years ago

Summary:

Ternary operation on Windows not compiling with 2.17.2

Description:

I'm getting the error below on Windows. Everything else on Stan seems to compile fine for me. As a sanity check I ran the same code on pystan 2.17.1.0 on Linux and it compiled fine (in the 2.17.1, did not compile in 2.17.0).

Reproducible Steps:

library(rstan)

devtools::session_info("rstan")

injected_data = list(

   y = 5
)

model_to_use = "
   data {
     real y; 
   }
   parameters {
      real a;
      real b;
   }
   model {
      target += (y==0) ? a : b; 
   }

"

#FIT THE MODEL
fit = stan(
   model_code = model_to_use,
   data = injected_data,
   iter = 500,
   chains = 1
)

Current Output:

source('~/workspace/rstan_applications/XXX/ternary.R') In file included from C:/Program Files/R/R-3.4.3/library/BH/include/boost/config.hpp:39:0, from C:/Program Files/R/R-3.4.3/library/BH/include/boost/math/tools/config.hpp:13, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core/var.hpp:7, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core/gevv_vvv_vari.hpp:5, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core.hpp:12, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/mat.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/src/stan/model/model_header.hpp:4, from file1fb82c0c6a77.cpp:8: C:/Program Files/R/R-3.4.3/library/BH/include/boost/config/compiler/gcc.hpp:186:0: warning: "BOOST_NO_CXX11_RVALUE_REFERENCES" redefined

define BOOST_NO_CXX11_RVALUE_REFERENCES

^

:0:0: note: this is the location of the previous definition In file included from C:/Program Files/R/R-3.4.3/library/BH/include/boost/multi_array/base.hpp:28:0, from C:/Program Files/R/R-3.4.3/library/BH/include/boost/multi_array.hpp:21, from C:/Program Files/R/R-3.4.3/library/BH/include/boost/numeric/odeint/util/multi_array_adaption.hpp:29, from C:/Program Files/R/R-3.4.3/library/BH/include/boost/numeric/odeint.hpp:61, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/arr/functor/integrate_ode_rk45.hpp:17, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/arr.hpp:38, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/mat.hpp:298, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/mat.hpp:12, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/src/stan/model/model_header.hpp:4, from file1fb82c0c6a77.cpp:8: C:/Program Files/R/R-3.4.3/library/BH/include/boost/multi_array/concept_checks.hpp: In static member function 'static void boost::multi_array_concepts::detail::idgen_helper::call(Array&, const IdxGen&, Call_Type)': C:/Program Files/R/R-3.4.3/library/BH/include/boost/multi_array/concept_checks.hpp:42:43: warning: typedef 'index_range' locally defined but not used [-Wunused-local-typedefs] typedef typename Array::index_range index_range; ^ C:/Program Files/R/R-3.4.3/library/BH/include/boost/multi_array/concept_checks.hpp:43:37: warning: typedef 'index' locally defined but not used [-Wunused-local-typedefs] typedef typename Array::index index; ^ C:/Program Files/R/R-3.4.3/library/BH/include/boost/multi_array/concept_checks.hpp: In static member function 'static void boost::multi_array_concepts::detail::idgen_helper<0ull>::call(Array&, const IdxGen&, Call_Type)': C:/Program Files/R/R-3.4.3/library/BH/include/boost/multi_array/concept_checks.hpp:53:43: warning: typedef 'index_range' locally defined but not used [-Wunused-local-typedefs] typedef typename Array::index_range index_range; ^ C:/Program Files/R/R-3.4.3/library/BH/include/boost/multi_array/concept_checks.hpp:54:37: warning: typedef 'index' locally defined but not used [-Wunused-local-typedefs] typedef typename Array::index index; ^ In file included from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/mat/fun/promote_scalar.hpp:4:0, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/mat.hpp:174, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/mat.hpp:12, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/src/stan/model/model_header.hpp:4, from file1fb82c0c6a77.cpp:8: C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/scal/fun/promote_scalar.hpp: In instantiation of 'static T stan::math::promote_scalar_struct::apply(S) [with T = double; S = stan::math::var]': C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/scal/fun/promote_scalar.hpp:68:50: required from 'typename stan::math::promote_scalar_type::type stan::math::promote_scalar(const S&) [with T = double; S = stan::math::var; typename stan::math::promote_scalar_type::type = double]' file1fb82c0c6a77.cpp:196:83: required from 'T__ model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4::log_prob(std::vector&, std::vector&, std::ostream*) const [with bool propto__ = true; bool jacobian__ = true; T__ = stan::math::var; std::ostream = std::basic_ostream]' C:/Program Files/R/R-3.4.3/library/StanHeaders/include/src/stan/model/log_prob_grad.hpp:45:39: required from 'double stan::model::log_prob_grad(const M&, std::vector&, std::vector&, std::vector&, std::ostream*) [with bool propto = true; bool jacobian_adjust_transform = true; M = model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4; std::ostream = std::basic_ostream]' C:/Program Files/R/R-3.4.3/library/rstan/include/rstan/stan_fit.hpp:1164:99: required from 'SEXPREC* rstan::stan_fit::grad_log_prob(SEXP, SEXP) [with Model = model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4; RNG_t = boost::random::additive_combine_engine, boost::random::linear_congruential_engine >; SEXP = SEXPREC*]' file1fb82c0c6a77.cpp:376:170: required from here C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/scal/fun/promote_scalar.hpp:32:19: error: invalid cast from type 'stan::math::var' to type 'double' return T(x); ^ C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/scal/fun/promote_scalar.hpp: In static member function 'static T stan::math::promote_scalar_struct::apply(S) [with T = double; S = stan::math::var]': C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/scal/fun/promote_scalar.hpp:33:7: warning: control reaches end of non-void function [-Wreturn-type] } ^ In file included from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core/operator_unary_plus.hpp:7:0, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core.hpp:36, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/mat.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/src/stan/model/model_header.hpp:4, from file1fb82c0c6a77.cpp:8: C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/scal/fun/constants.hpp: At global scope: C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/prim/scal/fun/constants.hpp:65:18: warning: 'stan::math::NEGATIVE_EPSILON' defined but not used [-Wunused-variable] const double NEGATIVE_EPSILON ^ In file included from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core.hpp:44:0, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/mat.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/src/stan/model/model_header.hpp:4, from file1fb82c0c6a77.cpp:8: C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core/set_zero_all_adjoints.hpp:14:17: warning: 'void stan::math::set_zero_all_adjoints()' defined but not used [-Wunused-function] static void set_zero_all_adjoints() { ^ make: *** [file1fb82c0c6a77.o] Error 1 Warning message: running command 'make -f "C:/PROGRA~1/R/R-34~1.3/etc/x64/Makeconf" -f "C:/PROGRA~1/R/R-34~1.3/share/make/winshlib.mk" SHLIB_LDFLAGS='$(SHLIB_CXXLDFLAGS)' SHLIB_LD='$(SHLIB_CXXLD)' SHLIB="file1fb82c0c6a77.dll" WIN=64 TCLBIN=64 OBJECTS="file1fb82c0c6a77.o"' had status 2

ERROR(s) during compilation: source code errors or compiler configuration errors!

Program source: 1: 2: // includes from the plugin 3: 4: 5: // user includes 6: #define STANSERVICESCOMMAND_HPP// Code generated by Stan version 2.17.0 7: 8: #include <stan/model/model_header.hpp> 9: 10: namespace model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace { 11: 12: using std::istream; 13: using std::string; 14: using std::stringstream; 15: using std::vector; 16: using stan::io::dump; 17: using stan::math::lgamma; 18: using stan::model::prob_grad; 19: using namespace stan::math; 20: 21: typedef Eigen::Matrix<double,Eigen::Dynamic,1> vector_d; 22: typedef Eigen::Matrix<double,1,Eigen::Dynamic> row_vector_d; 23: typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic> matrix_d; 24: 25: static int current_statement_begin; 26: 27: stan::io::program_reader prog_reader() { 28: stan::io::program_reader reader; 29: reader.add_event(0, 0, "start", "model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4"); 30: reader.add_event(12, 12, "end", "model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4"); 31: return reader; 32: } 33: 34: class model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4 : public prob_grad { 35: private: 36: double y; 37: public: 38: model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4(stan::io::var_context& context, 39: std::ostream* pstream = 0) 40: : prob_grad(0) { 41: ctor_body(context, 0, pstream); 42: } 43: 44: model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4(stan::io::var_context& context, 45: unsigned int random_seed, 46: std::ostream* pstream = 0) 47: : prob_grad(0) { 48: ctor_body(context__, random_seed, pstream); 49: } 50: 51: void ctor_body(stan::io::var_context& context, 52: unsigned int random_seed, 53: std::ostream* pstream) { 54: boost::ecuyer1988 base_rng = 55: stan::services::util::create_rng(random_seed, 0); 56: (void) base_rng; // suppress unused var warning 57: 58: current_statement_begin = -1; 59: 60: static const char* function = "model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4"; 61: (void) function__; // dummy to suppress unused var warning 62: size_t pos; 63: (void) pos; // dummy to suppress unused var warning 64: std::vector vals_i__; 65: std::vector vals_r; 66: double DUMMY_VAR(std::numeric_limits::quiet_NaN()); 67: (void) DUMMY_VAR; // suppress unused var warning 68: 69: // initialize member variables 70: try { 71: current_statement_begin = 3; 72: context__.validate_dims("data initialization", "y", "double", context.to_vec()); 73: y = double(0); 74: vals_r = context.vals_r("y"); 75: pos = 0; 76: y = vals_r[pos++]; 77: 78: // validate, data variables 79: current_statement_begin = 3; 80: // initialize data variables 81: 82: 83: // validate transformed data 84: 85: // validate, set parameter ranges 86: num_params_r = 0U; 87: param_ranges_i.clear(); 88: current_statement_begin = 6; 89: ++num_params_r; 90: current_statement_begin = 7; 91: ++num_params_r__; 92: } catch (const std::exception& e) { 93: stan::lang::rethrow_located(e, current_statement_begin, prog_reader()); 94: // Next line prevents compiler griping about no return 95: throw std::runtime_error(" IF YOU SEE THIS, PLEASE REPORT A BUG "); 96: } 97: } 98: 99: ~model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4() { } 100: 101: 102: void transform_inits(const stan::io::var_context& context, 103: std::vector& params_i, 104: std::vector& params_r, 105: std::ostream* pstream) const { 106: stan::io::writer writer__(params_r,params_i); 107: size_t pos; 108: (void) pos; // dummy call to supress warning 109: std::vector vals_r; 110: std::vector vals_i; 111: 112: if (!(context.contains_r("a"))) 113: throw std::runtime_error("variable a missing"); 114: vals_r = context.vals_r("a"); 115: pos = 0U; 116: context.validate_dims("initialization", "a", "double", context.to_vec()); 117: double a(0); 118: a = vals_r[pos++]; 119: try { 120: writer.scalar_unconstrain(a); 121: } catch (const std::exception& e) { 122: throw std::runtime_error(std::string("Error transforming variable a: ") + e.what()); 123: } 124: 125: if (!(context.contains_r("b"))) 126: throw std::runtime_error("variable b missing"); 127: vals_r = context.vals_r("b"); 128: pos = 0U; 129: context.validate_dims("initialization", "b", "double", context.to_vec()); 130: double b(0); 131: b = vals_r[pos++]; 132: try { 133: writer.scalar_unconstrain(b); 134: } catch (const std::exception& e) { 135: throw std::runtime_error(std::string("Error transforming variable b: ") + e.what()); 136: } 137: 138: params_r = writer.data_r(); 139: params_i = writer.data_i(); 140: } 141: 142: void transform_inits(const stan::io::var_context& context, 143: Eigen::Matrix<double,Eigen::Dynamic,1>& params_r, 144: std::ostream* pstream) const { 145: std::vector params_r_vec; 146: std::vector params_i_vec; 147: transform_inits(context, params_i_vec, params_r_vec, pstream); 148: params_r.resize(params_r_vec.size()); 149: for (int i = 0; i < params_r.size(); ++i) 150: params_r(i) = params_r_vec[i]; 151: } 152: 153: 154: template <bool propto, bool jacobian, typename T> 155: T log_prob(vector<T>& params_r, 156: vector& params_i, 157: std::ostream* pstream = 0) const { 158: 159: T__ DUMMY_VAR(std::numeric_limits::quiet_NaN()); 160: (void) DUMMY_VAR; // suppress unused var warning 161: 162: T lp(0.0); 163: stan::math::accumulator<T> lp_accum; 164: 165: try { 166: // model parameters 167: stan::io::reader<T> in(params_r__,params_i); 168: 169: T a; 170: (void) a; // dummy to suppress unused var warning 171: if (jacobian) 172: a = in.scalar_constrain(lp); 173: else 174: a = in.scalar_constrain(); 175: 176: T b; 177: (void) b; // dummy to suppress unused var warning 178: if (jacobian) 179: b = in.scalar_constrain(lp); 180: else 181: b = in.scalar_constrain(); 182: 183: 184: // transformed parameters 185: 186: 187: 188: // validate transformed parameters 189: 190: const char* function = "validate transformed params"; 191: (void) function; // dummy to suppress unused var warning 192: 193: // model body 194: 195: current_statement_begin = 10; 196: lp_accum.add((logical_eq(y,0) ? stan::math::promote_scalar(a) : stan::math::promote_scalar(b) )); 197: 198: } catch (const std::exception& e) { 199: stan::lang::rethrow_located(e, current_statement_begin, prog_reader()); 200: // Next line prevents compiler griping about no return 201: throw std::runtime_error(" IF YOU SEE THIS, PLEASE REPORT A BUG "); 202: } 203: 204: lp_accum.add(lp); 205: return lp_accum.sum(); 206: 207: } // logprob() 208: 209: template <bool propto, bool jacobian, typename T> 210: T_ logprob(Eigen::Matrix<T,Eigen::Dynamic,1>& paramsr, 211: std::ostream* pstream = 0) const { 212: std::vector<T> vec_params_r; 213: vec_params_r.reserve(params_r.size()); 214: for (int i = 0; i < params_r.size(); ++i) 215: vec_params_r.push_back(params_r(i)); 216: std::vector vec_params_i; 217: return logprob<propto,jacobian,T>(vec_params_r, vec_params_i, pstream); 218: } 219: 220: 221: void get_param_names(std::vector& names) const { 222: names.resize(0); 223: names__.push_back("a"); 224: names.push_back("b"); 225: } 226: 227: 228: void get_dims(std::vector<std::vector >& dimss) const { 229: dimss.resize(0); 230: std::vector dims; 231: dims.resize(0); 232: dimss.push_back(dims); 233: dims.resize(0); 234: dimss__.push_back(dims); 235: } 236: 237: template 238: void write_array(RNG& base_rng, 239: std::vector& params_r__, 240: std::vector& params_i, 241: std::vector& vars, 242: bool include_tparams__ = true, 243: bool include_gqs = true, 244: std::ostream pstream = 0) const { 245: vars.resize(0); 246: stan::io::reader in(params_r__,params_i); 247: static const char function = "model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::write_array"; 248: (void) function; // dummy to suppress unused var warning 249: // read-transform, write parameters 250: double a = in.scalar_constrain(); 251: double b = in.scalar_constrain(); 252: vars.push_back(a); 253: vars.push_back(b); 254: 255: if (!include_tparams) return; 256: // declare and define transformed parameters 257: double lp = 0.0; 258: (void) lp; // dummy to suppress unused var warning 259: stan::math::accumulator lp_accum; 260: 261: double DUMMY_VAR(std::numeric_limits::quiet_NaN()); 262: (void) DUMMY_VAR__; // suppress unused var warning 263: 264: try { 265: 266: 267: 268: // validate transformed parameters 269: 270: // write transformed parameters 271: 272: if (!include_gqs) return; 273: // declare and define generated quantities 274: 275: 276: 277: // validate generated quantities 278: 279: // write generated quantities 280: } catch (const std::exception& e) { 281: stan::lang::rethrow_located(e, current_statement_begin, prog_reader()); 282: // Next line prevents compiler griping about no return 283: throw std::runtime_error(" IF YOU SEE THIS, PLEASE REPORT A BUG "); 284: } 285: } 286: 287: template 288: void write_array(RNG& base_rng, 289: Eigen::Matrix<double,Eigen::Dynamic,1>& params_r, 290: Eigen::Matrix<double,Eigen::Dynamic,1>& vars, 291: bool include_tparams = true, 292: bool include_gqs = true, 293: std::ostream* pstream = 0) const { 294: std::vector params_r_vec(params_r.size()); 295: for (int i = 0; i < params_r.size(); ++i) 296: params_r_vec[i] = params_r(i); 297: std::vector vars_vec; 298: std::vector params_i_vec; 299: write_array(base_rng,params_r_vec,params_i_vec,vars_vec,include_tparams,include_gqs,pstream); 300: vars.resize(vars_vec.size()); 301: for (int i = 0; i < vars.size(); ++i) 302: vars(i) = vars_vec[i]; 303: } 304: 305: static std::string model_name() { 306: return "model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4"; 307: } 308: 309: 310: void constrained_param_names(std::vector& param_names, 311: bool include_tparams = true, 312: bool include_gqs = true) const { 313: std::stringstream param_name_stream; 314: param_name_stream.str(std::string()); 315: param_name_stream << "a"; 316: param_names.push_back(param_name_stream.str()); 317: param_name_stream.str(std::string()); 318: param_name_stream__ << "b"; 319: param_names.push_back(param_name_stream.str()); 320: 321: if (!include_gqs__ && !include_tparams) return; 322: 323: if (!include_gqs) return; 324: } 325: 326: 327: void unconstrained_param_names(std::vector& param_names__, 328: bool include_tparams = true, 329: bool include_gqs = true) const { 330: std::stringstream param_name_stream; 331: param_name_stream.str(std::string()); 332: param_name_stream << "a"; 333: param_names.push_back(param_name_stream.str()); 334: param_name_stream.str(std::string()); 335: param_name_stream__ << "b"; 336: param_names.push_back(param_name_stream.str()); 337: 338: if (!include_gqs__ && !include_tparams) return; 339: 340: if (!include_gqs__) return; 341: } 342: 343: }; // model 344: 345: } 346: 347: typedef model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4 stan_model; 348: 349: #include <rstan/rstaninc.hpp> 350: /* 351: Define Rcpp Module to expose stan_fit's functions to R. 352: */ 353: RCPP_MODULE(stan_fit4model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4mod){ 354: Rcpp::class<rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, 355: boost::random::ecuyer1988> >("stan_fit4model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4") 356: // .constructor() 357: .constructor<SEXP, SEXP, SEXP>() 358: // .constructor<SEXP, SEXP>() 359: .method("call_sampler", 360: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::call_sampler) 361: .method("param_names", 362: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::param_names) 363: .method("param_names_oi", 364: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::param_names_oi) 365: .method("param_fnames_oi", 366: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::param_fnames_oi) 367: .method("param_dims", 368: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::param_dims) 369: .method("param_dims_oi", 370: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::param_dims_oi) 371: .method("update_param_oi", 372: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::update_param_oi) 373: .method("param_oi_tidx", 374: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::param_oi_tidx) 375: .method("grad_log_prob", 376: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::grad_log_prob) 377: .method("log_prob", 378: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::log_prob) 379: .method("unconstrain_pars", 380: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::unconstrain_pars) 381: .method("constrain_pars", 382: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::constrain_pars) 383: .method("num_pars_unconstrained", 384: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::num_pars_unconstrained) 385: .method("unconstrained_param_names", 386: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::unconstrained_param_names) 387: .method("constrained_param_names", 388: &rstan::stan_fit<model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4_namespace::model1fb837373e6_d8fb5a4b005b985fd6da85b66601bbe4, boost::random::ecuyer1988>::constrained_param_names) 389: ; 390: } 391: 392: // declarations 393: extern "C" { 394: SEXP file1fb82c0c6a77( ) ; 395: } 396: 397: // definition 398: 399: SEXP file1fb82c0c6a77( ){ 400: return Rcpp::wrap("d8fb5a4b005b985fd6da85b66601bbe4"); 401: } 402: 403: Error in compileCode(f, code, language = language, verbose = verbose) : Compilation ERROR, function(s)/method(s) not created! In file included from C:/Program Files/R/R-3.4.3/library/BH/include/boost/config.hpp:39:0, from C:/Program Files/R/R-3.4.3/library/BH/include/boost/math/tools/config.hpp:13, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core/var.hpp:7, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core/gevv_vvv_vari.hpp:5, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/core.hpp:12, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math/rev/mat.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/stan/math.hpp:4, from C:/Program Files/R/R-3.4.3/library/StanHeaders/include/src/stan/model/model_header.hpp:4, from file1fb82c0c6a77.cpp:8: C:/Program Files/R/R-3.4.3/library/BH/include/boost/config/comp In addition: Warning message: running command 'C:/PROGRA~1/R/R-34~1.3/bin/x64/R CMD SHLIB file1fb82c0c6a77.cpp 2> file1fb82c0c6a77.cpp.err.txt' had status 1

Expected Output:

Compiles

RStan Version:

packageVersion("rstan") [1] ‘2.17.2’

R Version:

R.version.string [1] "R version 3.4.3 (2017-11-30)"

Operating System:

Windows 7

bgoodri commented 6 years ago

I think this is fixed but not released. https://github.com/stan-dev/stan/pull/2397