This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libfortran/80850] Sourced allocate() fails to allocate a pointer
- From: "liakhdi at ornl dot gov" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sun, 29 Oct 2017 18:50:45 +0000
- Subject: [Bug libfortran/80850] Sourced allocate() fails to allocate a pointer
- Auto-submitted: auto-generated
- References: <bug-80850-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80850
--- Comment #20 from DIL <liakhdi at ornl dot gov> ---
So, if we for a second trust valgrind executed on an -O3 optimized binary, then
line 1402 of gfc_graph.F90, namely,
ierr=git%append_vertex(vrt)
should be the origin. The object vrt (type graph_vertex_t) is the object being
cloned in clone_object() that contains an uninitialized field (you mentioned
_len in the previous comments). In line 1113 of gfc_graph.F90, this
graph_vertex_t object is passed into VectorIterAppend() (gfc_vector.F90:773) as
an unlimited polymorphic dummy argument, so I guess that's where it acquires
the _len field, right?