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

    <tr>
        <th>Summary</th>
        <td>
            DependencyTracker.cpp fails to build on `error: static assertion failed due to requirement '3U <= PointerLikeTypeTraits<llvm::dwarflinker_parallel::CompileUnit *>::NumLowBitsAvailable': PointerIntPair with integer size too large for pointer`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

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

<pre>
    On linux debian i386 with 7f215b1380da:
```
/opt/sccache//sccache /build/source/build-llvm/./bin/clang++ -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/build/source/build-llvm/tools/clang/stage2-bins/lib/DWARFLinkerParallel -I/build/source/llvm/lib/DWARFLinkerParallel -I/build/source/build-llvm/tools/clang/stage2-bins/include -I/build/source/llvm/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 -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -ffile-prefix-map=/build/source/build-llvm/tools/clang/stage2-bins=build-llvm/tools/clang/stage2-bins -ffile-prefix-map=/build/source/= -no-canonical-prefixes -O2 -DNDEBUG -g1 -std=c++17  -fno-exceptions -funwind-tables -MD -MT lib/DWARFLinkerParallel/CMakeFiles/LLVMDWARFLinkerParallel.dir/DependencyTracker.cpp.o -MF lib/DWARFLinkerParallel/CMakeFiles/LLVMDWARFLinkerParallel.dir/DependencyTracker.cpp.o.d -o lib/DWARFLinkerParallel/CMakeFiles/LLVMDWARFLinkerParallel.dir/DependencyTracker.cpp.o -c /build/source/llvm/lib/DWARFLinkerParallel/DependencyTracker.cpp
In file included from /build/source/llvm/lib/DWARFLinkerParallel/DependencyTracker.cpp:9:
In file included from /build/source/llvm/lib/DWARFLinkerParallel/DependencyTracker.h:12:
In file included from /build/source/llvm/lib/DWARFLinkerParallel/DWARFLinkerCompileUnit.h:12:
In file included from /build/source/llvm/lib/DWARFLinkerParallel/DWARFLinkerUnit.h:12:
In file included from /build/source/llvm/lib/DWARFLinkerParallel/DWARFLinkerGlobalData.h:12:
In file included from /build/source/llvm/lib/DWARFLinkerParallel/TypePool.h:15:
In file included from /build/source/llvm/include/llvm/CodeGen/DIE.h:17:
/build/source/llvm/include/llvm/ADT/PointerIntPair.h:172:17: error: static assertion failed due to requirement '3U <= PointerLikeTypeTraits<llvm::dwarflinker_parallel::CompileUnit *>::NumLowBitsAvailable': PointerIntPair with integer size too large for pointer
  172 |   static_assert(IntBits <= PtrTraits::NumLowBitsAvailable,
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/source/llvm/include/llvm/ADT/PointerIntPair.h:103:13: note: in instantiation of template class 'llvm::PointerIntPairInfo<llvm::dwarflinker_parallel::CompileUnit *, 3, llvm::PointerLikeTypeTraits<llvm::dwarflinker_parallel::CompileUnit *>>' requested here
  103 |     Value = Info::updateInt(Value, static_cast<intptr_t>(IntVal));
      | ^
/build/source/llvm/lib/DWARFLinkerParallel/DependencyTracker.h:138:14: note: in instantiation of member function 'llvm::PointerIntPair<llvm::dwarflinker_parallel::CompileUnit *, 3>::setInt' requested here
  138 | RootCU.setInt(static_cast<uint8_t>(Action));
      | ^
/build/source/llvm/include/llvm/ADT/PointerIntPair.h:172:25: note: expression evaluates to '3 <= 2'
  172 |   static_assert(IntBits <= PtrTraits::NumLowBitsAvailable,
      | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/source/llvm/include/llvm/ADT/PointerIntPair.h:103:17: error: incomplete definition of type 'llvm::PointerIntPairInfo<llvm::dwarflinker_parallel::CompileUnit *, 3, llvm::PointerLikeTypeTraits<llvm::dwarflinker_parallel::CompileUnit *>>'
 103 |     Value = Info::updateInt(Value, static_cast<intptr_t>(IntVal));
 | ~~~~^~
/build/source/llvm/lib/DWARFLinkerParallel/DependencyTracker.h:138:14: note: in instantiation of member function 'llvm::PointerIntPair<llvm::dwarflinker_parallel::CompileUnit *, 3>::setInt' requested here
  138 | RootCU.setInt(static_cast<uint8_t>(Action));
      | ^
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWFtv-joS_zTmxTICpxT6wAMlTYXUm1r6R_uEHHsSZuvYObbTy3nYz75yAqXVaU__t1Za7UHIKGN7br_h53GE91gagCkZHZNR2hNN2Fg39U_6Hnxw0MuteppeGqrRNI9UQY7CUEwmh_QBw4aOCz4c5cNkMlCCJDMySMlgRg4H22_3yDNbB8IzL6WQGyA82z9QwrO8Qa2iyDZOwk7AtL6vCM_6UYCG8ExqYUrCjwk_pixdZ4uzk_Vllt2cLNfHi-UNSdLDgzhxenG7vrm8vZ6fxKez2fXpSbt2L1vfLNP5en55cbOcXSzX57P59eXNfiK7vD6f_VV8tjhf7KWLDz0P1mq_9zvzQZTAWY4mSjXmhGfpanadnaG5A3clnNAa9Duqt0p_dNsPeIRG6kbB39t_XlT4IOQdq50NIIN1zAdnTUnZqrCuEoGyFThnHUnSTsA8yMZheKJsZSxrTONBMWmrShjFNBpgwpVNBSbuVSIAC1hBC_Xl9XKR_WuLIElSTllxtZhTVhjLPFTCBJQMTQBXW48BraGsuEePOWoMTwxNNODZBpUC88K3F3aeZY0pG-EUKCbuBWqx1WHggbKV0DoufQxOvAqkFk5UEMBRtnpwGCAmBE3pKVtJ4QP7oxFxZ4XeoylZgaAVQ4MBhcY_wXnKalBtJJ1ibU3ZDlFDV_dHk5iwWgTWOhBDR8pWWNUaJQZWCK3Dxtmm3MRN9h4cKOYfMMgNU1CIRodOubHwKKEOLDzV0IoMu0cXGqGZCjZGoUBDAPbGjG_KEnxgUb_DWA2rLlgmrbkH59v8x1A1CBXlaBSYIDpgVjIIxSrxlANrjG_q2roAirJCoSiN9QGlZ9LqaKwoGiPjvlg_8dfHdSKIl88FamC1gwIfWSVqkqS_9F9I0u9d-t22SZJSZiyTwliDUujtFvCUXXLK0ov05Pj2lLJySJkPiiTpFvPhmHZ13gG2jbgxD2gUCyLXUcV5Stn5kr7LDoRn83NxBxlqiKGcnX07f2NZX6GLCqCGCJh8Wjoh78D1ZV33LWXn2Seb6CvK7KeHId88dj5i2Pc0dsfcwtBYCXRLkIoWzla_104yO3o-ZD_Z3IYksyH_JGt76dxWNWq4NRi-yuRX2jrVNhc6FUF8qsXlUw1X1urOyOjnjWwX7gVzq-AUYvOVLk469eN9n_cDimbpkvDsyrZH9MKEK4HbIhvznVa6PX9n1MeTQlLhPbj2yCgEalBUNUCDpQ7-aNBB2ykQPk5uKUnmkWC3-s_wDmJOlk5g8CSZt04kM5LM1INwhW4TuK53GWxnXpQiJXxGkpNOftFUZ_bhGIOfdc2ABsJbd19H0zXEUVKCox7_jK5aqoUrgRbW0bpb3uWO0uGYUzKeU7qNdt1FS_hkYUI09xxUcLtA3vVnvtMaP1ErGZ385zs_vxPMQRLHOFBjA8RfNBSND7Gv6Y5_W9AAVa1FACq18D5iuEfotdqFKexPAsjnNInDX1T_tvI4IXzcFiP42L5swMEzuoNkiy6l34RugEYou2iiuqaOjefCRLzb-ejpthBit0iSOZpQB7cOrZ1YFN-EJvwofpPjN_D-EMefOAGSSRwPPsKzgioHR3ed2t8B-itg7v6SHkKbuXeTn0zapFxbG-a3_d3yyev8NmjCZJfeWev4L6X3RzmPj16mFR5rB75tnOFe6EYE8JHrIr_tmIBH4vkS-njmho9p5PfTx-uzAE288cSbCFVQtPelLYnEi8v_MnVsk_5FVLGDNUL6D1V8BVXsXoP11DRRR8mR6MF0OB4MxuOj0WjQ20yPxgAAcpLI8USO8_GgyJMBwPAwl6AOk1EPp3zAk-GQJ5wfjEaDfqIOEskHRXEAIlcTSQ4GUAnU_ZiovnVlD71vYDpO-OG4p0UO2rfv9jg38EDbScI5GaU9N417WN6UnhwMNPrg91oCBg3TN28hbS_WUlNbPDRieDj4_2jdDge9xunpJoS6pdP2TWaJYdPkfWmrF_-fmNra2X-DDJECY97jfbXF5b8BAAD__1NJE60">