While this now creates a temporary for the output array, the output is still
wrong as MVBITS wants an INTENT(*INOUT*) argument and the created temporary
does not take over the initial values on creation. It seems to me like a
bug in gfc_conv_elemental_dependencies, as this should indeed be done for
INTENT(*INOUT*), shouldn't it? So my question, do you think it's ok to fix
this there in general or is it done the way it is at the moment for some
reason I'm missing at the moment, so that I must not "fix" this behaviour?
I don't see why not. It's not a bug because, until now, only
INTENT(OUT) arrived there; from interface assignements.