The combination of these two changes lead to a cmake error in flang:
The error is:
CMake Error: The inter-target dependency graph contains the following strongly connected component (cycle): "FortranEvaluate" of type STATIC_LIBRARY depends on "FortranSemantics" (weak) "obj.FortranSemantics" of type OBJECT_LIBRARY depends on "FortranEvaluate" (strong) "FortranSemantics" of type STATIC_LIBRARY depends on "FortranEvaluate" (weak) depends on "obj.FortranSemantics" (strong) At least one of these targets is not a STATIC_LIBRARY. Cyclic dependencies are allowed only among static libraries.
This change attempts to remove the link-time dependency of FortranEvaluate
on FortranSemantics.