Skip to content

Commit 9aa6423

Browse files
committed
[RF] Add fallback to RooFit's EvalBackend when built without clad.
1 parent 99cce7a commit 9aa6423

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

roofit/roofitcore/src/RooGlobalFunc.cxx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -560,7 +560,16 @@ RooCmdArg EventRange(Int_t nStart, Int_t nStop)
560560

561561
// RooAbsPdf::fitTo arguments
562562

563-
EvalBackend::EvalBackend(EvalBackend::Value value) : RooCmdArg{"EvalBackend", static_cast<int>(value)} {}
563+
EvalBackend::EvalBackend(EvalBackend::Value value) : RooCmdArg{"EvalBackend", static_cast<int>(value)}
564+
{
565+
#ifndef ROOFIT_CLAD
566+
if (value == Value::Codegen || value == Value::CodegenNoGrad) {
567+
oocoutE(nullptr, InputArguments)
568+
<< "RooFit was built without clad. Codegen backends are unavailable. Falling back to default.\n";
569+
setInt(0, static_cast<int>(defaultValue()));
570+
}
571+
#endif
572+
}
564573
EvalBackend::EvalBackend(std::string const &name) : EvalBackend{toValue(name)} {}
565574
EvalBackend::Value EvalBackend::toValue(std::string const &name)
566575
{

0 commit comments

Comments
 (0)