[all-commits] [llvm/llvm-project] c4f67e: [flang] Allow DATA initialization of derived types...

Peter Klausler via All-commits all-commits at lists.llvm.org
Mon Feb 14 10:44:09 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c4f67ea12e95449c975c8bec43d2330b2a6ad8a8
      https://github.com/llvm/llvm-project/commit/c4f67ea12e95449c975c8bec43d2330b2a6ad8a8
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2022-02-14 (Mon, 14 Feb 2022)

  Changed paths:
    M flang/include/flang/Semantics/tools.h
    M flang/include/flang/Semantics/type.h
    M flang/lib/Evaluate/initial-image.cpp
    M flang/lib/Semantics/check-data.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Semantics/type.cpp
    M flang/test/Semantics/data04.f90
    M flang/test/Semantics/data06.f90

  Log Message:
  -----------
  [flang] Allow DATA initialization of derived types w/ allocatable components

While one cannot of course statically initialize an allocatable component
of an instance of a derived type, its mere presence should not prevent
DATA initialization of the other nonallocatable components.  Semantics
was treating the existence of an allocatable component as a case of
"default initialization", which it is, but not one that should run
afoul of C877.  Add another Boolean argument to IsInitialized() to allow
for a more nuanced test.

Differential Revision: https://reviews.llvm.org/D119449




More information about the All-commits mailing list