llvm-project/flang/lib/Semantics
Peter Klausler b67984d356 [flang] Handle module subprogram with interface in same (sub)module when writing module file
There's a few (3) cases where Fortran allows two distinct symbols to have
the same name in the same scope.  Module file output copes with only two of
them.  The third involves a separate module procedure that isn't separate:
both the procedure and its declared interface appear in the same (sub)module.
Fix to ensure that the interface is included in the module file output, so
that the module file reader doesn't suffer a bogus error about a "separate
module procedure without an interface".

Differential Revision: https://reviews.llvm.org/D127784
2022-06-16 10:08:41 -07:00
..
CMakeLists.txt [flang] Save binding labels as strings 2021-03-24 11:25:23 -07:00
assignment.cpp [flang] Add one semantic check for masked array assignment 2022-05-06 22:19:20 +08:00
assignment.h
attr.cpp
canonicalize-acc.cpp [flang] Add clang-tidy check for braces around if 2021-06-16 09:13:53 +00:00
canonicalize-acc.h
canonicalize-do.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
canonicalize-do.h
canonicalize-omp.cpp
canonicalize-omp.h
check-acc-structure.cpp [flang] Add clang-tidy check for braces around if 2021-06-16 09:13:53 +00:00
check-acc-structure.h [flang][directive] Enforce basic semantic check for all clauses 2021-02-01 13:33:30 -05:00
check-allocate.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
check-allocate.h
check-arithmeticif.cpp [flang] Finer control over error recovery with GetExpr() 2022-04-15 14:25:41 -07:00
check-arithmeticif.h
check-call.cpp [nfc][flang] Fix spelling errors and usage in an error message 2022-05-28 09:33:10 -07:00
check-call.h [flang] Extension: Accept Hollerith actual arguments as if they were BOZ 2022-05-24 09:04:31 -07:00
check-case.cpp [flang] Downgrade a fatal error to a warning 2022-04-27 12:31:58 -07:00
check-case.h
check-coarray.cpp [flang] Finer control over error recovery with GetExpr() 2022-04-15 14:25:41 -07:00
check-coarray.h
check-data.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
check-data.h [flang] Implement semantics for DEC STRUCTURE/RECORD 2022-01-13 13:17:13 -08:00
check-deallocate.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
check-deallocate.h
check-declarations.cpp [flang] Fix one regression failure related to BIND(C) statement 2022-06-15 21:10:36 +08:00
check-declarations.h [flang] Improve initializer semantics, esp. for component default values 2020-12-07 14:40:41 -08:00
check-directive-structure.h [flang][OpenMP][OpenACC] Fix exit of a region 2022-05-28 16:34:26 +08:00
check-do-forall.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
check-do-forall.h
check-if-stmt.cpp
check-if-stmt.h
check-io.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
check-io.h [flang] Finer control over error recovery with GetExpr() 2022-04-15 14:25:41 -07:00
check-namelist.cpp
check-namelist.h
check-nullify.cpp [flang] Accept POINTER followed by INTERFACE 2022-05-09 18:37:09 -07:00
check-nullify.h
check-omp-structure.cpp [flang][OpenMP] Add one semantic check for data-sharing clauses 2022-06-15 16:02:27 +08:00
check-omp-structure.h [flang][OpenMP] Add one semantic check for data-sharing clauses 2022-06-15 16:02:27 +08:00
check-purity.cpp
check-purity.h
check-return.cpp [flang] Fix semantics check for RETURN statement 2022-05-02 22:04:58 +02:00
check-return.h
check-select-rank.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
check-select-rank.h
check-select-type.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
check-select-type.h
check-stop.cpp [flang] Finer control over error recovery with GetExpr() 2022-04-15 14:25:41 -07:00
check-stop.h
compute-offsets.cpp [flang] Handle common block with different sizes in same file 2022-04-29 14:52:47 +02:00
compute-offsets.h [flang] Implement STORAGE_SIZE(), SIZEOF(), C_SIZEOF() 2020-12-15 17:26:20 -08:00
data-to-inits.cpp [flang] Extension: Accept Hollerith actual arguments as if they were BOZ 2022-05-24 09:04:31 -07:00
data-to-inits.h [flang] Implement semantics for DEC STRUCTURE/RECORD 2022-01-13 13:17:13 -08:00
expression.cpp [flang] Add more qualification when creating names for compiler-generated USEs 2022-06-15 14:18:28 -07:00
mod-file.cpp [flang] Handle module subprogram with interface in same (sub)module when writing module file 2022-06-16 10:08:41 -07:00
mod-file.h [flang] Distinguish intrinsic from non-intrinsic modules 2022-01-31 13:31:27 -08:00
pointer-assignment.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
pointer-assignment.h
program-tree.cpp [flang] Avoid global name conflict when BIND(C,NAME=) is used 2022-04-25 09:25:44 -07:00
program-tree.h [flang] Avoid global name conflict when BIND(C,NAME=) is used 2022-04-25 09:25:44 -07:00
resolve-directives.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
resolve-directives.h [flang][NFC] Extract name resolution for OpenACC & OpenMP into new file 2020-07-28 16:38:36 -07:00
resolve-labels.cpp [flang] Fix bogus branch target error on END SELECT 2022-06-13 11:42:55 -07:00
resolve-labels.h
resolve-names-utils.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
resolve-names-utils.h [flang] Add nonfatal message classes 2022-03-08 11:40:45 -08:00
resolve-names.cpp [flang] Change C889 from error into warning 2022-06-15 15:39:13 +08:00
resolve-names.h [flang] Distinguish intrinsic from non-intrinsic modules 2022-01-31 13:31:27 -08:00
rewrite-parse-tree.cpp [flang] Handle USE association in parse tree rewriting 2022-06-13 16:20:51 -07:00
rewrite-parse-tree.h
runtime-type-info.cpp [flang] Replace crash and improve a semantics TODO message 2022-05-24 14:01:22 -07:00
scope.cpp [flang] Do not pass derived type by descriptor when not needed 2022-04-20 10:00:34 +02:00
semantics.cpp [flang] Avoid spurious warnings from reading module files 2022-05-28 08:07:54 -07:00
symbol.cpp [flang] Add & use a better visit() (take 2) 2022-04-16 16:00:48 -07:00
tools.cpp [flang] ERROR STOP is not an image control statement 2022-06-15 14:39:31 -07:00
type.cpp [flang] Fix crash in semantics after PDT instantiation 2022-05-24 11:06:12 -07:00
unparse-with-symbols.cpp [flang][openacc] Basic name resolution infrastructure for OpenACC construct 2020-07-26 20:01:35 -04:00