Any chance we'll see support for impure elemental procedures sometime soon? It would certainly aid debugging my overloaded operators and assignments. Abstract factory patterns in Fortran often require type gaurding the RHS these operators and assignments. If they are elemental and if an incompatable type is passed (which might extend a common abstract parent class) there is no good way to signal an error. This error will likely have to pass silently.
For more complete information about compiler optimizations, see our Optimization Notice.