[llvm-branch-commits] [flang] [Flang] KIND De-templatization (PR #216960)

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Sun Aug 23 16:56:35 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results

The build failed before running any tests. Click on a failure below to see the details.

<details>
<summary>[code=1] tools/flang/unittests/Evaluate/CMakeFiles/FlangEvaluateTests.dir/IntegerValueTest.cpp.obj</summary>

```
FAILED: [code=1] tools/flang/unittests/Evaluate/CMakeFiles/FlangEvaluateTests.dir/IntegerValueTest.cpp.obj
sccache C:\clang\clang-msvc\bin\clang-cl.exe  /nologo -TP -DFLANG_INCLUDE_TESTS=1 -DLLVM_BUILD_STATIC -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_GLIBCXX_ASSERTIONS -D_HAS_EXCEPTIONS=0 -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -IC:\_work\llvm-project\llvm-project\build\tools\flang\unittests\Evaluate -IC:\_work\llvm-project\llvm-project\flang\unittests\Evaluate -IC:\_work\llvm-project\llvm-project\flang\include -IC:\_work\llvm-project\llvm-project\build\tools\flang\include -IC:\_work\llvm-project\llvm-project\build\tools\flang\include\object-sizes\Release -IC:\_work\llvm-project\llvm-project\build\include -IC:\_work\llvm-project\llvm-project\llvm\include -IC:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include -IC:\_work\llvm-project\llvm-project\third-party\unittest\googlemock\include -imsvcC:\_work\llvm-project\llvm-project\flang\..\mlir\include -imsvcC:\_work\llvm-project\llvm-project\build\tools\mlir\include -imsvcC:\_work\llvm-project\llvm-project\build\tools\clang\include -imsvcC:\_work\llvm-project\llvm-project\llvm\..\clang\include /DWIN32 /D_WINDOWS   /Zc:inline /Zc:__cplusplus /Oi /Brepro /bigobj /permissive- -Werror=unguarded-availability-new /W4  -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported /Gw -Wno-deprecated-copy -Wno-string-conversion -Wno-ctad-maybe-unsupported /O2 /Ob2  -std:c++17 -MD -UNDEBUG -Wno-suggest-override -Wno-gnu-zero-variadic-macro-arguments /EHs-c- /GR- /showIncludes /Fotools\flang\unittests\Evaluate\CMakeFiles\FlangEvaluateTests.dir\IntegerValueTest.cpp.obj /Fdtools\flang\unittests\Evaluate\CMakeFiles\FlangEvaluateTests.dir\ -c -- C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(219,16): error: no matching constructor for initialization of 'IntegerValue'
219 |   IntegerValue maxv{kind, std::numeric_limits<UnsignedT>::max()};
|                ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(457,44): note: in instantiation of member function '(anonymous namespace)::IntegerValueTypedKind_UnsignedDecimal_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>::TestBody' requested here
457 |   Test* CreateTest() override { return new TestClass; }
|                                            ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(726,13): note: in instantiation of member function 'testing::internal::TestFactoryImpl<(anonymous namespace)::IntegerValueTypedKind_UnsignedDecimal_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::CreateTest' requested here
726 |         new TestFactoryImpl<TestClass>);
|             ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_UnsignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
730 |                                  typename Types::Tail>::Register(prefix,
|                                                         ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_UnsignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_UnsignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_UnsignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(206,1): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_UnsignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 1>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
206 | TYPED_TEST(IntegerValueTypedKind, UnsignedDecimal) {
| ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/gtest-typed-test.h(214,27): note: expanded from macro 'TYPED_TEST'
214 |               CaseName)>::Register("",                                        \
|                           ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = unsigned __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(224,16): error: no matching constructor for initialization of 'IntegerValue'
224 |   IntegerValue beforemaxv{kind, std::numeric_limits<UnsignedT>::max() - 1};
|                ^         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = unsigned __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(244,16): error: no matching constructor for initialization of 'IntegerValue'
244 |   IntegerValue invpatternv{kind, ~UnsignedT(0x0123456789abcdefull)};
|                ^          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'UnsignedT' (aka 'unsigned __int128') to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'UnsignedT' (aka 'unsigned __int128') to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = UnsignedT]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(267,16): error: no matching constructor for initialization of 'IntegerValue'
267 |   IntegerValue maxv{kind, std::numeric_limits<SignedT>::max()};
|                ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(457,44): note: in instantiation of member function '(anonymous namespace)::IntegerValueTypedKind_SignedDecimal_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>::TestBody' requested here
457 |   Test* CreateTest() override { return new TestClass; }
|                                            ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(726,13): note: in instantiation of member function 'testing::internal::TestFactoryImpl<(anonymous namespace)::IntegerValueTypedKind_SignedDecimal_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::CreateTest' requested here
726 |         new TestFactoryImpl<TestClass>);
|             ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_SignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
730 |                                  typename Types::Tail>::Register(prefix,
|                                                         ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_SignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_SignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_SignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(251,1): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_SignedDecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 1>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
251 | TYPED_TEST(IntegerValueTypedKind, SignedDecimal) {
| ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/gtest-typed-test.h(214,27): note: expanded from macro 'TYPED_TEST'
214 |               CaseName)>::Register("",                                        \
|                           ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from '__int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from '__int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<__int128>::is_integer' was not satisfied [with INT = __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(272,16): error: no matching constructor for initialization of 'IntegerValue'
272 |   IntegerValue beforemaxv{kind, std::numeric_limits<SignedT>::max() - 1};
|                ^         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from '__int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from '__int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<__int128>::is_integer' was not satisfied [with INT = __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(292,16): error: no matching constructor for initialization of 'IntegerValue'
292 |   IntegerValue invpatternv{kind, ~SignedT(0x0123456789abcdefull)};
|                ^          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'SignedT' (aka '__int128') to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'SignedT' (aka '__int128') to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<__int128>::is_integer' was not satisfied [with INT = SignedT]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(311,16): error: no matching constructor for initialization of 'IntegerValue'
311 |   IntegerValue maxv{kind, std::numeric_limits<UnsignedT>::max()};
|                ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(457,44): note: in instantiation of member function '(anonymous namespace)::IntegerValueTypedKind_Hexadecimal_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>::TestBody' requested here
457 |   Test* CreateTest() override { return new TestClass; }
|                                            ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(726,13): note: in instantiation of member function 'testing::internal::TestFactoryImpl<(anonymous namespace)::IntegerValueTypedKind_Hexadecimal_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::CreateTest' requested here
726 |         new TestFactoryImpl<TestClass>);
|             ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_Hexadecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
730 |                                  typename Types::Tail>::Register(prefix,
|                                                         ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_Hexadecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_Hexadecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_Hexadecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(298,1): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_Hexadecimal_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 1>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
298 | TYPED_TEST(IntegerValueTypedKind, Hexadecimal) {
| ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/gtest-typed-test.h(214,27): note: expanded from macro 'TYPED_TEST'
214 |               CaseName)>::Register("",                                        \
|                           ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = unsigned __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(316,16): error: no matching constructor for initialization of 'IntegerValue'
316 |   IntegerValue beforemaxv{kind, std::numeric_limits<UnsignedT>::max() - 1};
|                ^         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = unsigned __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(336,16): error: no matching constructor for initialization of 'IntegerValue'
336 |   IntegerValue invpatternv{kind, ~UnsignedT(0x0123456789abcdefull)};
|                ^          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'UnsignedT' (aka 'unsigned __int128') to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'UnsignedT' (aka 'unsigned __int128') to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = UnsignedT]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(513,16): error: no matching constructor for initialization of 'IntegerValue'
513 |   IntegerValue maxv{kind, std::numeric_limits<UnsignedT>::max()};
|                ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(457,44): note: in instantiation of member function '(anonymous namespace)::IntegerValueTypedKind_IsZero_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>::TestBody' requested here
457 |   Test* CreateTest() override { return new TestClass; }
|                                            ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(726,13): note: in instantiation of member function 'testing::internal::TestFactoryImpl<(anonymous namespace)::IntegerValueTypedKind_IsZero_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::CreateTest' requested here
726 |         new TestFactoryImpl<TestClass>);
|             ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsZero_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
730 |                                  typename Types::Tail>::Register(prefix,
|                                                         ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsZero_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsZero_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsZero_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(496,1): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsZero_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 1>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
496 | TYPED_TEST(IntegerValueTypedKind, IsZero) {
| ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/gtest-typed-test.h(214,27): note: expanded from macro 'TYPED_TEST'
214 |               CaseName)>::Register("",                                        \
|                           ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = unsigned __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(516,16): error: no matching constructor for initialization of 'IntegerValue'
516 |   IntegerValue minv{kind, std::numeric_limits<UnsignedT>::min()};
|                ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = unsigned __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(519,16): error: no matching constructor for initialization of 'IntegerValue'
519 |   IntegerValue smaxv{kind, std::numeric_limits<SignedT>::max()};
|                ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from '__int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from '__int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<__int128>::is_integer' was not satisfied [with INT = __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(522,16): error: no matching constructor for initialization of 'IntegerValue'
522 |   IntegerValue sminv{kind, std::numeric_limits<SignedT>::min()};
|                ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from '__int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from '__int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<__int128>::is_integer' was not satisfied [with INT = __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(528,16): error: no matching constructor for initialization of 'IntegerValue'
528 |   IntegerValue invpatternv{kind, ~UnsignedT(0x0123456789abcdefull)};
|                ^          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'UnsignedT' (aka 'unsigned __int128') to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'UnsignedT' (aka 'unsigned __int128') to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = UnsignedT]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(549,16): error: no matching constructor for initialization of 'IntegerValue'
549 |   IntegerValue maxv{kind, std::numeric_limits<UnsignedT>::max()};
|                ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(457,44): note: in instantiation of member function '(anonymous namespace)::IntegerValueTypedKind_IsNegative_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>::TestBody' requested here
457 |   Test* CreateTest() override { return new TestClass; }
|                                            ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(726,13): note: in instantiation of member function 'testing::internal::TestFactoryImpl<(anonymous namespace)::IntegerValueTypedKind_IsNegative_Test<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::CreateTest' requested here
726 |         new TestFactoryImpl<TestClass>);
|             ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsNegative_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
730 |                                  typename Types::Tail>::Register(prefix,
|                                                         ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsNegative_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsNegative_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/internal/gtest-internal.h(730,57): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsNegative_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(532,1): note: in instantiation of member function 'testing::internal::TypeParameterizedTest<IntegerValueTypedKind, testing::internal::TemplateSel<IntegerValueTypedKind_IsNegative_Test>, testing::internal::Types<Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 1>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 2>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 4>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 8>, Fortran::evaluate::TypeKind<Fortran::common::TypeCategory::Integer, 16>>>::Register' requested here
532 | TYPED_TEST(IntegerValueTypedKind, IsNegative) {
| ^
C:\_work\llvm-project\llvm-project\third-party\unittest\googletest\include\gtest/gtest-typed-test.h(214,27): note: expanded from macro 'TYPED_TEST'
214 |               CaseName)>::Register("",                                        \
|                           ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = unsigned __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(552,16): error: no matching constructor for initialization of 'IntegerValue'
552 |   IntegerValue minv{kind, std::numeric_limits<UnsignedT>::min()};
|                ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'unsigned __int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = unsigned __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(555,16): error: no matching constructor for initialization of 'IntegerValue'
555 |   IntegerValue smaxv{kind, std::numeric_limits<SignedT>::max()};
|                ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from '__int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from '__int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<__int128>::is_integer' was not satisfied [with INT = __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(558,16): error: no matching constructor for initialization of 'IntegerValue'
558 |   IntegerValue sminv{kind, std::numeric_limits<SignedT>::min()};
|                ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from '__int128' to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from '__int128' to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<__int128>::is_integer' was not satisfied [with INT = __int128]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
C:\_work\llvm-project\llvm-project\flang\unittests\Evaluate\IntegerValueTest.cpp(564,16): error: no matching constructor for initialization of 'IntegerValue'
564 |   IntegerValue invpatternv{kind, ~UnsignedT(0x7FFFFFFF7FFF7F7Full)};
|                ^          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(51,3): note: candidate constructor not viable: no known conversion from 'UnsignedT' (aka 'unsigned __int128') to 'const IntegerValue' for 2nd argument
51 |   IntegerValue(int kind, const IntegerValue &x) : IntegerValue(x) {
|   ^                      ~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(54,3): note: candidate constructor not viable: no known conversion from 'UnsignedT' (aka 'unsigned __int128') to 'IntegerValue' for 2nd argument
54 |   IntegerValue(int kind, IntegerValue &&x) : IntegerValue(std::move(x)) {
|   ^                      ~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(67,3): note: candidate template ignored: requirement 'std::numeric_limits<unsigned __int128>::is_integer' was not satisfied [with INT = UnsignedT]
67 |   IntegerValue(int kind, INT v) {
|   ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(46,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
46 |   IntegerValue(const IntegerValue &);
|   ^            ~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(47,3): note: candidate constructor not viable: requires 1 argument, but 2 were provided
47 |   IntegerValue(IntegerValue &&);
|   ^            ~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/integer-value.h(44,3): note: candidate constructor not viable: requires 0 arguments, but 2 were provided
44 |   IntegerValue();
|   ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/216960


More information about the llvm-branch-commits mailing list