Files
clang-p2996/flang/lib/Semantics/CMakeLists.txt
Tim Keith 5d3249e9af [flang] Save binding labels as strings
Binding labels start as expressions but they have to evaluate to
constant character of default kind, so they can be represented as an
std::string. Leading and trailing blanks have to be removed, so the
folded expression isn't exactly right anyway.

So all BIND(C) symbols now have a string binding label, either the
default or user-supplied one. This is recorded in the .mod file.

Add WithBindName mix-in for details classes that can have a binding
label so that they are all consistent. Add GetBindName() and
SetBindName() member functions to Symbol.

Add tests that verifies that leading and trailing blanks are ignored
in binding labels and that the default label is folded to lower case.

Differential Revision: https://reviews.llvm.org/D99208
2021-03-24 11:25:23 -07:00

60 lines
1.0 KiB
CMake

add_flang_library(FortranSemantics
assignment.cpp
attr.cpp
canonicalize-acc.cpp
canonicalize-do.cpp
canonicalize-omp.cpp
check-acc-structure.cpp
check-allocate.cpp
check-arithmeticif.cpp
check-call.cpp
check-case.cpp
check-coarray.cpp
check-data.cpp
check-deallocate.cpp
check-declarations.cpp
check-do-forall.cpp
check-if-stmt.cpp
check-io.cpp
check-namelist.cpp
check-nullify.cpp
check-omp-structure.cpp
check-purity.cpp
check-return.cpp
check-select-rank.cpp
check-select-type.cpp
check-stop.cpp
compute-offsets.cpp
data-to-inits.cpp
expression.cpp
mod-file.cpp
pointer-assignment.cpp
program-tree.cpp
resolve-labels.cpp
resolve-directives.cpp
resolve-names-utils.cpp
resolve-names.cpp
rewrite-parse-tree.cpp
runtime-type-info.cpp
scope.cpp
semantics.cpp
symbol.cpp
tools.cpp
type.cpp
unparse-with-symbols.cpp
DEPENDS
acc_gen
omp_gen
LINK_LIBS
FortranCommon
FortranParser
FortranEvaluate
LINK_COMPONENTS
Support
FrontendOpenMP
FrontendOpenACC
)