[flang-commits] [clang] [flang] [flang][semantics] Add a flag to relax some of the semantic constraints on C_LOC (PR #195112)

via flang-commits flang-commits at lists.llvm.org
Thu Apr 30 09:15:25 PDT 2026


github-actions[bot] wrote:

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

* 53766 tests passed
* 1171 tests skipped

All executed tests passed, but another part of the build **failed**. Click on a failure below to see the details.

<details>
<summary>[code=1] tools/flang/lib/Evaluate/CMakeFiles/FortranEvaluate.dir/intrinsics.cpp.obj</summary>

```
FAILED: [code=1] tools/flang/lib/Evaluate/CMakeFiles/FortranEvaluate.dir/intrinsics.cpp.obj
sccache C:\clang\clang-msvc\bin\clang-cl.exe  /nologo -TP -DFLANG_INCLUDE_TESTS=1 -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\lib\Evaluate -IC:\_work\llvm-project\llvm-project\flang\lib\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\include -IC:\_work\llvm-project\llvm-project\llvm\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 /EHs-c- /GR- /showIncludes /Fotools\flang\lib\Evaluate\CMakeFiles\FortranEvaluate.dir\intrinsics.cpp.obj /Fdtools\flang\lib\Evaluate\CMakeFiles\FortranEvaluate.dir\FortranEvaluate.pdb -c -- C:\_work\llvm-project\llvm-project\flang\lib\Evaluate\intrinsics.cpp
C:\_work\llvm-project\llvm-project\flang\lib\Evaluate\intrinsics.cpp(3567,17): error: no member named 'intent' in 'Fortran::evaluate::characteristics::DummyArgument'
3567 |       dummyArg->intent = common::Intent::In;
|       ~~~~~~~~~~^
In file included from C:\_work\llvm-project\llvm-project\flang\lib\Evaluate\intrinsics.cpp:9:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/intrinsics.h:12:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\call.h:12:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\common.h:13:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Common/enum-set.h:18:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Common\idioms.h:26:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Common\enum-class.h:21:
In file included from C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\functional:13:
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\xmemory(732,76): error: no matching constructor for initialization of 'Fortran::evaluate::characteristics::DummyArgument'
732 |         ::new (const_cast<void*>(static_cast<const volatile void*>(_Ptr))) _Objty(_STD forward<_Types>(_Args)...);
|                                                                            ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\vector(863,27): note: in instantiation of function template specialization 'std::_Default_allocator_traits<std::allocator<Fortran::evaluate::characteristics::DummyArgument>>::construct<Fortran::evaluate::characteristics::DummyArgument, Fortran::evaluate::characteristics::DummyDataObject>' requested here
863 |             _Alty_traits::construct(_Getal(), _Unfancy(_Mylast), _STD forward<_Valty>(_Val)...);
|                           ^
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\vector(845,20): note: in instantiation of function template specialization 'std::vector<Fortran::evaluate::characteristics::DummyArgument>::_Emplace_back_with_unused_capacity<Fortran::evaluate::characteristics::DummyDataObject>' requested here
845 |             return _Emplace_back_with_unused_capacity(_STD forward<_Valty>(_Val)...);
|                    ^
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\vector(924,24): note: in instantiation of function template specialization 'std::vector<Fortran::evaluate::characteristics::DummyArgument>::_Emplace_one_at_back<Fortran::evaluate::characteristics::DummyDataObject>' requested here
924 |         _Ty& _Result = _Emplace_one_at_back(_STD forward<_Valty>(_Val)...);
|                        ^
C:\_work\llvm-project\llvm-project\flang\lib\Evaluate\intrinsics.cpp(3560,27): note: in instantiation of function template specialization 'std::vector<Fortran::evaluate::characteristics::DummyArgument>::emplace_back<Fortran::evaluate::characteristics::DummyDataObject>' requested here
3560 |           .dummyArguments.emplace_back(std::move(ddo));
|                           ^
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\characteristics.h(294,40): note: candidate constructor not viable: no known conversion from 'Fortran::evaluate::characteristics::DummyDataObject' to 'const DummyArgument' for 1st argument
294 |   DECLARE_CONSTRUCTORS_AND_ASSIGNMENTS(DummyArgument)
|   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\common.h(179,3): note: expanded from macro 'DECLARE_CONSTRUCTORS_AND_ASSIGNMENTS'
179 |   t(const t &); \
|   ^ ~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\characteristics.h(294,40): note: candidate constructor not viable: no known conversion from 'Fortran::evaluate::characteristics::DummyDataObject' to 'DummyArgument' for 1st argument
294 |   DECLARE_CONSTRUCTORS_AND_ASSIGNMENTS(DummyArgument)
|   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\common.h(180,3): note: expanded from macro 'DECLARE_CONSTRUCTORS_AND_ASSIGNMENTS'
180 |   t(t &&); \
|   ^ ~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\characteristics.h(299,12): note: candidate constructor not viable: no known conversion from 'Fortran::evaluate::characteristics::DummyDataObject' to 'AlternateReturn' for 1st argument
299 |   explicit DummyArgument(AlternateReturn &&x) : u{std::move(x)} {}
|            ^             ~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\characteristics.h(295,3): note: candidate constructor not viable: requires 2 arguments, but 1 was provided
295 |   DummyArgument(std::string &&name, DummyDataObject &&x)
|   ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\characteristics.h(297,3): note: candidate constructor not viable: requires 2 arguments, but 1 was provided
297 |   DummyArgument(std::string &&name, DummyProcedure &&x)
|   ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from C:\_work\llvm-project\llvm-project\flang\lib\Evaluate\intrinsics.cpp:9:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate/intrinsics.h:12:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\call.h:12:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Evaluate\common.h:13:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Common/enum-set.h:18:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Common\idioms.h:26:
In file included from C:\_work\llvm-project\llvm-project\flang\include\flang/Common\enum-class.h:21:
In file included from C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\functional:18:
In file included from C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\unordered_map:10:
In file included from C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\xhash:13:
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\vector(900,9): error: no matching function for call to 'construct'
900 |         _Alty_traits::construct(_Al, _STD _Unfancy(_Newvec + _Whereoff), _STD forward<_Valty>(_Val)...);
|         ^~~~~~~~~~~~~~~~~~~~~~~
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\vector(848,17): note: in instantiation of function template specialization 'std::vector<Fortran::evaluate::characteristics::DummyArgument>::_Emplace_reallocate<Fortran::evaluate::characteristics::DummyDataObject>' requested here
848 |         return *_Emplace_reallocate(_Mylast, _STD forward<_Valty>(_Val)...);
|                 ^
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\vector(924,24): note: in instantiation of function template specialization 'std::vector<Fortran::evaluate::characteristics::DummyArgument>::_Emplace_one_at_back<Fortran::evaluate::characteristics::DummyDataObject>' requested here
924 |         _Ty& _Result = _Emplace_one_at_back(_STD forward<_Valty>(_Val)...);
|                        ^
C:\_work\llvm-project\llvm-project\flang\lib\Evaluate\intrinsics.cpp(3560,27): note: in instantiation of function template specialization 'std::vector<Fortran::evaluate::characteristics::DummyArgument>::emplace_back<Fortran::evaluate::characteristics::DummyDataObject>' requested here
3560 |           .dummyArguments.emplace_back(std::move(ddo));
|                           ^
C:\BuildTools\VC\Tools\MSVC\14.44.35207\include\xmemory(728,30): note: candidate template ignored: substitution failure [with _Objty = Fortran::evaluate::characteristics::DummyArgument, _Types = <Fortran::evaluate::characteristics::DummyDataObject>]
728 |     static _CONSTEXPR20 void construct(_Alloc&, _Objty* const _Ptr, _Types&&... _Args) {
|                              ^
3 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/195112


More information about the flang-commits mailing list