[Dwarf-Discuss] Callable interface for Fortran "coarray" features
Bishop, John E
Tue Dec 29 22:14:57 GMT 2020
> So what about these structures makes them difficult to describe in DWARF?
> Let each producer define structures that work for them.
Fortran defines the TEAM_TYPE as "processor dependent", which means implementation is up to the compiler/run-time implementation. It could be a pointer to a structure; it could be a key to a database, it could be a small integer which is mapped to a row in a table. In other words, different implementations (Intel, gfortran, IBM,..) can do very different things. Even if they were all structures, they might have different members with different types.
The problem is that the consumer wants semantics, not implementation. A consumer has questions like "what is the parent TEAM for the current TEAM?".
To do this with structures, DWARF would have to define TEAM_TYPE, etc.. The producer would have to generate and maintain the DWARF-style description of what it was doing in parallel with its actual implementation. This isn't impossible, but I thought it would be a bigger burden than a callable interface which would directly query the actual implementation.
More information about the Dwarf-discuss