<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/102033>102033</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            flang fails to build with `no matching function for call to 'make(const Fortran::parser::OmpClause::Absent&, Fortran::semantics::SemanticsContext&)'`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            build-problem,
            flang
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          sylvestre
      </td>
    </tr>
</table>

<pre>
    On linux ubuntu Lunar:
```

FAILED: tools/flang/lib/Lower/CMakeFiles/FortranLower.dir/OpenMP/Clauses.cpp.o 
/usr/bin/g++-12 -DFLANG_INCLUDE_TESTS=1 -DFLANG_LITTLE_ENDIAN=1 -DFLANG_VENDOR="\"Ubuntu \"" -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/build/source/build-llvm/tools/flang/lib/Lower -I/build/source/flang/lib/Lower -I/build/source/flang/include -I/build/source/build-llvm/tools/flang/include -I/build/source/build-llvm/include -I/build/source/llvm/include -isystem /build/source/llvm/../mlir/include -isystem /build/source/build-llvm/tools/mlir/include -isystem /build/source/build-llvm/tools/clang/include -isystem /build/source/llvm/../clang/include -fstack-protector-strong -Wformat -Werror=format-security -Wno-unused-command-line-argument -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -fno-lifetime-dse -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-maybe-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -fdebug-prefix-map=/build/source/build-llvm=../ -fdebug-prefix-map=/build/source/= -no-canonical-prefixes -ffile-prefix-map=/build/source/build-llvm=../ -ffile-prefix-map=/build/source/= -no-canonical-prefixes -Wno-deprecated-copy -Wno-ctad-maybe-unsupported -fno-strict-aliasing -fno-semantic-interposition -O3 -DNDEBUG  -fno-exceptions -funwind-tables -std=c++17 -MD -MT tools/flang/lib/Lower/CMakeFiles/FortranLower.dir/OpenMP/Clauses.cpp.o -MF tools/flang/lib/Lower/CMakeFiles/FortranLower.dir/OpenMP/Clauses.cpp.o.d -o tools/flang/lib/Lower/CMakeFiles/FortranLower.dir/OpenMP/Clauses.cpp.o -c /build/source/flang/lib/Lower/OpenMP/Clauses.cpp
/build/source/flang/lib/Lower/OpenMP/Clauses.cpp: In instantiation of 'Fortran::lower::omp::makeClause(const Fortran::parser::OmpClause&, Fortran::semantics::SemanticsContext&)::<lambda(auto:79&&)> [with auto:79 = const Fortran::parser::OmpClause::Absent&]':
/build/source/flang/include/flang/Common/visit.h:72:61: required by substitution of 'template<class VISITOR, class ... VARIANT> decltype (visitor((get<0>)((forward<VARIANT>)(Fortran::common::log2visit::visit::u))...)) Fortran::common::log2visit::visit(VISITOR&&, VARIANT&& ...) [with VISITOR = Fortran::lower::omp::makeClause(const Fortran::parser::OmpClause&, Fortran::semantics::SemanticsContext&)::<lambda(auto:79&&)>; VARIANT = {const std::variant<Fortran::parser::OmpClause::Absent, Fortran::parser::OmpClause::AcqRel, Fortran::parser::OmpClause::Acquire, Fortran::parser::OmpClause::AdjustArgs, Fortran::parser::OmpClause::Affinity, Fortran::parser::OmpClause::Align, Fortran::parser::OmpClause::Aligned, Fortran::parser::OmpClause::Allocate, Fortran::parser::OmpClause::Allocator, Fortran::parser::OmpClause::AppendArgs, Fortran::parser::OmpClause::At, Fortran::parser::OmpClause::AtomicDefaultMemOrder, Fortran::parser::OmpClause::Bind, Fortran::parser::OmpClause::CancellationConstructType, Fortran::parser::OmpClause::Capture, Fortran::parser::OmpClause::Collapse, Fortran::parser::OmpClause::Compare, Fortran::parser::OmpClause::Contains, Fortran::parser::OmpClause::Copyprivate, Fortran::parser::OmpClause::Copyin, Fortran::parser::OmpClause::Default, Fortran::parser::OmpClause::Defaultmap, Fortran::parser::OmpClause::Depend, Fortran::parser::OmpClause::Depobj, Fortran::parser::OmpClause::Destroy, Fortran::parser::OmpClause::Detach, Fortran::parser::OmpClause::Device, Fortran::parser::OmpClause::DeviceType, Fortran::parser::OmpClause::DistSchedule, Fortran::parser::OmpClause::Doacross, Fortran::parser::OmpClause::DynamicAllocators, Fortran::parser::OmpClause::Enter, Fortran::parser::OmpClause::Exclusive, Fortran::parser::OmpClause::Fail, Fortran::parser::OmpClause::Filter, Fortran::parser::OmpClause::Final, Fortran::parser::OmpClause::Firstprivate, Fortran::parser::OmpClause::Flush, Fortran::parser::OmpClause::From, Fortran::parser::OmpClause::Full, Fortran::parser::OmpClause::Grainsize, Fortran::parser::OmpClause::HasDeviceAddr, Fortran::parser::OmpClause::Hint, Fortran::parser::OmpClause::Holds, Fortran::parser::OmpClause::If, Fortran::parser::OmpClause::InReduction, Fortran::parser::OmpClause::Inbranch, Fortran::parser::OmpClause::Inclusive, Fortran::parser::OmpClause::Indirect, Fortran::parser::OmpClause::Init, Fortran::parser::OmpClause::IsDevicePtr, Fortran::parser::OmpClause::Lastprivate, Fortran::parser::OmpClause::Linear, Fortran::parser::OmpClause::Link, Fortran::parser::OmpClause::Map, Fortran::parser::OmpClause::Match, Fortran::parser::OmpClause::MemoryOrder, Fortran::parser::OmpClause::Mergeable, Fortran::parser::OmpClause::Message, Fortran::parser::OmpClause::Nogroup, Fortran::parser::OmpClause::NoOpenmp, Fortran::parser::OmpClause::NoOpenmpRoutines, Fortran::parser::OmpClause::NoParallelism, Fortran::parser::OmpClause::Nowait, Fortran::parser::OmpClause::Nocontext, Fortran::parser::OmpClause::Nontemporal, Fortran::parser::OmpClause::Notinbranch, Fortran::parser::OmpClause::Novariants, Fortran::parser::OmpClause::NumTasks, Fortran::parser::OmpClause::NumTeams, Fortran::parser::OmpClause::NumThreads, Fortran::parser::OmpClause::OmpxAttribute, Fortran::parser::OmpClause::OmpxBare, Fortran::parser::OmpClause::OmpxDynCgroupMem, Fortran::parser::OmpClause::Order, Fortran::parser::OmpClause::Ordered, Fortran::parser::OmpClause::Partial, Fortran::parser::OmpClause::Priority, Fortran::parser::OmpClause::Private, Fortran::parser::OmpClause::ProcBind, Fortran::parser::OmpClause::Read, Fortran::parser::OmpClause::Reduction, Fortran::parser::OmpClause::Relaxed, Fortran::parser::OmpClause::Release, Fortran::parser::OmpClause::ReverseOffload, Fortran::parser::OmpClause::Safelen, Fortran::parser::OmpClause::Schedule, Fortran::parser::OmpClause::SeqCst, Fortran::parser::OmpClause::Severity, Fortran::parser::OmpClause::Shared, Fortran::parser::OmpClause::Simd, Fortran::parser::OmpClause::Simdlen, Fortran::parser::OmpClause::Sizes, Fortran::parser::OmpClause::TaskReduction, Fortran::parser::OmpClause::ThreadLimit, Fortran::parser::OmpClause::Threadprivate, Fortran::parser::OmpClause::Threads, Fortran::parser::OmpClause::To, Fortran::parser::OmpClause::UnifiedAddress, Fortran::parser::OmpClause::UnifiedSharedMemory, Fortran::parser::OmpClause::Uniform, Fortran::parser::OmpClause::Unknown, Fortran::parser::OmpClause::Untied, Fortran::parser::OmpClause::Update, Fortran::parser::OmpClause::Use, Fortran::parser::OmpClause::UseDeviceAddr, Fortran::parser::OmpClause::UseDevicePtr, Fortran::parser::OmpClause::UsesAllocators, Fortran::parser::OmpClause::Weak, Fortran::parser::OmpClause::When, Fortran::parser::OmpClause::Write>&}]'
/build/source/flang/lib/Lower/OpenMP/Clauses.cpp:1215:32: required from here
/build/source/flang/lib/Lower/OpenMP/Clauses.cpp:1217:57: error: no matching function for call to 'make(const Fortran::parser::OmpClause::Absent&, Fortran::semantics::SemanticsContext&)'
 1217 |         return makeClause(getClauseId(cls), clause::make(s, semaCtx),
      | ~~~~~~~~~~~~^~~~~~~~~~~~
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzUWltz4jgW_jXKi0oUyE1IP-SB2HEPVQFSQCa1TylhHxtNZMmtCwn9sL99Sza5zfT09mFmqnapLtqSz3du-nQkRQjnZK0BLsn4ioyzMxH8zthLd1B7cN7C2daUh8ulpkrq8EzDNmgf6E3QwpJkSoYZGU7J-fD4r2923_l0dnOdkWRKvTHKEZ5XSuia8FzJLeH5jXkCS3iezsUj5FJBFMmN9Vbo7t2glPH9sgU9v42CSgQHblC07cDQoymeBxeltlITnteEXxF-xUacsiy_mS6-PMwW6c1ddv2wuV5v1iTJRq9vbmabzc31w_Uim00XH978er3IliuSZIRzMk4J53d92H2D8Kj-4cvi7mG9vFul17H1sN5k6UO6XKw308XmYT5NV8v124t8uZpP_9h9M5vP3npnMZAgVUl47kywBbx0MKX2DeH5D1L5J3C8pNSFCiWc4g4C-mPR3wtJd3AeGvoD2cGA8LxRHWd-CvfdSP6yguL3qfhZ1_8ArJwXxSNrrfFQeGOZ89bomrL7ythGeMruwVpjSZL1HcxBEaz0B8rutWFBBwclK0zTCF0yJTUwYevQgI7YUnhgXjYQ2ZgvV5tZ_q8jn0mSccqq21lKWaUNc9AI7WXBpPZgW-Okl0ZTVu2lk1uppD8wqaMBx3ayLEG_8-2dnahLyQpii5UOKLsXSkXZZ2_FB69bYUUDPpL1_slKDzF6qWtH2X0hnGdfg1A9opHOSV2zSoIqmdTSS6HkN7COshbKzvNeUhldd1-U3cumVbKQnlVCKb-zJtS7oz5x2AIL-k1T2b_QRuugjlYLJZxjDTSiKMC5vtNCGXS0yBqzh76vBedkI79FF996tYHnAlrP_KGNXSUo8BBNsL20PgjFSm9i9C7UNTjPzB6sleURH0e1H8c-AwpEGS1IXYL2oh-f-8KL8jUeF9rWWB-jqUopam2cl4VjhVHRUFUFXURcpFH830U54cWHNmxDzVoLlXxmjWi7GvnDmZFkHbt_HkuSjLIYodBGy0KoIwSi_UoqONH8z0F_ZD2muoTWQiF8N7Ha40z70zTHueOtLDwTSorI0h9PqGVCWbbIrq_uvtBesmfJMftBP0ldMi-2KvrjfEmSrOjXvNGEsnlG2Xzzz6y3bJ7_I4oHJWXmH3K5-G7R_b6N7-l43WP8FR3JlM40ldr5OOT9zDQVJXxyjCRuo5Kp6nR0j6Zp-4dGPEKvivCLwmjn6QdMK6x7AS2b9kX0nPD0o-AL31zfXL80U6M9PPsO8rl_R5JUiWZbCsIvRPCGJNPJ506gl7mmZHz1JP2Ovr6lcdL8tHtdc7p1oDu744zwydtO8r_vS971pKZpTNz3xXXID3bRG06S6fkoZt3C1yAtlHR7oC5snZc-vMu-h6ZVwgNJ0q6W019n69lmuYrJ6zsGgwH9dbqaTRebGHcJheqqNeEXnUFjCb8g_KIGT5J0SJLrmKGuqzL2SdiSJOmbgv7lhwwVfQBHAtS8U9s33z2GDvl5ECtZfKA4HfziNbLzIzlenOo6aK_4dVyP0t2o_n9SlCRXLyF2UZDJVe9aVzG7zAgrhY7DhmVs-vMcL76uQCERkbEoSPlbcH5qa4dCVVXc3RxQGCVrjQZAiYMoExfXEzBxMiJAbQu6RKcNN_7eNLLIoBJB-Tk0S1sCyskrqVHZS4UuQKluiUkj320o_ObQotKZitYHHAdTo5RoHRLTtAJrRnshNWrEUtMeWiv3SE5FmESR_TjMJ0DiXhSFisxFIsz2NxwiHjVR1SEDL4odDrGXBWpUegSW0Jl0fl3soAwKhzOisMah6JYdtGhk8VqSUODreBZAAZ4LFZzco8LKhUStSblUSLdyqQXShHX-hFmaq-BQlMutaVDyQaEC-WJjfZLfUFH8IlxP7GlZovL8i8TtR34xqkQRclahpPUKytD9pQAH21qhcaVjpk8g_kyX0kKBStlMS5z8cShvPWokb8RJ_L-RGgTOkNSPGPk5bm2aC48byDk0xh7QG6M52BrEFlfP5-CcqFGQhamtCagULMyyBd2chFmZ4KUG1BxdmFthhVKgpEPVtoV5EjhyL0zxchbDgHQ8aBuLWxIWxssTCsPCHA92uByGZiPcIxoDokFjdhYErgovm_Z56r2V24ArDxF4hdxjR0x20GnH-zmgGIWexh0Ad0C8FdZLHJVurTQWeda9xRfjW2sK7IFtBQIpf8ICuwIlnnFZXoECgTvPrWAP1sGyqpTBBbUWFShAhXTKdn4NX1OHKl3rGBKSOOudQDJ6LRu0PDZd8htuUYnV8CSu9eXtRja4laWHnbADOqGcbgxG-k7LSkIZt-aAOwoekT0h-n0OFm4sqv7e6UdtnlDjdae9xNH1ri2RY3SHKyR3Dk47Dr0CkZvvOwfutAP7PQjUbvp-h5u391Z66C4OzskkO96U_D1XUiM-GpNkmvAPFyWVNQ3dgYW_z8qEJNNx_KLH3wNMqTa0iQcFqWv6cudMK2NpIZSi3lDCJ414RF0odM23S6XTLhdeskuj35RMUvryseCD1fTDZUcNvn-eldFT5ToV3d3Rq0fHMDpWRR9S_9xLHQ11n2jo3-8-ZHz9vvXxF1Zn5WVSfk4-izO4HE04v7jgo2R0trucJJMLMTrn5TmMC1EUYvw5EVXJxcUnEMV4fCYv-ZB_Gl4Mx6MLzkfDwbg8F9sJwCRJkqRIJuTTEBoh1UCpfTMwtj6TzgW4HA35MEnOlNiCct3PxDjvb9hba7YqbhJ5DInzIzk4GWdn9jKqYdtQO_JpqKTz7k2xl17BZSdOKyGVi8Pe6aTdFRQ5H_4vs-R8eBasutx533ayPCc8r6Xfhe2gMM3bD3u6FLTW_Nb93SHv8ukIz48p3V_y_wQAAP__c4Cn4g">