[all-commits] [llvm/llvm-project] 571ad7: [flang] Defer processing of non-pointer variable i...

Peter Klausler via All-commits all-commits at lists.llvm.org
Tue Jan 2 08:29:20 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 571ad7324f3a25f507a1014a0467890f17772c13
      https://github.com/llvm/llvm-project/commit/571ad7324f3a25f507a1014a0467890f17772c13
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-01-02 (Tue, 02 Jan 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/bad-forward-type.f90
    M flang/test/Semantics/init01.f90
    M flang/test/Semantics/pointer01.f90
    M flang/test/Semantics/symbol15.f90

  Log Message:
  -----------
  [flang] Defer processing of non-pointer variable initializers (#76475)

Initializers in entity-decls don't need to have their expressions
analyzed immediately in name resolution unless of course they are
defining the values of named constants. By deferring the expression
analysis, the compiler can better handle references to module and
internal procedures that might appear in structure constructors; at
present, these are typically rejected as being forward references (which
they can be) to subprogram names that can't yet be checked for
compatibility with the characteristics of the corresponding procedure
component.




More information about the All-commits mailing list