The issue fixed by the attached test case was that an automatic array wasn't properly initialized with -fcoarray=lib. As the code is for explicit-size arrays, it isn't reachable for allocatable coarrays. On the other hand, for coarrays with SAVE attribute, already the condition before should be triggered: else if (sym->attr.codimension && TREE_STATIC (sym->backend_decl)) Thus, removing the condition for good should be fine. (Alternatively, one could add an "|| !sym->attr.codimension".) Build and regtested on x86-64-gnu-linux. Committed as Rev. 211907. Tobias