[all-commits] [llvm/llvm-project] 2216c4: [flang] Catch name conflict between generic TBP an...

Peter Klausler via All-commits all-commits at lists.llvm.org
Thu Mar 2 10:21:08 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2216c4c6a4e29a945af75f02b9a733ac5b016ed7
      https://github.com/llvm/llvm-project/commit/2216c4c6a4e29a945af75f02b9a733ac5b016ed7
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2023-03-02 (Thu, 02 Mar 2023)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/resolve117.f90

  Log Message:
  -----------
  [flang] Catch name conflict between generic TBP and inherited non-generic

A generic procedure binding in an extended derived type may not have the
same name as a symbol inherited from an ancestor type unless that inherited
symbol is also a generic TBP.  Since generic names can be things like
"ASSIGNMENT(=)", name resolution doesn't use OkToAddComponent() for
generic TBPs, which would have caught this error as it does for other
symbols in derived types, so it must be special-cased.

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




More information about the All-commits mailing list