Dear experts,
when trying to use the GSL random engines via ROOT, I find the following:
$ source /cvmfs/sft.cern.ch/lcg/views/dev4/latest/x86_64-el9-gcc11-opt/setup.sh
$ root
------------------------------------------------------------------
| Welcome to ROOT 6.32.01 https://root.cern |
| (c) 1995-2024, The ROOT Team; conception: R. Brun, F. Rademakers |
| Built for linuxx8664gcc on May 29 2024, 23:39:51 |
| From heads/v6-32-00-patches@v6-32-00-23-gd0b74546af |
| With g++ (GCC) 11.3.0 |
| Try '.help'/'.?', '.demo', '.license', '.credits', '.quit'/'.q' |
------------------------------------------------------------------
root [0] ROOT::Math::QuasiRandom<ROOT::Math::GSLRngRanLuxS2> hh
In module 'MathMore':
/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Thu/ROOT/v6-32-00-patches/x86_64-el9-gcc11-opt/include/Math/QuasiRandom.h:71:26: error: too many arguments to function call, expected 0, have 1
fEngine.Initialize(dimension);
~~~~~~~~~~~~~~~~~~ ^~~~~~~~~
ROOT_prompt_0:1:53: note: in instantiation of member function 'ROOT::Math::QuasiRandom<ROOT::Math::GSLRngRanLuxS2>::QuasiRandom' requested here
ROOT::Math::QuasiRandom<ROOT::Math::GSLRngRanLuxS2> hh
^
/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev4/Thu/ROOT/v6-32-00-patches/x86_64-el9-gcc11-opt/include/Math/GSLRndmEngines.h:98:12: note: 'Initialize' declared here
void Initialize();
To solve the issue, is it enough to change the signature of GSLRandomEngine::Initialize()
to GSLRandomEngine::Initialize(int)
?
Best,
Alvaro