confirmed to work with standard gfortran