If you use the -assume realloc_lhs or -standard-semantics compile flags to get standard-conforming behavior, assignment to an allocatable lhs array works properly under most circumstances. However, here is an example (attached) where it doesn't. In this case the rhs vector is polymorphic and the assignment statement is in one of the TYPE IS stanzas of a SELECT TYPE construct applied to the polymorphic vector. This is standard conforming and works with other compilers, but the Intel 14.0.2 compiler produces code that gives a run-time error at that assignment statement. See the attached example.
For more complete information about compiler optimizations, see our Optimization Notice.