Bug 121060 - ICE when argument is associate name created from type-bound operator result

2025-07-13 Thread Damian Rouson
This one was challenging to even describe. This ICE occurs with gfortran 12, 13, 14, and 15. % cat all.f90 module subdomain_m implicit none type subdomain_t real :: s_ = 0. contains generic :: operator(.laplacian.) => laplacian procedure laplacian end type contains functi

Questions on `scan` Intrinsic Implementation (For Fortran 2023 `split` procedure)

2025-07-13 Thread c8ef
Hi all, I'm currently working on implementing the `split` procedure, which was added in Fortran 2023. Given its similar functionality to the `scan` intrinsic, I've been learning the implementation of `scan` to better understand its mechanics. During my investigation of the source code, I've c

[RFC 1/1] fortran: Add TARGET_CLONES attribute support

2025-07-13 Thread ZAMBAR
From: ZAMBAR This patch implements the TARGET_CLONES attribute for Fortran functions, using C-style comma-separated syntax for target specifications. The implementation adds: - Parsing support for TARGET_CLONES("target1", "target2", ...) - Integration with existing multiple target infrastructure

[RFC 0/1] fortran: TARGET_CLONES attribute argument parsing syntax

2025-07-13 Thread ZAMBAR
From: ZAMBAR Hi all, I would like to seek feedback on the implementation approach for the TARGET_CLONES attribute in gfortran, specifically regarding the syntax for parsing multiple target specifications. Currently, I have implemented TARGET_CLONES support for Fortran using a C-style comma-s

[PATCH] fortran: Factor array descriptor references

2025-07-13 Thread Mikael Morin
Regression tested on x86_64-pc-linux-gnu. OK for master? -- >8 -- Save subexpressions of array descriptor references to variables, so that all the expressions using the descriptor as base object benefit from a simplified reference using the variables. This limits the size of the expressions gen