[Bug fortran/102003] [PDT] Length of character component not simplified
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jul 12 11:35:52 GMT 2023
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102003
--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Andre Vehreschild <vehre@gcc.gnu.org>:
https://gcc.gnu.org/g:f9182da3213aa57c16dd0b52862126de4a259f6a
commit r14-2461-gf9182da3213aa57c16dd0b52862126de4a259f6a
Author: Andre Vehreschild <vehre@gcc.gnu.org>
Date: Wed Jul 12 12:51:30 2023 +0200
gfortran: Allow ref'ing PDT's len() in parameter-initializer.
Fix declaring a parameter initialized using a pdt_len reference
not simplifying the reference to a constant.
2023-07-12 Andre Vehreschild <vehre@gcc.gnu.org>
gcc/fortran/ChangeLog:
PR fortran/102003
* expr.cc (find_inquiry_ref): Replace len of pdt_string by
constant.
(simplify_ref_chain): Ensure input to find_inquiry_ref is
NULL.
(gfc_match_init_expr): Prevent PDT analysis for function calls.
(gfc_pdt_find_component_copy_initializer): Get the initializer
value for given component.
* gfortran.h (gfc_pdt_find_component_copy_initializer): New
function.
* simplify.cc (gfc_simplify_len): Replace len() of PDT with pdt
component ref or constant.
gcc/testsuite/ChangeLog:
* gfortran.dg/pdt_33.f03: New test.
More information about the Gcc-bugs
mailing list