aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp
diff options
context:
space:
mode:
authorPeter Steinfeld <psteinfeld@nvidia.com>2020-12-02 12:31:56 -0800
committerPeter Steinfeld <psteinfeld@nvidia.com>2020-12-03 12:08:55 -0800
commitf24c642178a5a31aa1c44585537c08fdfc3fdfd5 (patch)
tree35d88f60bed75b88feaafeb0e344a554cde74952 /llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp
parentd430330788c646afcb2c32c8f24c63210b518a32 (diff)
downloadllvm-f24c642178a5a31aa1c44585537c08fdfc3fdfd5.zip
llvm-f24c642178a5a31aa1c44585537c08fdfc3fdfd5.tar.gz
llvm-f24c642178a5a31aa1c44585537c08fdfc3fdfd5.tar.bz2
[flang] Fix bogus message on interface procedure argument names
We were keeping the state of parsed equivalence sets in the class DeclarationVisitor. A problem happened when analyzing the the specification part of a declaration that contained an EQUIVALENCE statement followed by an interface block. The same DeclarationVisitor object that was created for the outer declaration was being used to analyze the specification part of a procedure body in the interface block. When analyzing the specification part of the procedure in the interface block, the names in the outer declaration's EQUIVALENCE statement were erroneously compared with the names in the arguments of the interface procedure. This resulted in a bogus error message. I fixed this by not checking equivalence sets when we're in an interface block. I also added a test that will produce an error message without this change. Differential Revision: https://reviews.llvm.org/D92501
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp')
0 files changed, 0 insertions, 0 deletions