D. May differ in the presence of exceptions.
In call by reference, the called function is working with the memory location of the passed variables. So, any update to the variables are immediately effective.
In call by value-result, the called function is working with a copy of the passed variables. On return, the updated values are copied back to the original variables.
So, during a function execution if an exception happens, in call-by-value-result, the passed variables won't be getting updated values.