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

    <tr>
        <th>Summary</th>
        <td>
            Unable to compile LLD from source [llvm 15.0.6]
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

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

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

<pre>
    Hello,
I've downloaded LLVM toolchain's source from Github (15.0.6) and LLD doesn't compile.
Here's the error:

```
/archive/ARCHIVE/llvm-project/lld/COFF/Writer.cpp: In member function ‘void {anonymous}::Writer::createGuardCFTables()’:
/archive/ARCHIVE/llvm-project/lld/COFF/Writer.cpp:1723:34: error: ‘GuardFlags’ was not declared in this scope; did you mean ‘guardFlags’?
 1723 |   uint32_t guardFlags = uint32_t(GuardFlags::CF_INSTRUMENTED) |
      |                                  ^~~~~~~~~~
      |                                  guardFlags
/archive/ARCHIVE/llvm-project/lld/COFF/Writer.cpp:1724:33: error: expected primary-expression before ‘(’ token
 1724 |                         uint32_t(GuardFlags::CF_FUNCTION_TABLE_PRESENT);
      |                                 ^
/archive/ARCHIVE/llvm-project/lld/COFF/Writer.cpp:1724:34: error: ‘GuardFlags’ is not a class, namespace, or enumeration
 1724 |                         uint32_t(GuardFlags::CF_FUNCTION_TABLE_PRESENT);
      |                                  ^~~~~~~~~~
/archive/ARCHIVE/llvm-project/lld/COFF/Writer.cpp:1726:27: error: expected primary-expression before ‘(’ token
 1726 |     guardFlags |= uint32_t(GuardFlags::CF_LONGJUMP_TABLE_PRESENT);
      |                           ^
/archive/ARCHIVE/llvm-project/lld/COFF/Writer.cpp:1726:28: error: ‘GuardFlags’ is not a class, namespace, or enumeration
 1726 |     guardFlags |= uint32_t(GuardFlags::CF_LONGJUMP_TABLE_PRESENT);
      |                            ^~~~~~~~~~
/archive/ARCHIVE/llvm-project/lld/COFF/Writer.cpp:1728:27: error: expected primary-expression before ‘(’ token
 1728 |     guardFlags |= uint32_t(GuardFlags::EH_CONTINUATION_TABLE_PRESENT);
      |                           ^
/archive/ARCHIVE/llvm-project/lld/COFF/Writer.cpp:1728:28: error: ‘GuardFlags’ is not a class, namespace, or enumeration
 1728 |     guardFlags |= uint32_t(GuardFlags::EH_CONTINUATION_TABLE_PRESENT);
      |                            ^~~~~~~~~~
gmake[2]: *** [COFF/CMakeFiles/lldCOFF.dir/build.make:303: COFF/CMakeFiles/lldCOFF.dir/Writer.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:489: COFF/CMakeFiles/lldCOFF.dir/all] Error 2
gmake: *** [Makefile:149: all] Error 2

```

Here's how I've tired to build LLD:
1. `cmake ..` to generate build files
2. `cmake --build . --target install` taken from the LLVM docs on how to build LLVM (I assume it's the same for all LLVM's tools)

Thanks!
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMV01z4jgQ_TXi0oXLlrGxDxzMhydsJWRqhsweU0JqQIttUZKcTC7727ckEyA7qclmk-yOy0X5Q939-um16WbGyE2DOCLJmCTTHmvtVunRjtU7dR_1Vko8jC6wqhShExJOSVjMCR3eIQh131SKCRRwefntCqxSFd8y2RA6NGBUqznCWqsaPkm7bVdAaBYlQRikhObAGmc2BaHQOAsLXNV7WWHQBblAjd6R3SKg1kqTuOheHX7T8HB2t7Rkmm_lHRJaFl8mF_NvM0LLqrqr-3ut_kBu_a0gtJxclyWh5e9aWtQB3-9JXMC8gRrrFWpYtw23UjVAZpRkIcmzOyUFkOGYNap5qFVryHDq4MRF56O75hqZxU8t02JSLtmqQkNoRmj-6Cc_pfBGtNGQxiQu4oFD_sjOCa_HUFZsY46h4Z4ZaJQFgbxiGgXIBuxWGjBc7ZHEYxBSwINqoUZ2lvvmR18kLrs0wOEAMpwAQCsbG9NbCycDIPH0-JzQc1iesEl5O198XX65uZotlrOpkwUZHkQG_uhcv3CQZPbn4_Fq47P03mtn3KbE8ZOdwe975BYF7LWsmX7o4_e9RmOcyla4VhpPhDvNHHfNqh02J7IHP03q51SXN4vJcn69uF0W48vZ7ecvs6-zxdLJMx6_ljaSzN6XrlcIWXY6ZsArZgyhE2hYjWbPOLobpQGbtkbNXA3_etQ9I9d3IDElcUGHH6K59JjWeWUPJy8X9-X14tNvN1ef30bbe2rN05R9uNb-b8o-RmPZx2ks-3eEzS5uJ9eL5XxxU7y9PN9TZ9l_o7NfgbZntLap2Q5JMqYkmfrUadGdQJLxgbHJFdthKX2P5Lh0jwMhNaHlqpWVCLyPuIhD_0_6stVpCwJFkinMHPEQPUUUPYvo3Km7XssKKYmLQZb_s9isqk4h6XnIv8d6dO9kMvDen7N9vsN92hdv1T0cOnErXT9nFXjmXFt9bDSjAEgacocFgoCkoVu2wcZJCQ_r1z4nv5yeLe_3u9cB9PuW6Q1akI2xDq9zw3bYdO2969D9BCAUN6AaD-0Mzbcr1_rPgRnT1gjSHvt6w2qEtdKOBL-we6NUZZwMz9JeblmzM4RGPTGKRR7nrIejKB2GNEuiYdTbjtYZy_IV8lWGcZLyKF3njEY0SgcrkXGOPTmiIaURDdMwDNMoCgZpFuV5HItMcCE4J4MQayarwFV6oPSmJ41pcZTk8SDvVWyFlXmckvTIfw5W7caQQVhJY83JzEpb4eimcSOAI-Iw2fh5xzN2GI5IMnY2cJiKkmmv1dVoa-3eFyp1qtv42Sngqj58gn78EnmUTpQe6F8BAAD__6v97V4">