! { dg-do compile } ! PR 69154 - inlined matmul used to cause an ICE inside a WHERE. MODULE m_numeric_tools INTEGER, PARAMETER :: dp=8 CONTAINS subroutine llsfit_svd(xx,yy,sigma,nfuncs,funcs,chisq,par,var,cov,info) real(dp),intent(in) :: xx(:),yy(:),sigma(:) real(dp),dimension(SIZE(xx)) :: bb,sigm1 real(dp) :: tmp(nfuncs) real(dp),allocatable :: work(:),Vt(:,:),U(:,:),S(:) WHERE (S>TOL_*MAXVAL(S)) tmp=MATMUL(bb,U)/S END WHERE end subroutine llsfit_svd END MODULE m_numeric_tools