diff options
author | Peter Steinfeld <psteinfeld@nvidia.com> | 2021-01-04 09:35:15 -0800 |
---|---|---|
committer | Peter Steinfeld <psteinfeld@nvidia.com> | 2021-01-08 10:14:21 -0800 |
commit | ae0d1d2e5cd3a99da0b2eefc27c8f94b95f03cc6 (patch) | |
tree | 9a63c5970ebac51a67c4a6138bcffe1035aa90bb /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 311b247c9fb58ee476184a7eb8044b8f54f95035 (diff) | |
download | llvm-ae0d1d2e5cd3a99da0b2eefc27c8f94b95f03cc6.zip llvm-ae0d1d2e5cd3a99da0b2eefc27c8f94b95f03cc6.tar.gz llvm-ae0d1d2e5cd3a99da0b2eefc27c8f94b95f03cc6.tar.bz2 |
[flang] Fix bogus message on internal subprogram with alternate return
Internal subprograms have explicit interfaces. If an internal subprogram has
an alternate return, we check its explicit interface. But we were not
putting the label values of alternate returns into the actual argument.
I fixed this by changing the definition of actual arguments to be able
to contain a common::Label and putting the label for an alternate return
into the actual argument.
I also verified that we were already doing all of the semantic checking
required for alternate returns and removed a "TODO" for this.
I also added the test altreturn06.f90.
Differential Revision: https://reviews.llvm.org/D94017
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions