[all-commits] [llvm/llvm-project] fa6b57: [flang] Account for shadowed symbols when skimming...

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


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

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

  Log Message:
  -----------
  [flang] Account for shadowed symbols when skimming executable part (#70246)

Name resolution takes a quick pass over the executable part of a
(sub)program in search of symbols that appear to be called as
procedures, so that those names don't get mistakenly converted into
objects when finishing up specification part processing. This pass
doesn't currently cope with symbol shadowing by nested declarations in
executable constructs. This patch ensures that nested declarations for
symbols that could be used in contexts that might have been parsed as
function references properly shadow symbols of the same name in outer
scopes.




More information about the All-commits mailing list