[all-commits] [llvm/llvm-project] 37b2e2: [flang] Semantic analysis for FINAL subroutines

Peter Klausler via All-commits all-commits at lists.llvm.org
Wed Sep 30 15:47:03 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 37b2e2b04cf434b368b1edf29609be21952316f9
      https://github.com/llvm/llvm-project/commit/37b2e2b04cf434b368b1edf29609be21952316f9
  Author: peter klausler <pklausler at nvidia.com>
  Date:   2020-09-30 (Wed, 30 Sep 2020)

  Changed paths:
    M flang/include/flang/Evaluate/characteristics.h
    M flang/include/flang/Evaluate/type.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Semantics/tools.h
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/mod-file.h
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/test/Semantics/call03.f90
    M flang/test/Semantics/call05.f90
    A flang/test/Semantics/final01.f90
    M flang/test/Semantics/modfile10.f90
    M flang/test/Semantics/resolve32.f90
    M flang/test/Semantics/resolve55.f90

  Log Message:
  -----------
  [flang] Semantic analysis for FINAL subroutines

Represent FINAL subroutines in the symbol table entries of
derived types.  Enforce constraints.  Update tests that have
inadvertent violations or modified messages.  Added a test.

The specific procedure distinguishability checking code for generics
was used to enforce distinguishability of FINAL procedures.
(Also cleaned up some confusion and redundancy noticed in the
type compatibility infrastructure while digging into that area.)

Differential revision: https://reviews.llvm.org/D88613




More information about the All-commits mailing list