[all-commits] [llvm/llvm-project] b09c89: [flang] Clean up bogus semantic error on procedure...

Peter Klausler via All-commits all-commits at lists.llvm.org
Sat Jul 23 10:18:43 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b09c8905108c41102d1c2b23dae2faf8ac3a57de
      https://github.com/llvm/llvm-project/commit/b09c8905108c41102d1c2b23dae2faf8ac3a57de
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2022-07-23 (Sat, 23 Jul 2022)

  Changed paths:
    M flang/lib/Evaluate/characteristics.cpp
    M flang/test/Semantics/assign03.f90

  Log Message:
  -----------
  [flang] Clean up bogus semantic error on procedure pointer assignment

When a procedure pointer with no interface is associated with
an EXTERNAL name with no interface information, but it is later
inferred that the procedure pointer must be a subroutine because it
appears in a CALL statement, don't complain that the EXTERNAL name
is not also known to be a subroutine.

Subroutine vs. function errors are still caught in procedure pointer
assignment compatibility checking; this fix simply ensures that those
more nuanced tests are not overridded by the attribute set equality test.

Also, leave in some code for dumping the differing attributes in legitimate
error cases that was added in the coures of debugging the specific problem.

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




More information about the All-commits mailing list