TFormula error from Double_t modulus operator overload?

Hi,
I’m unable to use the modulus operator in a TFormula:

TFormula("", "x % 10").Eval(11)

I get the following:

input_line_62:2:69: error: invalid operands to binary expression ('Double_t' (aka 'double') and 'double')
Double_t TFormula____id4750648198878682285(Double_t *x){ return x[0]%10 ; }
                                                                ~~~~^~~
Error in <TFormula::PrepareEvalMethod>: Can't compile function TFormula____id4750648198878682285 prototype with arguments Double_t*
Error in <TFormula::InputFormulaIntoCling>: Error compiling formula expression in Cling
Error in <TFormula::ProcessFormula>: Formula "x%10" is invalid !
Error in <TFormula::Eval>: Formula is invalid and not ready to execute 
(double) nan

This works with ROOT::v5::TFormula but not with the ROOT6 TFormula.


ROOT Version: 6.14
Platform: Debian, CentOS 7
Compiler: gcc


TFormula("", "fmod(x, 10.)").Eval(11)
1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.