[llvm-bugs] [Bug 45463] New: Several flang unittests fail to compile with link errors when using dev build of clang/LLVM 11.0.0

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Apr 7 09:36:56 PDT 2020


https://bugs.llvm.org/show_bug.cgi?id=45463

            Bug ID: 45463
           Summary: Several flang unittests fail to compile with link
                    errors when using dev build of clang/LLVM 11.0.0
           Product: flang
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Driver
          Assignee: unassignedbugs at nondot.org
          Reporter: bfriesen at lbl.gov
                CC: David.Truby at arm.com, llvm-bugs at lists.llvm.org

Overview
--------

When building flang commit b539ac9a with a dev build of clang/LLVM 11.0.0,
commit 9195b019113, several flang unittests encounter link errors (pasted
below). The errors appear to be focused on two undefined references:

```
Fortran::common::Deleter<Fortran::evaluate::ProcedureRef>::operator()(Fortran::evaluate::ProcedureRef*)
const
```

and


```
Fortran::semantics::ArraySpec::IsAssumedRank() const
```


Steps to Reproduce
------------------

I built clang/LLVM with

```
-DLLVM_ENABLE_PROJECTS:STRING="clang;libcxx;libcxxabi;mlir"
```

and then used that to build flang, with:

```
cmake \
  -G "Ninja" \
  -DCMAKE_INSTALL_PREFIX:PATH="${f18_install_dir}" \
  -DCMAKE_PREFIX_PATH:PATH="${mlir_install_dir_tmp}" \
  -DCMAKE_C_COMPILER:STRING="${mlir_install_dir_tmp}/bin/clang" \
  -DCMAKE_CXX_COMPILER:STRING="${mlir_install_dir_tmp}/bin/clang++" \
  ${f18_root}
```


Actual Results
--------------

The unittest link errors are as follows:


```
FAILED: unittests/Evaluate/reshape-test 
: && /tmp/mlir_buildbot.mTQUO1x2fL/bin/clang++  -fno-rtti -fno-exceptions
-pedantic -Wall -Wextra -Werror -Wcast-qual -Wimplicit-fallthrough
-Wdelete-non-virtual-dtor  -fPIC -fvisibility-inlines-hidden -Werror=date-time
-Werror=unguarded-availability-new -w -fdiagnostics-color -ffunction-sections
-fdata-sections -Wno-deprecated-copy -Wno-string-conversion
-Wno-unused-command-line-argument -Wstring-conversion          
-Wcovered-switch-default -Wno-nested-anon-types  
unittests/Evaluate/CMakeFiles/reshape-test.dir/reshape.cpp.o  -o
unittests/Evaluate/reshape-test  lib/libFortranEvaluateTesting.a 
lib/libFortranSemantics.a  lib/libFortranEvaluate.a  lib/libFortranRuntime.a 
/tmp/mlir_build_dir/lib/libLLVMSupport.a  lib/libFortranParser.a 
/tmp/mlir_build_dir/lib/libLLVMSupport.a  -lz  -lrt  -ldl  -ltinfo  -lpthread 
-lm  /tmp/mlir_build_dir/lib/libLLVMDemangle.a  lib/libFortranCommon.a 
lib/libFortranDecimal.a && :
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranParser.a(Fortran-parsers.cpp.o): in function
`std::unique_ptr<Fortran::evaluate::GenericExprWrapper,
Fortran::common::Deleter<Fortran::evaluate::GenericExprWrapper>
>::~unique_ptr()':
Fortran-parsers.cpp:(.text._ZNSt10unique_ptrIN7Fortran8evaluate18GenericExprWrapperENS0_6common7DeleterIS2_EEED2Ev[_ZNSt10unique_ptrIN7Fortran8evaluate18GenericExprWrapperENS0_6common7DeleterIS2_EEED2Ev]+0x42):
undefined reference to
`Fortran::common::Deleter<Fortran::evaluate::GenericExprWrapper>::operator()(Fortran::evaluate::GenericExprWrapper*)
const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranParser.a(Fortran-parsers.cpp.o): in function
`std::unique_ptr<Fortran::evaluate::GenericAssignmentWrapper,
Fortran::common::Deleter<Fortran::evaluate::GenericAssignmentWrapper>
>::~unique_ptr()':
Fortran-parsers.cpp:(.text._ZNSt10unique_ptrIN7Fortran8evaluate24GenericAssignmentWrapperENS0_6common7DeleterIS2_EEED2Ev[_ZNSt10unique_ptrIN7Fortran8evaluate24GenericAssignmentWrapperENS0_6common7DeleterIS2_EEED2Ev]+0x42):
undefined reference to
`Fortran::common::Deleter<Fortran::evaluate::GenericAssignmentWrapper>::operator()(Fortran::evaluate::GenericAssignmentWrapper*)
const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranParser.a(Fortran-parsers.cpp.o): in function
`std::unique_ptr<Fortran::evaluate::ProcedureRef,
Fortran::common::Deleter<Fortran::evaluate::ProcedureRef> >::~unique_ptr()':
Fortran-parsers.cpp:(.text._ZNSt10unique_ptrIN7Fortran8evaluate12ProcedureRefENS0_6common7DeleterIS2_EEED2Ev[_ZNSt10unique_ptrIN7Fortran8evaluate12ProcedureRefENS0_6common7DeleterIS2_EEED2Ev]+0x42):
undefined reference to
`Fortran::common::Deleter<Fortran::evaluate::ProcedureRef>::operator()(Fortran::evaluate::ProcedureRef*)
const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranParser.a(Fortran-parsers.cpp.o): in function
`std::unique_ptr<Fortran::evaluate::GenericExprWrapper,
Fortran::common::Deleter<Fortran::evaluate::GenericExprWrapper>
>::reset(Fortran::evaluate::GenericExprWrapper*)':
Fortran-parsers.cpp:(.text._ZNSt10unique_ptrIN7Fortran8evaluate18GenericExprWrapperENS0_6common7DeleterIS2_EEE5resetEPS2_[_ZNSt10unique_ptrIN7Fortran8evaluate18GenericExprWrapperENS0_6common7DeleterIS2_EEE5resetEPS2_]+0x48):
undefined reference to
`Fortran::common::Deleter<Fortran::evaluate::GenericExprWrapper>::operator()(Fortran::evaluate::GenericExprWrapper*)
const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranParser.a(expr-parsers.cpp.o): in function
`std::unique_ptr<Fortran::evaluate::GenericAssignmentWrapper,
Fortran::common::Deleter<Fortran::evaluate::GenericAssignmentWrapper>
>::reset(Fortran::evaluate::GenericAssignmentWrapper*)':
expr-parsers.cpp:(.text._ZNSt10unique_ptrIN7Fortran8evaluate24GenericAssignmentWrapperENS0_6common7DeleterIS2_EEE5resetEPS2_[_ZNSt10unique_ptrIN7Fortran8evaluate24GenericAssignmentWrapperENS0_6common7DeleterIS2_EEE5resetEPS2_]+0x48):
undefined reference to
`Fortran::common::Deleter<Fortran::evaluate::GenericAssignmentWrapper>::operator()(Fortran::evaluate::GenericAssignmentWrapper*)
const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranParser.a(parse-tree.cpp.o): in function
`std::default_delete<Fortran::evaluate::GenericExprWrapper>::operator()(Fortran::evaluate::GenericExprWrapper*)
const':
parse-tree.cpp:(.text._ZNKSt14default_deleteIN7Fortran8evaluate18GenericExprWrapperEEclEPS2_[_ZNKSt14default_deleteIN7Fortran8evaluate18GenericExprWrapperEEclEPS2_]+0x27):
undefined reference to
`Fortran::evaluate::GenericExprWrapper::~GenericExprWrapper()'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranParser.a(parse-tree.cpp.o): in function
`std::default_delete<Fortran::evaluate::GenericAssignmentWrapper>::operator()(Fortran::evaluate::GenericAssignmentWrapper*)
const':
parse-tree.cpp:(.text._ZNKSt14default_deleteIN7Fortran8evaluate24GenericAssignmentWrapperEEclEPS2_[_ZNKSt14default_deleteIN7Fortran8evaluate24GenericAssignmentWrapperEEclEPS2_]+0x27):
undefined reference to
`Fortran::evaluate::GenericAssignmentWrapper::~GenericAssignmentWrapper()'
clang-11: error: linker command failed with exit code 1 (use -v to see
invocation)
[171/193] Linking CXX executable unittests/Evaluate/real-test
FAILED: unittests/Evaluate/real-test 
: && /tmp/mlir_buildbot.mTQUO1x2fL/bin/clang++  -fno-rtti -fno-exceptions
-pedantic -Wall -Wextra -Werror -Wcast-qual -Wimplicit-fallthrough
-Wdelete-non-virtual-dtor  -fPIC -fvisibility-inlines-hidden -Werror=date-time
-Werror=unguarded-availability-new -w -fdiagnostics-color -ffunction-sections
-fdata-sections -Wno-deprecated-copy -Wno-string-conversion
-Wno-unused-command-line-argument -Wstring-conversion          
-Wcovered-switch-default -Wno-nested-anon-types  
unittests/Evaluate/CMakeFiles/real-test.dir/real.cpp.o  -o
unittests/Evaluate/real-test  lib/libFortranEvaluateTesting.a 
lib/libFortranEvaluate.a  lib/libFortranDecimal.a  lib/libFortranSemantics.a 
/tmp/mlir_build_dir/lib/libLLVMSupport.a  lib/libFortranEvaluate.a 
lib/libFortranDecimal.a  lib/libFortranParser.a 
/tmp/mlir_build_dir/lib/libLLVMSupport.a  -lz  -lrt  -ldl  -ltinfo  -lpthread 
-lm  /tmp/mlir_build_dir/lib/libLLVMDemangle.a  lib/libFortranCommon.a && :
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedRank() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedRankEv[_ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedRankEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedRank() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedShape() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails14IsAssumedShapeEv[_ZNK7Fortran9semantics19ObjectEntityDetails14IsAssumedShapeEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedSize() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedSizeEv[_ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedSizeEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedSize() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsDeferredShape() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails15IsDeferredShapeEv[_ZNK7Fortran9semantics19ObjectEntityDetails15IsDeferredShapeEv]+0x3a):
undefined reference to `Fortran::semantics::ArraySpec::IsDeferredShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`Fortran::evaluate::IsInitialDataTargetHelper::operator()(Fortran::semantics::Symbol
const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate25IsInitialDataTargetHelperclERKNS_9semantics6SymbolE[_ZNK7Fortran8evaluate25IsInitialDataTargetHelperclERKNS_9semantics6SymbolE]+0x14b):
undefined reference to `Fortran::semantics::IsSaved(Fortran::semantics::Symbol
const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`Fortran::evaluate::CheckSpecificationExprHelper::operator()[abi:cxx11](Fortran::semantics::Symbol
const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclB5cxx11ERKNS_9semantics6SymbolE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclB5cxx11ERKNS_9semantics6SymbolE]+0x65):
undefined reference to `Fortran::semantics::Symbol::IsDummy() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
2>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
2> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
2>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
2> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
3>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
3> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
3>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
3> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
4>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
4> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o):check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
more undefined references to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)' follow
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(shape.cpp.o): in function
`Fortran::evaluate::IsImpliedShape(Fortran::semantics::Symbol const&)':
shape.cpp:(.text._ZN7Fortran8evaluate14IsImpliedShapeERKNS_9semantics6SymbolE+0x7f):
undefined reference to `Fortran::semantics::ArraySpec::IsImpliedShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(shape.cpp.o): in function
`Fortran::evaluate::IsExplicitShape(Fortran::semantics::Symbol const&)':
shape.cpp:(.text._ZN7Fortran8evaluate15IsExplicitShapeERKNS_9semantics6SymbolE+0x5a):
undefined reference to `Fortran::semantics::ArraySpec::IsExplicitShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(tools.cpp.o): in function
`Fortran::evaluate::AttachDeclaration(Fortran::parser::Message&,
Fortran::semantics::Symbol const&)':
tools.cpp:(.text._ZN7Fortran8evaluate17AttachDeclarationERNS_6parser7MessageERKNS_9semantics6SymbolE+0x1a1):
undefined reference to `Fortran::semantics::UseDetails::module() const'
clang-11: error: linker command failed with exit code 1 (use -v to see
invocation)
[172/193] Linking CXX executable unittests/Evaluate/integer-test
FAILED: unittests/Evaluate/integer-test 
: && /tmp/mlir_buildbot.mTQUO1x2fL/bin/clang++  -fno-rtti -fno-exceptions
-pedantic -Wall -Wextra -Werror -Wcast-qual -Wimplicit-fallthrough
-Wdelete-non-virtual-dtor  -fPIC -fvisibility-inlines-hidden -Werror=date-time
-Werror=unguarded-availability-new -w -fdiagnostics-color -ffunction-sections
-fdata-sections -Wno-deprecated-copy -Wno-string-conversion
-Wno-unused-command-line-argument -Wstring-conversion          
-Wcovered-switch-default -Wno-nested-anon-types  
unittests/Evaluate/CMakeFiles/integer-test.dir/integer.cpp.o  -o
unittests/Evaluate/integer-test  lib/libFortranEvaluateTesting.a 
lib/libFortranEvaluate.a  lib/libFortranSemantics.a 
/tmp/mlir_build_dir/lib/libLLVMSupport.a  lib/libFortranEvaluate.a 
lib/libFortranDecimal.a  lib/libFortranParser.a 
/tmp/mlir_build_dir/lib/libLLVMSupport.a  -lz  -lrt  -ldl  -ltinfo  -lpthread 
-lm  /tmp/mlir_build_dir/lib/libLLVMDemangle.a  lib/libFortranCommon.a && :
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedRank() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedRankEv[_ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedRankEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedRank() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedShape() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails14IsAssumedShapeEv[_ZNK7Fortran9semantics19ObjectEntityDetails14IsAssumedShapeEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedSize() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedSizeEv[_ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedSizeEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedSize() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsDeferredShape() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails15IsDeferredShapeEv[_ZNK7Fortran9semantics19ObjectEntityDetails15IsDeferredShapeEv]+0x3a):
undefined reference to `Fortran::semantics::ArraySpec::IsDeferredShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`Fortran::evaluate::IsInitialDataTargetHelper::operator()(Fortran::semantics::Symbol
const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate25IsInitialDataTargetHelperclERKNS_9semantics6SymbolE[_ZNK7Fortran8evaluate25IsInitialDataTargetHelperclERKNS_9semantics6SymbolE]+0x14b):
undefined reference to `Fortran::semantics::IsSaved(Fortran::semantics::Symbol
const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`Fortran::evaluate::CheckSpecificationExprHelper::operator()[abi:cxx11](Fortran::semantics::Symbol
const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclB5cxx11ERKNS_9semantics6SymbolE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclB5cxx11ERKNS_9semantics6SymbolE]+0x65):
undefined reference to `Fortran::semantics::Symbol::IsDummy() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
2>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
2> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
2>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
2> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
3>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
3> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
3>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
3> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
4>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
4> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o):check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
more undefined references to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)' follow
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(shape.cpp.o): in function
`Fortran::evaluate::IsImpliedShape(Fortran::semantics::Symbol const&)':
shape.cpp:(.text._ZN7Fortran8evaluate14IsImpliedShapeERKNS_9semantics6SymbolE+0x7f):
undefined reference to `Fortran::semantics::ArraySpec::IsImpliedShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(shape.cpp.o): in function
`Fortran::evaluate::IsExplicitShape(Fortran::semantics::Symbol const&)':
shape.cpp:(.text._ZN7Fortran8evaluate15IsExplicitShapeERKNS_9semantics6SymbolE+0x5a):
undefined reference to `Fortran::semantics::ArraySpec::IsExplicitShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(tools.cpp.o): in function
`Fortran::evaluate::AttachDeclaration(Fortran::parser::Message&,
Fortran::semantics::Symbol const&)':
tools.cpp:(.text._ZN7Fortran8evaluate17AttachDeclarationERNS_6parser7MessageERKNS_9semantics6SymbolE+0x1a1):
undefined reference to `Fortran::semantics::UseDetails::module() const'
clang-11: error: linker command failed with exit code 1 (use -v to see
invocation)
[173/193] Linking CXX executable unittests/Evaluate/ISO-Fortran-binding-test
FAILED: unittests/Evaluate/ISO-Fortran-binding-test 
: && /tmp/mlir_buildbot.mTQUO1x2fL/bin/clang++  -fno-rtti -fno-exceptions
-pedantic -Wall -Wextra -Werror -Wcast-qual -Wimplicit-fallthrough
-Wdelete-non-virtual-dtor  -fPIC -fvisibility-inlines-hidden -Werror=date-time
-Werror=unguarded-availability-new -w -fdiagnostics-color -ffunction-sections
-fdata-sections -Wno-deprecated-copy -Wno-string-conversion
-Wno-unused-command-line-argument -Wstring-conversion          
-Wcovered-switch-default -Wno-nested-anon-types  
unittests/Evaluate/CMakeFiles/ISO-Fortran-binding-test.dir/ISO-Fortran-binding.cpp.o
 -o unittests/Evaluate/ISO-Fortran-binding-test 
lib/libFortranEvaluateTesting.a  lib/libFortranEvaluate.a 
lib/libFortranSemantics.a  lib/libFortranRuntime.a 
/tmp/mlir_build_dir/lib/libLLVMSupport.a  lib/libFortranEvaluate.a 
lib/libFortranParser.a  /tmp/mlir_build_dir/lib/libLLVMSupport.a  -lz  -lrt 
-ldl  -ltinfo  -lpthread  -lm  /tmp/mlir_build_dir/lib/libLLVMDemangle.a 
lib/libFortranCommon.a  lib/libFortranDecimal.a && :
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedRank() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedRankEv[_ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedRankEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedRank() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedShape() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails14IsAssumedShapeEv[_ZNK7Fortran9semantics19ObjectEntityDetails14IsAssumedShapeEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedSize() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedSizeEv[_ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedSizeEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedSize() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsDeferredShape() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails15IsDeferredShapeEv[_ZNK7Fortran9semantics19ObjectEntityDetails15IsDeferredShapeEv]+0x3a):
undefined reference to `Fortran::semantics::ArraySpec::IsDeferredShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`Fortran::evaluate::IsInitialDataTargetHelper::operator()(Fortran::semantics::Symbol
const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate25IsInitialDataTargetHelperclERKNS_9semantics6SymbolE[_ZNK7Fortran8evaluate25IsInitialDataTargetHelperclERKNS_9semantics6SymbolE]+0x14b):
undefined reference to `Fortran::semantics::IsSaved(Fortran::semantics::Symbol
const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`Fortran::evaluate::CheckSpecificationExprHelper::operator()[abi:cxx11](Fortran::semantics::Symbol
const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclB5cxx11ERKNS_9semantics6SymbolE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclB5cxx11ERKNS_9semantics6SymbolE]+0x65):
undefined reference to `Fortran::semantics::Symbol::IsDummy() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
2>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
2> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
2>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
2> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
3>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
3> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
3>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
3> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
4>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
4> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o):check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
more undefined references to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)' follow
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(shape.cpp.o): in function
`Fortran::evaluate::IsImpliedShape(Fortran::semantics::Symbol const&)':
shape.cpp:(.text._ZN7Fortran8evaluate14IsImpliedShapeERKNS_9semantics6SymbolE+0x7f):
undefined reference to `Fortran::semantics::ArraySpec::IsImpliedShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(shape.cpp.o): in function
`Fortran::evaluate::IsExplicitShape(Fortran::semantics::Symbol const&)':
shape.cpp:(.text._ZN7Fortran8evaluate15IsExplicitShapeERKNS_9semantics6SymbolE+0x5a):
undefined reference to `Fortran::semantics::ArraySpec::IsExplicitShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(tools.cpp.o): in function
`Fortran::evaluate::AttachDeclaration(Fortran::parser::Message&,
Fortran::semantics::Symbol const&)':
tools.cpp:(.text._ZN7Fortran8evaluate17AttachDeclarationERNS_6parser7MessageERKNS_9semantics6SymbolE+0x1a1):
undefined reference to `Fortran::semantics::UseDetails::module() const'
clang-11: error: linker command failed with exit code 1 (use -v to see
invocation)
[174/193] Linking CXX executable unittests/Evaluate/logical-test
FAILED: unittests/Evaluate/logical-test 
: && /tmp/mlir_buildbot.mTQUO1x2fL/bin/clang++  -fno-rtti -fno-exceptions
-pedantic -Wall -Wextra -Werror -Wcast-qual -Wimplicit-fallthrough
-Wdelete-non-virtual-dtor  -fPIC -fvisibility-inlines-hidden -Werror=date-time
-Werror=unguarded-availability-new -w -fdiagnostics-color -ffunction-sections
-fdata-sections -Wno-deprecated-copy -Wno-string-conversion
-Wno-unused-command-line-argument -Wstring-conversion          
-Wcovered-switch-default -Wno-nested-anon-types  
unittests/Evaluate/CMakeFiles/logical-test.dir/logical.cpp.o  -o
unittests/Evaluate/logical-test  lib/libFortranEvaluateTesting.a 
lib/libFortranEvaluate.a  lib/libFortranSemantics.a 
/tmp/mlir_build_dir/lib/libLLVMSupport.a  lib/libFortranEvaluate.a 
lib/libFortranDecimal.a  lib/libFortranParser.a 
/tmp/mlir_build_dir/lib/libLLVMSupport.a  -lz  -lrt  -ldl  -ltinfo  -lpthread 
-lm  /tmp/mlir_build_dir/lib/libLLVMDemangle.a  lib/libFortranCommon.a && :
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedRank() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedRankEv[_ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedRankEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedRank() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedShape() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails14IsAssumedShapeEv[_ZNK7Fortran9semantics19ObjectEntityDetails14IsAssumedShapeEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsAssumedSize() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedSizeEv[_ZNK7Fortran9semantics19ObjectEntityDetails13IsAssumedSizeEv]+0x3f):
undefined reference to `Fortran::semantics::ArraySpec::IsAssumedSize() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(characteristics.cpp.o): in function
`Fortran::semantics::ObjectEntityDetails::IsDeferredShape() const':
characteristics.cpp:(.text._ZNK7Fortran9semantics19ObjectEntityDetails15IsDeferredShapeEv[_ZNK7Fortran9semantics19ObjectEntityDetails15IsDeferredShapeEv]+0x3a):
undefined reference to `Fortran::semantics::ArraySpec::IsDeferredShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`Fortran::evaluate::IsInitialDataTargetHelper::operator()(Fortran::semantics::Symbol
const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate25IsInitialDataTargetHelperclERKNS_9semantics6SymbolE[_ZNK7Fortran8evaluate25IsInitialDataTargetHelperclERKNS_9semantics6SymbolE]+0x14b):
undefined reference to `Fortran::semantics::IsSaved(Fortran::semantics::Symbol
const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`Fortran::evaluate::CheckSpecificationExprHelper::operator()[abi:cxx11](Fortran::semantics::Symbol
const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclB5cxx11ERKNS_9semantics6SymbolE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclB5cxx11ERKNS_9semantics6SymbolE]+0x65):
undefined reference to `Fortran::semantics::Symbol::IsDummy() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
2>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
2> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
2>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
2> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi2EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
3>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
3> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
3>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)1,
3> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi3EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o): in function
`std::optional<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >
Fortran::evaluate::CheckSpecificationExprHelper::operator()<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
4>
>(Fortran::evaluate::FunctionRef<Fortran::evaluate::Type<(Fortran::common::TypeCategory)2,
4> > const&) const':
check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE2ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
undefined reference to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(check-expression.cpp.o):check-expression.cpp:(.text._ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE[_ZNK7Fortran8evaluate28CheckSpecificationExprHelperclINS0_4TypeILNS_6common12TypeCategoryE1ELi4EEEEESt8optionalINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEERKNS0_11FunctionRefIT_EE]+0x5e):
more undefined references to
`Fortran::semantics::IsPureProcedure(Fortran::semantics::Symbol const&)' follow
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(shape.cpp.o): in function
`Fortran::evaluate::IsImpliedShape(Fortran::semantics::Symbol const&)':
shape.cpp:(.text._ZN7Fortran8evaluate14IsImpliedShapeERKNS_9semantics6SymbolE+0x7f):
undefined reference to `Fortran::semantics::ArraySpec::IsImpliedShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(shape.cpp.o): in function
`Fortran::evaluate::IsExplicitShape(Fortran::semantics::Symbol const&)':
shape.cpp:(.text._ZN7Fortran8evaluate15IsExplicitShapeERKNS_9semantics6SymbolE+0x5a):
undefined reference to `Fortran::semantics::ArraySpec::IsExplicitShape() const'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
lib/libFortranEvaluate.a(tools.cpp.o): in function
`Fortran::evaluate::AttachDeclaration(Fortran::parser::Message&,
Fortran::semantics::Symbol const&)':
tools.cpp:(.text._ZN7Fortran8evaluate17AttachDeclarationERNS_6parser7MessageERKNS_9semantics6SymbolE+0x1a1):
undefined reference to `Fortran::semantics::UseDetails::module() const'
```

Expected Results
----------------

The unittests should build without any errors.


Build Date & Hardware
---------------------

Build date: 2020-04-06
Hardware: Intel(R) Xeon(R) CPU E5-2698 running SLES 15


Additional Builds and Platforms
-------------------------------

N/A


Additional Information
----------------------

N/A

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20200407/a848e15f/attachment-0001.html>


More information about the llvm-bugs mailing list