In a certain circumstance, the execution of a sourced allocation statement does not allocate the pointer (and there is no allocation error); it's as if the statment was just skipped. It's pretty clear that the 13.0 compiler has generated some bad object code. This error appears to be triggered when the pointer is a derived type with an allocatable CLASS(*) component, and the pointer is the result variable of the enclosing function. I've attached a short example code that demonstrates the bug.
13.0 compiler bug/RTE: sourced-allocation fails to allocate pointer in certain cases
In a certain circumstance, the execution of a sourced allocation statement does not allocate the pointer (and there is no allocation error); it's as if the statment was just skipped. It's pretty clear that the 13.0 compiler has generated some bad object code. This error appears to be triggered when the pointer is a derived type with an allocatable CLASS(*) component, and the pointer is the result variable of the enclosing function. I've attached a short example code that demonstrates the bug.