[all-commits] [llvm/llvm-project] 036701: [flang] Correct procedure pointer (or dummy) compa...

Peter Klausler via All-commits all-commits at lists.llvm.org
Fri Jan 27 14:53:30 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 036701a1773320e7a2ea4f9cdba1e90b1a4a17d7
      https://github.com/llvm/llvm-project/commit/036701a1773320e7a2ea4f9cdba1e90b1a4a17d7
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2023-01-27 (Fri, 27 Jan 2023)

  Changed paths:
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Evaluate/formatting.cpp
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/test/Semantics/assign09.f90
    A flang/test/Semantics/assign12.f90
    M flang/test/Semantics/call05.f90
    M flang/test/Semantics/global01.f90

  Log Message:
  -----------
  [flang] Correct procedure pointer (or dummy) compatibility check

Fix a subtle bug in procedure compatibility checking with base
derived types vs. their extensions to ensure that a procedure
expecting an extended type cannot be associated with a pointer
(or dummy procedure) to a procedure expecting a base type.

  subroutine s1(base); ... subroutine s2(extended)
  procedure(s1), pointer :: p
  p => s2 ! <- must be caught as an error

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




More information about the All-commits mailing list