[lammps-users] LAMMPS-reax compilation problem ...

Hi Steve,

There seems to be an inconsistent declaration in the reax pair style that leads to an error during compilation with the reax package, using the current LAMMPS version (lammps-27Sep10).

The error is reported as:
pair_reax.cpp: In member function 'virtual void LAMMPS_NS::PairREAX::compute(int, int)':
pair_reax_fortran.h:184: error: too many arguments to function 'void srtbon1_(int*, int*, double*)'
pair_reax.cpp:163: error: at this point in file

Looking at the call and its corresponding header declaration:
pair_reax.cpp: FORTRAN(srtbon1, SRTBON1)(&iprune, &ihb, &hbcut, &ihbnew);
pair_reax_fortran.h:extern "C" void FORTRAN(srtbon1,SRTBON1)(int*,int*,double*);

It would seem that the .h external declaration should probably be,

pair_reax_fortran.h:extern "C" void FORTRAN(srtbon1,SRTBON1)(int*,int*,double*,int*);

in order to handle the ihbnew argument correctly.

Andres

Included this fix in the 28Sep10 patch.

Steve