diff options
author | Mikael Morin <mikael@gcc.gnu.org> | 2025-07-27 17:11:40 +0200 |
---|---|---|
committer | Mikael Morin <mikael@gcc.gnu.org> | 2025-07-27 17:25:39 +0200 |
commit | 5f9f20df98b1fe8dd8b179b157d268470bde70f4 (patch) | |
tree | ba0789183aa4c372f619639b2051896035a1fc72 /gcc/tree-ssa-loop-prefetch.cc | |
parent | a5861d329a9453ba6ebd4d77c66ef44f5c8c160d (diff) | |
download | gcc-5f9f20df98b1fe8dd8b179b157d268470bde70f4.zip gcc-5f9f20df98b1fe8dd8b179b157d268470bde70f4.tar.gz gcc-5f9f20df98b1fe8dd8b179b157d268470bde70f4.tar.bz2 |
fortran: Bound class container lookup after array descriptor [PR121185]
Don't look for a class container too far after an array descriptor.
This avoids generating a polymorphic array reference, using the virtual
table of a parent object, to access a non-polymorphic child having a
type unrelated to that of the parent.
PR fortran/121185
gcc/fortran/ChangeLog:
* trans-expr.cc (gfc_get_class_from_expr): Give up class
container lookup on the second COMPONENT_REF after an array
descriptor.
gcc/testsuite/ChangeLog:
* gfortran.dg/assign_13.f90: New test.
Diffstat (limited to 'gcc/tree-ssa-loop-prefetch.cc')
0 files changed, 0 insertions, 0 deletions