Landing: 2851a6b21c89

Project / Subsystem

gcc / fortran

Date

2026-05-28

Author

Jerry DeLisle

Commit

2851a6b21c89d80b81f9ce06cdfb943a172eca42

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
fortran
patch_id
commit_hash
2851a6b21c89d80b81f9ce06cdfb943a172eca42
source_type
github
headline
Fortran: Fixes ICE in DO CONCURRENT with DEFAULT(NONE) inside ASSOCIATE.
tldr
This commit resolves two bugs that caused an Internal Compiler Error (ICE) when a Fortran `DO CONCURRENT` loop with inline type-spec iterators was nested withi…
author
Jerry DeLisle
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • fortran
  • compiler-bug
  • parallel-programming
  • semantic-analysis
discussion_id_link
bugzilla_pr
date
2026-05-28T00:00:00.000Z

Two bugs in the Fortran compiler’s check_default_none_expr function, located in resolve.cc, led to an Internal Compiler Error (ICE) or segmentation fault. This specifically occurred when a DO CONCURRENT loop, utilizing inline type-specification iterators, was used inside an ASSOCIATE construct with the DEFAULT(NONE) attribute. The first bug involved incorrect namespace handling for ASSOCIATE bodies, while the second involved misidentifying shadow iterators. These fixes ensure correct compilation of complex Fortran constructs involving DO CONCURRENT, ASSOCIATE, and DEFAULT(NONE), improving the compiler’s robustness.