[all-commits] [llvm/llvm-project] 7ff906: [flang] Delay parse tree rewriting for I/O UNIT=fu...

Peter Klausler via All-commits all-commits at lists.llvm.org
Thu Oct 6 11:30:18 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 7ff9064b2609f2bcc8ca277f8cbb7f2f17d8e369
      https://github.com/llvm/llvm-project/commit/7ff9064b2609f2bcc8ca277f8cbb7f2f17d8e369
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2022-10-06 (Thu, 06 Oct 2022)

  Changed paths:
    M flang/lib/Semantics/check-io.cpp
    M flang/lib/Semantics/rewrite-parse-tree.cpp
    M flang/test/Semantics/io04.f90
    A flang/test/Semantics/io13.f90

  Log Message:
  -----------
  [flang] Delay parse tree rewriting for I/O UNIT=func()

When an I/O statement's UNIT= specifier is a variable that is a
function reference, parse tree rewriting may determine the wrong type
of the result because generic resolution has not yet been performed.
So move this bit of parse tree rewriting into I/O semantic
checking so that the right handling (integer -> external file unit
number, character pointer -> internal I/O) applies.

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




More information about the All-commits mailing list