7ebbe7dca4
We were trying to write only symbols that are part of the public API of a module to the .mod file. The problem with that is that submodules need access to the private symbols in their ancestor modules and submodules. For now, just write out all of the symbols, private or otherwise. We could be more precise by omitting some private symbols for modules that don't have separate module procedures and so can't have submodules. Also, the old implementation went into an infinite loop for recursive derived types. This makes CollectSymbols simpler, so have it do both the collecting and sorting. Make it static so that the types don't have to be defined in mod-file.h. Original-commit: flang-compiler/f18@33a10d6238 Reviewed-on: https://github.com/flang-compiler/f18/pull/177 Tree-same-pre-rewrite: false |
||
---|---|---|
.. | ||
attr.cc | ||
attr.h | ||
CMakeLists.txt | ||
dump-parse-tree.h | ||
expression.cc | ||
expression.h | ||
mod-file.cc | ||
mod-file.h | ||
resolve-names.cc | ||
resolve-names.h | ||
rewrite-parse-tree.cc | ||
rewrite-parse-tree.h | ||
scope.cc | ||
scope.h | ||
symbol.cc | ||
symbol.h | ||
type.cc | ||
type.h | ||
unparse-with-symbols.cc | ||
unparse-with-symbols.h |