Am 15.09.25 um 19:21 schrieb Jerry D:
On 9/15/25 1:56 AM, Mikael Morin wrote:
Le 14/09/2025 à 21:17, Harald Anlauf a écrit :
Am 13.09.25 um 22:54 schrieb Mikael Morin:
Le 12/09/2025 à 22:51, Harald Anlauf a écrit :
Well, the patch changes gfc_variable_attr, but see also the comment
I cited. This is needed that the scalarized assignment sees the
ultimate component, which is an allocatable scalar for the testcase.
I did not claim that gfc_expr_attr always returns the right attributes.
I bet it does for some definition of "right".
Anyway, I'm propably wasting my time arguing about this.
Let's wait and see if something breaks.
It is never a waste of time to have open dialogue. We all learn from
this exchange. Breaking things is also a way to learn and promote
further investigation.
Quite true.
Ideally, if we kick the tree, all bad apples (bugs) will fall down
eventually.
Regarding attributes, dimensions, and all that stuff, there is an
apparent history visible when looking at the code. And when it
comes to component, substring, or specially inquiry references
(type, kind, real and imaginary part, all of which were added
over time), the handling seems scattered over lots of places.
I've been wondering if there is some strategy to "differentially"
debug the frontend: using a simple testcase, and replacing just
a single token by another one, and see when and how the path
splits and maybe rejoins later.
Cases at hand: pr108581. Replacing fixed-length character by
deferred length. Or pr121939: character(kind=4) vs. kind=1.
Cheers!
Cheers to all,
Jerry