Hello world, after the recent discussion about MATMUL(A,TRANSPOSE(B)) I have prepared a patch which implements this. The patch is a rather straightforward implementation using the machinery that is already in place for matmul inlining, so the risk of introducing a regression should be quite low. Because of this, and beacuse this is a significant use case, I think this could still be OK for trunk. Jerry already indicated in the PR that this could be the case. Regression-tested. So... comments? Toon, would this help you? Could yo maybe give this a spin? Regards Thomas 2016-01-17 Thomas Koenig PR fortran/66094 * frontend-passes.c (enum matrix_case): Add case A2B2T for MATMUL(A,TRANSPoSE(B)) where A and B are rank 2. (inline_limit_check): Also add A2B2T. (matmul_lhs_realloc): Handle A2B2T. (check_conjg_variable): Rename to (check_conjg_transpose_variable): and also count TRANSPOSE. (inline_matmul_assign): Handle A2B2T. 2016-01-17 Thomas Koenig PR fortran/66094 * gfortran.dg/inline_matmul_13.f90: New test. * gfortran.dg/matmul_bounds_8.f90: New test. * gfortran.dg/matmul_bounds_9.f90: New test. * gfortran.dg/matmul_bounds_10.f90: New test.