As a newbie I was ready to meet troubles while starting usage of the ABINIT, but not like that...
I run UBUNTU 18.04, ABINIT 8.10.3 (downloaded from abinit.org), compiler - GNU Fortran (Ubuntu 9.2.1-17ubuntu1~18.04.1) 9.2.1 20191102. Below you see part of output (with the command line and the error messages) for /src/78_effpot/m_polynomial_coeff.F90.
===============================================================
gfortran -m64 -DHAVE_CONFIG_H -I. -I../../../src/78_effpot -I../.. -I../../src/77_ddb -I../../../src/77_ddb -I../../src/32_util -I../../../src/32_util -I../../src/44_abitools -I../../../src/44_abitools -I../../src/27_toolbox_oop -I../../../src/27_toolbox_oop -I../../src/44_abitypes_defs -I../../../src/44_abitypes_defs -I../../src/72_response -I../../../src/72_response -I../../src/16_hideleave -I../../../src/16_hideleave -I../../src/42_parser -I../../../src/42_parser -I../../src/55_abiutil -I../../../src/55_abiutil -I../../src/41_geometry -I../../../src/41_geometry -I../../src/45_geomoptim -I../../../src/45_geomoptim -I../../src/12_hide_mpi -I../../../src/12_hide_mpi -I../../src/10_defs -I../../../src/10_defs -I../../src/14_hidewrite -I../../../src/14_hidewrite -I../../src/57_iovars -I../../../src/57_iovars -I../../src/28_numeric_noabirule -I../../../src/28_numeric_noabirule -I../../src/incs -I../../../src/incs -I/home/ovb/abinit-8.10.3/LAMBDA/fallbacks/exports/include -ffree-form -J/home/ovb/abinit-8.10.3/LAMBDA/src/mods -O2 -mtune=native -march=native -m64 -g -ffree-line-length-none -fopenmp -c -o m_polynomial_coeff.o ../../../src/78_effpot/m_polynomial_coeff.F90
../../../src/78_effpot/m_polynomial_coeff.F90
2800 | do icoeff1=icoeff,ncoeff+nstr
| 2
......
2883 | & index_coeff,list_combination,icoeff1,max_power_strain,&
| 1
Error: Variable ‘icoeff1’ at (1) not definable inside loop beginning at (2) as INTENT(INOUT) argument to subroutine ‘computecombinationfromlist’
../../../src/78_effpot/m_polynomial_coeff.F90
2553 | do icoeff1=icoeff,ncoeff+nstr
| 2
......
2643 | & icoeff1,icoeff_tot,natom,ncoeff,nstr,ncoeff_out,nrpt,nsym,power_disp+1,&
| 1
Error: Variable ‘icoeff1’ at (1) not definable inside loop beginning at (2) as INTENT(INOUT) argument to subroutine ‘computenorder’
Makefile
make[3]: *** [m_polynomial_coeff.o] Error 1
==========================================================================
It is very strange as far as so many people work with this code but looking through the source I have to "agree with compiler": in both cases the variable ‘icoeff1’ is a "do-variable" but supposed to be changed by subroutine. If so the loop statement can be easily modified to avoid this error, let say like
----------------------
icoeff1 = icoeff; do while ( icoeff1 <= ncoeff+nstr )
....
icoeff1 = icoeff1+1; end do
----------------------
Anyway, is anything wrong with 'my compiler'?
Thank you in advance,
Oleg Boev