[all-commits] [llvm/llvm-project] e87cdd: [flang] Fix bogus error on aliased derived type (#...

Peter Klausler via All-commits all-commits at lists.llvm.org
Tue Oct 31 11:26:44 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e87cdda35e062f39e72b5912a255821bf002041d
      https://github.com/llvm/llvm-project/commit/e87cdda35e062f39e72b5912a255821bf002041d
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2023-10-31 (Tue, 31 Oct 2023)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/generic07.f90

  Log Message:
  -----------
  [flang] Fix bogus error on aliased derived type (#69959)

When a derived type definition is visible by two or more names in the
same scope due to USE renaming, any generic ASSIGNMENT(=) or OPERATOR()
bindings in the type will produce incorrect error messages about
indistinguishable specific procedures. This is due to the use of a
std::vector<> to hold a sequence of symbols and some derived information
for the specific procedures of the generic name. Change to a std::map<>
indexed by the ultimate symbol of each specific so that duplicates
cannot arise.




More information about the All-commits mailing list