==> Synchronizing chroot copy [/home/alhp/workspace/chroot/root] -> [build_d5a9a2c4-0112-4f38-8c9e-96ad4c4be531]...done
==> Making package: clang18 18.1.8-2.1 (Wed Apr 29 22:19:56 2026)
==> Retrieving sources...
  -> Downloading clang-18.1.8.src.tar.xz...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0 32 21.12M  32  6.79M   0      0  5.27M      0   00:04   00:01   00:03  6.79M 76 21.12M  76 16.21M   0      0  7.08M      0   00:02   00:02          8.09M100 21.12M 100 21.12M   0      0  7.61M      0   00:02   00:02          8.09M100 21.12M 100 21.12M   0      0  7.61M      0   00:02   00:02          8.09M100 21.12M 100 21.12M   0      0  7.61M      0   00:02   00:02          8.09M
  -> Downloading clang-18.1.8.src.tar.xz.sig...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0100    566 100    566   0      0    805      0                              0100    566 100    566   0      0    805      0                              0100    566 100    566   0      0    805      0                              0
  -> Downloading clang-tools-extra-18.1.8.src.tar.xz...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0 11  3.18M  11 367.9k   0      0 279.6k      0   00:11   00:01   00:10 365.5k 13  3.18M  13 447.9k   0      0 192.4k      0   00:16   00:02   00:14 221.9k 16  3.18M  16 527.9k   0      0 158.6k      0   00:20   00:03   00:17 174.9k 17  3.18M  17 575.9k   0      0 131.0k      0   00:24   00:04   00:20 140.9k 19  3.18M  19 639.9k   0      0 118.6k      0   00:27   00:05   00:22 125.8k 23  3.18M  23 767.9k   0      0 120.0k      0   00:27   00:06   00:21  80615 25  3.18M  25 847.9k   0      0 114.6k      0   00:28   00:07   00:21  80793 27  3.18M  27 911.9k   0      0 108.4k      0   00:30   00:08   00:22  77348 30  3.18M  30 991.9k   0      0 105.2k      0   00:30   00:09   00:21  84753 32  3.18M  32  1.03M   0      0 101.1k      0   00:32   00:10   00:22  84533 35  3.18M  35  1.13M   0      0 102.0k      0   00:31   00:11   00:20  81137 38  3.18M  38  1.23M   0      0 101.4k      0   00:32   00:12   00:20  84195 42  3.18M  42  1.35M   0      0 103.4k      0   00:31   00:13   00:18  97314 45  3.18M  45  1.45M   0      0 102.8k      0   00:31   00:14   00:17 98.38k 48  3.18M  48  1.54M   0      0 102.3k      0   00:31   00:15   00:16 104.7k 51  3.18M  51  1.62M   0      0 100.3k      0   00:32   00:16   00:16  98989 52  3.18M  52  1.68M   0      0 98.31k      0   00:33   00:17   00:16  92810 55  3.18M  55  1.76M   0      0  99657      0   00:33   00:18   00:15  83273 58  3.18M  58  1.87M   0      0 98.07k      0   00:33   00:19   00:14  86509 60  3.18M  60  1.93M   0      0  98713      0   00:33   00:20   00:13  80269 64  3.18M  64  2.04M   0      0  99445      0   00:33   00:21   00:12  88351 67  3.18M  67  2.15M   0      0  99957      0   00:33   00:22   00:11  97458 70  3.18M  70  2.23M   0      0  99059      0   00:33   00:23   00:10  96871 72  3.18M  72  2.29M   0      0  97665      0   00:34   00:24   00:10  87027 75  3.18M  75  2.40M   0      0  98288      0   00:33   00:25   00:08  96571 77  3.18M  77  2.46M   0      0  96997      0   00:34   00:26   00:08  86650 80  3.18M  80  2.56M   0      0  97022      0   00:34   00:27   00:07  83940 81  3.18M  81  2.60M   0      0  95302      0   00:35   00:28   00:07  77733 85  3.18M  85  2.73M   0      0  96386      0   00:34   00:29   00:05  90190 88  3.18M  88  2.81M   0      0  95844      0   00:34   00:30   00:04  83538 90  3.18M  90  2.87M   0      0  94809      0   00:35   00:31   00:04  83380 93  3.18M  93  2.98M   0      0  95389      0   00:35   00:32   00:03  86543 96  3.18M  96  3.06M   0      0  94905      0   00:35   00:33   00:02  92684 99  3.18M  99  3.17M   0      0  95431      0   00:35   00:34   00:01  89863100  3.18M 100  3.18M   0      0  95416      0   00:35   00:35          89863100  3.18M 100  3.18M   0      0  95416      0   00:35   00:35          89863100  3.18M 100  3.18M   0      0  95415      0   00:35   00:35          89863
  -> Downloading clang-tools-extra-18.1.8.src.tar.xz.sig...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0100    566 100    566   0      0   1557      0                              0100    566 100    566   0      0   1556      0                              0100    566 100    566   0      0   1556      0                              0
  -> Downloading llvm-18.1.8.src.tar.xz...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0 12 59.11M  12  7.35M   0      0  5.46M      0   00:10   00:01   00:09  7.36M 28 59.11M  28 17.01M   0      0  7.24M      0   00:08   00:02   00:06  8.49M 45 59.11M  45 26.79M   0      0  8.00M      0   00:07   00:03   00:04  8.92M 60 59.11M  60 35.54M   0      0  8.17M      0   00:07   00:04   00:03  8.88M 74 59.11M  74 44.15M   0      0  8.25M      0   00:07   00:05   00:02  8.82M 89 59.11M  89 53.18M   0      0  8.37M      0   00:07   00:06   00:01  9.16M100 59.11M 100 59.11M   0      0  8.45M      0   00:06   00:06          9.16M100 59.11M 100 59.11M   0      0  8.45M      0   00:06   00:06          9.16M100 59.11M 100 59.11M   0      0  8.45M      0   00:06   00:06          9.16M
  -> Downloading llvm-18.1.8.src.tar.xz.sig...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0100    566 100    566   0      0   2897      0                              0100    566 100    566   0      0   2896      0                              0100    566 100    566   0      0   2896      0                              0
  -> Downloading cmake-18.1.8.src.tar.xz...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0100   8708 100   8708   0      0  50311      0                              0100   8708 100   8708   0      0  50292      0                              0100   8708 100   8708   0      0  50274      0                              0
  -> Downloading cmake-18.1.8.src.tar.xz.sig...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0100    566 100    566   0      0   2051      0                              0100    566 100    566   0      0   2051      0                              0100    566 100    566   0      0   2051      0                              0
  -> Downloading third-party-18.1.8.src.tar.xz...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0 44 392.8k  44 175.8k   0      0 158.7k      0   00:02   00:01   00:01 172.1k 69 392.8k  69 271.8k   0      0 129.0k      0   00:03   00:02   00:01 134.5k 89 392.8k  89 351.8k   0      0 113.0k      0   00:03   00:03         116.3k100 392.8k 100 392.8k   0      0 104.9k      0   00:03   00:03         116.3k100 392.8k 100 392.8k   0      0 104.8k      0   00:03   00:03         116.3k100 392.8k 100 392.8k   0      0 104.8k      0   00:03   00:03         116.3k
  -> Downloading third-party-18.1.8.src.tar.xz.sig...
  % Total    % Received % Xferd  Average Speed  Time    Time    Time   Current
                                 Dload  Upload  Total   Spent   Left   Speed
  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0  0      0   0      0   0      0      0      0                              0
  0      0   0      0   0      0      0      0                              0100    566 100    566   0      0   1139      0                              0100    566 100    566   0      0   1138      0                              0100    566 100    566   0      0   1138      0                              0
  -> Found clang-disable-float128-diagnostics-for-device-compilation.patch
  -> Found support-__GCC_-CON-DE-STRUCTIVE_SIZE.patch
  -> Found enable-fstack-protector-strong-by-default.patch
==> Validating source files with sha256sums...
    clang-18.1.8.src.tar.xz ... Passed
    clang-18.1.8.src.tar.xz.sig ... Skipped
    clang-tools-extra-18.1.8.src.tar.xz ... Passed
    clang-tools-extra-18.1.8.src.tar.xz.sig ... Skipped
    llvm-18.1.8.src.tar.xz ... Passed
    llvm-18.1.8.src.tar.xz.sig ... Skipped
    cmake-18.1.8.src.tar.xz ... Passed
    cmake-18.1.8.src.tar.xz.sig ... Skipped
    third-party-18.1.8.src.tar.xz ... Passed
    third-party-18.1.8.src.tar.xz.sig ... Skipped
    clang-disable-float128-diagnostics-for-device-compilation.patch ... Passed
    support-__GCC_-CON-DE-STRUCTIVE_SIZE.patch ... Passed
    enable-fstack-protector-strong-by-default.patch ... Passed
==> Verifying source file signatures with gpg...
    clang-18.1.8.src.tar.xz ... Passed
    clang-tools-extra-18.1.8.src.tar.xz ... Passed
    llvm-18.1.8.src.tar.xz ... Passed
    cmake-18.1.8.src.tar.xz ... Passed
    third-party-18.1.8.src.tar.xz ... Passed
==> Making package: clang18 18.1.8-2.1 (Wed Apr 29 20:20:49 2026)
==> Checking runtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...

Package (3)          New Version     Net Change

core/libedit         20251016_3.1-1    0.26 MiB
extra/compiler-rt18  18.1.8-1         40.64 MiB
extra/llvm18-libs    18.1.8-2        128.96 MiB

Total Installed Size:  169.85 MiB

:: Proceed with installation? [Y/n] 
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
:: Processing package changes...
installing libedit...
installing llvm18-libs...
installing compiler-rt18...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
==> Checking buildtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...

Package (41)                                New Version   Net Change

extra/cppdap                                1.58.0-3        1.61 MiB
extra/hicolor-icon-theme                    0.18-1          0.05 MiB
extra/jsoncpp                               1.9.6-3         0.77 MiB
extra/libuv                                 1.52.1-1        0.64 MiB
extra/libyaml                               0.2.5-3         0.18 MiB
extra/llvm-libs                             22.1.3-1      160.11 MiB
core/mpdecimal                              4.0.1-3         0.32 MiB
core/python                                 3.14.4-1       72.32 MiB
extra/python-babel                          2.17.0-3       30.53 MiB
extra/python-certifi                        2026.04.22-1    0.02 MiB
extra/python-charset-normalizer             3.4.7-1         0.96 MiB
extra/python-docutils                       1:0.22.4-1      6.52 MiB
extra/python-idna                           3.13-1          0.85 MiB
extra/python-imagesize                      2.0.0-1         0.12 MiB
extra/python-jinja                          1:3.1.6-3       2.04 MiB
extra/python-markdown-it-py                 4.0.0-2         0.77 MiB
extra/python-markupsafe                     3.0.3-1         0.09 MiB
extra/python-mdit_py_plugins                0.5.0-2         0.46 MiB
extra/python-mdurl                          0.1.2-9         0.06 MiB
extra/python-packaging                      26.2-1          1.23 MiB
extra/python-pygments                       2.20.0-1       15.36 MiB
extra/python-pytz                           2026.1-1        0.17 MiB
extra/python-requests                       2.33.1-1        0.60 MiB
extra/python-roman-numerals-py              3.1.0-2         0.04 MiB
extra/python-snowballstemmer                3.0.1-1         2.91 MiB
extra/python-sphinx-alabaster-theme         1.0.0-6         0.05 MiB
extra/python-sphinxcontrib-applehelp        2.0.0-5         0.26 MiB
extra/python-sphinxcontrib-devhelp          2.0.0-6         0.13 MiB
extra/python-sphinxcontrib-htmlhelp         2.1.0-5         0.18 MiB
extra/python-sphinxcontrib-jsmath           1.0.1-21        0.02 MiB
extra/python-sphinxcontrib-qthelp           2.0.0-5         0.17 MiB
extra/python-sphinxcontrib-serializinghtml  2.0.0-5         0.14 MiB
extra/python-urllib3                        2.6.3-1         1.44 MiB
extra/python-yaml                           6.0.3-2         0.96 MiB
extra/rhash                                 1.4.6-1         0.34 MiB
extra/cmake                                 4.3.2-1        95.21 MiB
extra/llvm                                  22.1.3-1      129.12 MiB
extra/llvm18                                18.1.8-2       66.67 MiB
extra/ninja                                 1.13.2-3        0.41 MiB
extra/python-myst-parser                    4.0.1-3         1.08 MiB
extra/python-sphinx                         9.1.0-1        23.72 MiB

Total Installed Size:  618.64 MiB

:: Proceed with installation? [Y/n] 
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
:: Processing package changes...
installing llvm18...
installing cppdap...
installing hicolor-icon-theme...
installing jsoncpp...
Optional dependencies for jsoncpp
    jsoncpp-doc: documentation
installing libuv...
installing rhash...
installing cmake...
Optional dependencies for cmake
    make: for unix Makefile generator [installed]
    ninja: for ninja generator [pending]
    qt6-base: cmake-gui
installing ninja...
installing mpdecimal...
installing python...
Optional dependencies for python
    python-setuptools: for building Python packages using tooling that is usually bundled with Python
    python-pip: for installing Python packages using tooling that is usually bundled with Python
    python-pipx: for installing Python software not packaged on Arch Linux
    sqlite: for a default database integration [installed]
    xz: for lzma [installed]
    tk: for tkinter
installing python-pytz...
installing python-babel...
installing python-docutils...
Optional dependencies for python-docutils
    python-myst-parser: to parse input in "Markdown" (CommonMark) format [pending]
    python-pillow: for some image manipulation operations
    python-pygments: for syntax highlighting of code directives and roles [pending]
installing python-imagesize...
installing python-markupsafe...
installing python-jinja...
Optional dependencies for python-jinja
    python-babel: for i18n support [installed]
installing python-packaging...
installing python-pygments...
installing python-charset-normalizer...
installing python-idna...
installing python-urllib3...
Optional dependencies for python-urllib3
    python-brotli: Brotli support
    python-brotlicffi: Brotli support
    python-h2: HTTP/2 support
    python-pysocks: SOCKS support
installing python-certifi...
installing python-requests...
Optional dependencies for python-requests
    python-chardet: alternative character encoding library
    python-pysocks: SOCKS proxy support
installing python-roman-numerals-py...
installing python-snowballstemmer...
Optional dependencies for python-snowballstemmer
    python-pystemmer: for improved performance
installing python-sphinx-alabaster-theme...
installing python-sphinxcontrib-applehelp...
installing python-sphinxcontrib-devhelp...
installing python-sphinxcontrib-htmlhelp...
installing python-sphinxcontrib-jsmath...
installing python-sphinxcontrib-qthelp...
installing python-sphinxcontrib-serializinghtml...
installing python-sphinx...
Optional dependencies for python-sphinx
    imagemagick: for ext.imgconverter
    texlive-fontsextra: for the default admonition title icons in PDF output
    texlive-latexextra: for generation of PDF documentation
installing python-mdurl...
installing python-markdown-it-py...
Optional dependencies for python-markdown-it-py
    python-mdit_py_plugins: core plugins [pending]
    python-linkify-it-py: linkify extension
installing python-mdit_py_plugins...
installing libyaml...
installing python-yaml...
installing python-myst-parser...
Optional dependencies for python-myst-parser
    python-linkify-it-py: linkify support
installing llvm-libs...
installing llvm...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
==> Retrieving sources...
  -> Found clang-18.1.8.src.tar.xz
  -> Found clang-18.1.8.src.tar.xz.sig
  -> Found clang-tools-extra-18.1.8.src.tar.xz
  -> Found clang-tools-extra-18.1.8.src.tar.xz.sig
  -> Found llvm-18.1.8.src.tar.xz
  -> Found llvm-18.1.8.src.tar.xz.sig
  -> Found cmake-18.1.8.src.tar.xz
  -> Found cmake-18.1.8.src.tar.xz.sig
  -> Found third-party-18.1.8.src.tar.xz
  -> Found third-party-18.1.8.src.tar.xz.sig
  -> Found clang-disable-float128-diagnostics-for-device-compilation.patch
  -> Found support-__GCC_-CON-DE-STRUCTIVE_SIZE.patch
  -> Found enable-fstack-protector-strong-by-default.patch
==> WARNING: Skipping all source file integrity checks.
==> Extracting sources...
  -> Extracting clang-18.1.8.src.tar.xz with bsdtar
  -> Extracting clang-tools-extra-18.1.8.src.tar.xz with bsdtar
  -> Extracting llvm-18.1.8.src.tar.xz with bsdtar
  -> Extracting cmake-18.1.8.src.tar.xz with bsdtar
  -> Extracting third-party-18.1.8.src.tar.xz with bsdtar
==> Starting prepare()...
`cmake-18.1.8.src' -> `cmake'
`third-party-18.1.8.src' -> `third-party'
patching file lib/Driver/ToolChains/Linux.h
patching file test/Driver/fsanitize.c
patching file test/Driver/stack-protector.c
patching file lib/Sema/SemaDeclAttr.cpp
Hunk #1 succeeded at 4871 (offset -6 lines).
patching file lib/Sema/SemaType.cpp
Hunk #1 succeeded at 1560 (offset -1 lines).
patching file test/SemaCUDA/float128.cu
patching file tools/extra/test/pp-trace/pp-trace-pragma-general.cpp
patching file tools/extra/test/pp-trace/pp-trace-pragma-ms.cpp
patching file tools/extra/test/pp-trace/pp-trace-pragma-opencl.cpp
patching file docs/LanguageExtensions.rst
patching file docs/ReleaseNotes.rst
patching file include/clang/Basic/TargetInfo.h
patching file lib/Basic/Targets/ARM.h
patching file lib/Basic/Targets/AVR.h
patching file lib/Basic/Targets/BPF.h
patching file lib/Basic/Targets/M68k.h
patching file lib/Basic/Targets/Mips.h
patching file lib/Basic/Targets/PPC.h
patching file lib/Basic/Targets/RISCV.h
patching file lib/Basic/Targets/Sparc.h
patching file lib/Basic/Targets/SystemZ.h
patching file lib/Frontend/InitPreprocessor.cpp
patching file test/AST/ast-dump-macro-json.c
patching file test/Analysis/html_diagnostics/relevant_lines/multifile.c
patching file test/Lexer/update_consecutive_macro_address_space.c
patching file test/Preprocessor/hardware_interference.cpp
patching file test/Preprocessor/init-aarch64.c
patching file test/Preprocessor/init.c
patching file test/Preprocessor/predefined-win-macros.c
==> Starting build()...
CMake Deprecation Warning at /startdir/src/cmake/Modules/CMakePolicy.cmake:6 (cmake_policy):
  The OLD behavior for policy CMP0114 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.
Call Stack (most recent call first):
  CMakeLists.txt:6 (include)


CMake Deprecation Warning at /startdir/src/cmake/Modules/CMakePolicy.cmake:11 (cmake_policy):
  The OLD behavior for policy CMP0116 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.
Call Stack (most recent call first):
  CMakeLists.txt:6 (include)


-- The C compiler identification is GNU 15.2.1
-- The CXX compiler identification is GNU 15.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test HAVE_FFI_CALL
-- Performing Test HAVE_FFI_CALL - Success
-- Found FFI: /usr/lib/libffi.so
-- Looking for histedit.h
-- Looking for histedit.h - found
-- Found LibEdit: /usr/include (found version "2.11")
-- Performing Test Terminfo_LINKABLE
-- Performing Test Terminfo_LINKABLE - Success
-- Found Terminfo: /usr/lib/libtinfo.so
-- Found ZLIB: /usr/lib/libz.so (found version "1.3.2")
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found LibXml2: /usr/lib/libxml2.so (found version "2.15.3")
-- Found CURL: /usr/lib/libcurl.so (found version "8.19.0")
-- Linker detection: GNU ld
-- Performing Test C_SUPPORTS_FPIC
-- Performing Test C_SUPPORTS_FPIC - Success
-- Performing Test CXX_SUPPORTS_FPIC
-- Performing Test CXX_SUPPORTS_FPIC - Success
-- Building with -fPIC
-- Performing Test C_SUPPORTS_FNO_SEMANTIC_INTERPOSITION
-- Performing Test C_SUPPORTS_FNO_SEMANTIC_INTERPOSITION - Success
-- Performing Test CXX_SUPPORTS_FNO_SEMANTIC_INTERPOSITION
-- Performing Test CXX_SUPPORTS_FNO_SEMANTIC_INTERPOSITION - Success
-- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG
-- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG - Success
-- Performing Test C_SUPPORTS_WERROR_DATE_TIME
-- Performing Test C_SUPPORTS_WERROR_DATE_TIME - Success
-- Performing Test CXX_SUPPORTS_WERROR_DATE_TIME
-- Performing Test CXX_SUPPORTS_WERROR_DATE_TIME - Success
-- Performing Test C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW
-- Performing Test C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW - Failed
-- Performing Test CXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW
-- Performing Test CXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW - Failed
-- Performing Test C_SUPPORTS_CMAKE_CXX_FLAGS
-- Performing Test C_SUPPORTS_CMAKE_CXX_FLAGS - Success
-- Performing Test CXX_SUPPORTS_CMAKE_CXX_FLAGS
-- Performing Test CXX_SUPPORTS_CMAKE_CXX_FLAGS - Success
-- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG
-- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG - Success
-- Performing Test C_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG
-- Performing Test C_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG - Success
-- Performing Test CXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG
-- Performing Test CXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG - Success
-- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG
-- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Failed
-- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG
-- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Failed
-- Performing Test CXX_SUPPORTS_CLASS_MEMACCESS_FLAG
-- Performing Test CXX_SUPPORTS_CLASS_MEMACCESS_FLAG - Success
-- Performing Test CXX_SUPPORTS_REDUNDANT_MOVE_FLAG
-- Performing Test CXX_SUPPORTS_REDUNDANT_MOVE_FLAG - Success
-- Performing Test CXX_SUPPORTS_PESSIMIZING_MOVE_FLAG
-- Performing Test CXX_SUPPORTS_PESSIMIZING_MOVE_FLAG - Success
-- Performing Test CXX_SUPPORTS_NOEXCEPT_TYPE_FLAG
-- Performing Test CXX_SUPPORTS_NOEXCEPT_TYPE_FLAG - Success
-- Performing Test CXX_WONT_WARN_ON_FINAL_NONVIRTUALDTOR
-- Performing Test CXX_WONT_WARN_ON_FINAL_NONVIRTUALDTOR - Failed
-- Performing Test CXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG
-- Performing Test CXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG - Success
-- Performing Test CXX_WSUGGEST_OVERRIDE_ALLOWS_ONLY_FINAL
-- Performing Test CXX_WSUGGEST_OVERRIDE_ALLOWS_ONLY_FINAL - Success
-- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP
-- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP - Failed
-- Performing Test C_SUPPORTS_STRING_CONVERSION_FLAG
-- Performing Test C_SUPPORTS_STRING_CONVERSION_FLAG - Failed
-- Performing Test CXX_SUPPORTS_STRING_CONVERSION_FLAG
-- Performing Test CXX_SUPPORTS_STRING_CONVERSION_FLAG - Failed
-- Performing Test CXX_SUPPORTS_MISLEADING_INDENTATION_FLAG
-- Performing Test CXX_SUPPORTS_MISLEADING_INDENTATION_FLAG - Success
-- Performing Test C_SUPPORTS_CTAD_MAYBE_UNSPPORTED_FLAG
-- Performing Test C_SUPPORTS_CTAD_MAYBE_UNSPPORTED_FLAG - Failed
-- Performing Test CXX_SUPPORTS_CTAD_MAYBE_UNSPPORTED_FLAG
-- Performing Test CXX_SUPPORTS_CTAD_MAYBE_UNSPPORTED_FLAG - Success
-- Performing Test LINKER_SUPPORTS_COLOR_DIAGNOSTICS
-- Performing Test LINKER_SUPPORTS_COLOR_DIAGNOSTICS - Failed
-- Performing Test C_SUPPORTS_FNO_FUNCTION_SECTIONS
-- Performing Test C_SUPPORTS_FNO_FUNCTION_SECTIONS - Success
-- Performing Test C_SUPPORTS_FFUNCTION_SECTIONS
-- Performing Test C_SUPPORTS_FFUNCTION_SECTIONS - Success
-- Performing Test CXX_SUPPORTS_FFUNCTION_SECTIONS
-- Performing Test CXX_SUPPORTS_FFUNCTION_SECTIONS - Success
-- Performing Test C_SUPPORTS_FDATA_SECTIONS
-- Performing Test C_SUPPORTS_FDATA_SECTIONS - Success
-- Performing Test CXX_SUPPORTS_FDATA_SECTIONS
-- Performing Test CXX_SUPPORTS_FDATA_SECTIONS - Success
-- Looking for os_signpost_interval_begin
-- Looking for os_signpost_interval_begin - not found
-- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB
-- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB - Success
-- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB
-- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB - Success
-- Performing Test LLVM_HAS_ATOMICS
-- Performing Test LLVM_HAS_ATOMICS - Success
-- Found Python3: /usr/bin/python3.14 (found version "3.14.4") found components: Interpreter
-- Looking for sys/resource.h
-- Looking for sys/resource.h - found
-- Looking for dlfcn.h
-- Looking for dlfcn.h - found
-- Looking for dlopen in dl
-- Looking for dlopen in dl - found
-- Looking for dladdr
-- Looking for dladdr - found
-- Clang version: 18.1.8
-- Performing Test CXX_SUPPORTS_NO_NESTED_ANON_TYPES_FLAG
-- Performing Test CXX_SUPPORTS_NO_NESTED_ANON_TYPES_FLAG - Failed
-- Could NOT find Git (missing: GIT_EXECUTABLE) 
-- Could NOT find Git (missing: GIT_EXECUTABLE) 
CMake Warning (dev) at lib/Tooling/CMakeLists.txt:58 (add_custom_command):
  COMMENT requires exactly one argument, but multiple values or COMMENT
  keywords have been given.

  Policy CMP0175 is not set: add_custom_command() rejects invalid arguments.
  Run "cmake --help-policy CMP0175" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at lib/Tooling/CMakeLists.txt:79 (add_custom_command):
  COMMENT requires exactly one argument, but multiple values or COMMENT
  keywords have been given.

  Policy CMP0175 is not set: add_custom_command() rejects invalid arguments.
  Run "cmake --help-policy CMP0175" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Looking for include file sys/inotify.h
-- Looking for include file sys/inotify.h - found
-- Sphinx enabled.
-- Found Sphinx: /usr/bin/sphinx-build
-- Sphinx enabled.
-- Configuring done (3.6s)
-- Generating done (0.3s)
CMake Warning:
  Manually-specified variables were not used by the project:

    LLVM_BUILD_TESTS
    LLVM_EXTERNAL_LIT


-- Build files have been written to: /startdir/src/clang-18.1.8.src/build
CMake Deprecation Warning at /startdir/src/cmake/Modules/CMakePolicy.cmake:6 (cmake_policy):
  The OLD behavior for policy CMP0114 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.
Call Stack (most recent call first):
  CMakeLists.txt:6 (include)


CMake Deprecation Warning at /startdir/src/cmake/Modules/CMakePolicy.cmake:11 (cmake_policy):
  The OLD behavior for policy CMP0116 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.
Call Stack (most recent call first):
  CMakeLists.txt:6 (include)


-- Building with -fPIC
-- Clang version: 18.1.8
-- Could NOT find Git (missing: GIT_EXECUTABLE) 
-- Could NOT find Git (missing: GIT_EXECUTABLE) 
CMake Warning (dev) at lib/Tooling/CMakeLists.txt:58 (add_custom_command):
  COMMENT requires exactly one argument, but multiple values or COMMENT
  keywords have been given.

  Policy CMP0175 is not set: add_custom_command() rejects invalid arguments.
  Run "cmake --help-policy CMP0175" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at lib/Tooling/CMakeLists.txt:79 (add_custom_command):
  COMMENT requires exactly one argument, but multiple values or COMMENT
  keywords have been given.

  Policy CMP0175 is not set: add_custom_command() rejects invalid arguments.
  Run "cmake --help-policy CMP0175" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Sphinx enabled.
-- Sphinx enabled.
-- Configuring done (0.3s)
-- Generating done (0.3s)
-- Build files have been written to: /startdir/src/clang-18.1.8.src/build
[1/2074] Copying clang's __clang_cuda_builtin_vars.h...
[2/2074] Copying clang's __clang_cuda_cmath.h...
[3/2074] Copying clang's __clang_cuda_complex_builtins.h...
[4/2074] Copying clang's __clang_cuda_device_functions.h...
[5/2074] Copying clang's __clang_cuda_intrinsics.h...
[6/2074] Copying clang's __clang_cuda_libdevice_declares.h...
[7/2074] Copying clang's __clang_cuda_math_forward_declares.h...
[8/2074] Copying clang's __clang_cuda_math.h...
[9/2074] Copying clang's __clang_cuda_runtime_wrapper.h...
[10/2074] Copying clang's __clang_cuda_texture_intrinsics.h...
[11/2074] Copying clang's __clang_hip_cmath.h...
[12/2074] Copying clang's __clang_hip_libdevice_declares.h...
[13/2074] Copying clang's __clang_hip_math.h...
[14/2074] Copying clang's __clang_hip_runtime_wrapper.h...
[15/2074] Copying clang's __clang_hip_stdlib.h...
[16/2074] Copying clang's __wmmintrin_aes.h...
[17/2074] Copying clang's __wmmintrin_pclmul.h...
[18/2074] Copying clang's adcintrin.h...
[19/2074] Copying clang's altivec.h...
[20/2074] Building Options.inc...
[21/2074] Copying clang's adxintrin.h...
[22/2074] Copying clang's amxcomplexintrin.h...
[23/2074] Copying clang's amxfp16intrin.h...
[24/2074] Copying clang's ammintrin.h...
[25/2074] Copying clang's avx2intrin.h...
[26/2074] Copying clang's amxintrin.h...
[27/2074] Copying clang's avx512bf16intrin.h...
[28/2074] Copying clang's avx512bitalgintrin.h...
[29/2074] Copying clang's avx512bwintrin.h...
[30/2074] Copying clang's avx512cdintrin.h...
[31/2074] Copying clang's avx512dqintrin.h...
[32/2074] Copying clang's avx512fintrin.h...
[33/2074] Copying clang's avx512erintrin.h...
[34/2074] Copying clang's avx512fp16intrin.h...
[35/2074] Copying clang's avx512ifmaintrin.h...
[36/2074] Copying clang's avx512ifmavlintrin.h...
[37/2074] Copying clang's avx512pfintrin.h...
[38/2074] Copying clang's avx512vbmi2intrin.h...
[39/2074] Copying clang's avx512vbmiintrin.h...
[40/2074] Copying clang's avx512vbmivlintrin.h...
[41/2074] Copying clang's avx512vlbwintrin.h...
[42/2074] Copying clang's avx512vlbf16intrin.h...
[43/2074] Copying clang's avx512vlbitalgintrin.h...
[44/2074] Copying clang's avx512vlcdintrin.h...
[45/2074] Copying clang's avx512vldqintrin.h...
[46/2074] Copying clang's avx512vlfp16intrin.h...
[47/2074] Copying clang's avx512vlintrin.h...
[48/2074] Copying clang's avx512vlvnniintrin.h...
[49/2074] Copying clang's avx512vlvbmi2intrin.h...
[50/2074] Copying clang's avx512vnniintrin.h...
[51/2074] Copying clang's avx512vp2intersectintrin.h...
[52/2074] Copying clang's avx512vpopcntdqintrin.h...
[53/2074] Copying clang's avx512vlvp2intersectintrin.h...
[54/2074] Copying clang's avx512vpopcntdqvlintrin.h...
[55/2074] Copying clang's avxifmaintrin.h...
[56/2074] Copying clang's avxintrin.h...
[57/2074] Copying clang's avxneconvertintrin.h...
[58/2074] Copying clang's avxvnniint16intrin.h...
[59/2074] Copying clang's avxvnniint8intrin.h...
[60/2074] Copying clang's cet.h...
[61/2074] Copying clang's avxvnniintrin.h...
[62/2074] Copying clang's bmi2intrin.h...
[63/2074] Copying clang's bmiintrin.h...
[64/2074] Copying clang's builtins.h...
[65/2074] Copying clang's cldemoteintrin.h...
[66/2074] Copying clang's cetintrin.h...
[67/2074] Copying clang's clflushoptintrin.h...
[68/2074] Copying clang's clwbintrin.h...
[69/2074] Copying clang's clzerointrin.h...
[70/2074] Copying clang's crc32intrin.h...
[71/2074] Copying clang's cmpccxaddintrin.h...
[72/2074] Copying clang's cpuid.h...
[73/2074] Copying clang's cuda_wrappers/algorithm...
[74/2074] Copying clang's cuda_wrappers/bits/basic_string.h...
[75/2074] Copying clang's cuda_wrappers/bits/basic_string.tcc...
[76/2074] Copying clang's cuda_wrappers/cmath...
[77/2074] Copying clang's cuda_wrappers/bits/shared_ptr_base.h...
[78/2074] Copying clang's cuda_wrappers/new...
[79/2074] Copying clang's cuda_wrappers/complex...
[80/2074] Copying clang's enqcmdintrin.h...
[81/2074] Copying clang's emmintrin.h...
[82/2074] Copying clang's f16cintrin.h...
[83/2074] Copying clang's fma4intrin.h...
[84/2074] Copying clang's fmaintrin.h...
[85/2074] Copying clang's fxsrintrin.h...
[86/2074] Copying clang's gfniintrin.h...
[87/2074] Copying clang's hexagon_circ_brev_intrinsics.h...
[88/2074] Copying clang's hexagon_protos.h...
[89/2074] Copying clang's hexagon_types.h...
[90/2074] Copying clang's hlsl.h...
[91/2074] Copying clang's hresetintrin.h...
[92/2074] Copying clang's htmintrin.h...
[93/2074] Copying clang's ia32intrin.h...
[94/2074] Copying clang's htmxlintrin.h...
[95/2074] Copying clang's hvx_hexagon_protos.h...
[96/2074] Copying clang's immintrin.h...
[97/2074] Copying clang's intrin.h...
[98/2074] Copying clang's invpcidintrin.h...
[99/2074] Copying clang's keylockerintrin.h...
[100/2074] Copying clang's larchintrin.h...
[101/2074] Copying clang's lasxintrin.h...
[102/2074] Copying clang's llvm_libc_wrappers/assert.h...
[103/2074] Copying clang's lsxintrin.h...
[104/2074] Copying clang's lwpintrin.h...
[105/2074] Copying clang's lzcntintrin.h...
[106/2074] Copying clang's movdirintrin.h...
[107/2074] Copying clang's mm3dnow.h...
[108/2074] Copying clang's mm_malloc.h...
[109/2074] Copying clang's mmintrin.h...
[110/2074] Copying clang's msa.h...
[111/2074] Copying clang's mwaitxintrin.h...
[112/2074] Copying clang's nmmintrin.h...
[113/2074] Copying clang's opencl-c.h...
[114/2074] Copying clang's openmp_wrappers/math.h...
[115/2074] Copying clang's pconfigintrin.h...
[116/2074] Copying clang's pkuintrin.h...
[117/2074] Copying clang's pmmintrin.h...
[118/2074] Copying clang's popcntintrin.h...
[119/2074] Copying clang's ppc_wrappers/bmi2intrin.h...
[120/2074] Copying clang's ppc_wrappers/bmiintrin.h...
[121/2074] Copying clang's ppc_wrappers/emmintrin.h...
[122/2074] Copying clang's ppc_wrappers/immintrin.h...
[123/2074] Copying clang's ppc_wrappers/mm_malloc.h...
[124/2074] Copying clang's ppc_wrappers/mmintrin.h...
[125/2074] Copying clang's ppc_wrappers/nmmintrin.h...
[126/2074] Copying clang's ppc_wrappers/pmmintrin.h...
[127/2074] Copying clang's ppc_wrappers/smmintrin.h...
[128/2074] Copying clang's ppc_wrappers/tmmintrin.h...
[129/2074] Copying clang's ppc_wrappers/x86gprintrin.h...
[130/2074] Copying clang's ppc_wrappers/x86intrin.h...
[131/2074] Copying clang's ppc_wrappers/xmmintrin.h...
[132/2074] Copying clang's prfchiintrin.h...
[133/2074] Copying clang's prfchwintrin.h...
[134/2074] Copying clang's ptwriteintrin.h...
[135/2074] Copying clang's raointintrin.h...
[136/2074] Copying clang's rdpruintrin.h...
[137/2074] Copying clang's rdseedintrin.h...
[138/2074] Copying clang's rtmintrin.h...
[139/2074] Copying clang's s390intrin.h...
[140/2074] Copying clang's serializeintrin.h...
[141/2074] Copying clang's sgxintrin.h...
[142/2074] Copying clang's shaintrin.h...
[143/2074] Copying clang's sha512intrin.h...
[144/2074] Copying clang's sm3intrin.h...
[145/2074] Copying clang's sm4intrin.h...
[146/2074] Copying clang's smmintrin.h...
[147/2074] Copying clang's tbmintrin.h...
[148/2074] Copying clang's tmmintrin.h...
[149/2074] Copying clang's tsxldtrkintrin.h...
[150/2074] Copying clang's uintrintrin.h...
[151/2074] Copying clang's usermsrintrin.h...
[152/2074] Copying clang's vaesintrin.h...
[153/2074] Copying clang's vecintrin.h...
[154/2074] Copying clang's velintrin.h...
[155/2074] Copying clang's velintrin_approx.h...
[156/2074] Copying clang's velintrin_gen.h...
[157/2074] Copying clang's vpclmulqdqintrin.h...
[158/2074] Copying clang's waitpkgintrin.h...
[159/2074] Copying clang's wasm_simd128.h...
[160/2074] Copying clang's wbnoinvdintrin.h...
[161/2074] Copying clang's wmmintrin.h...
[162/2074] Copying clang's x86gprintrin.h...
[163/2074] Copying clang's xmmintrin.h...
[164/2074] Copying clang's x86intrin.h...
[165/2074] Copying clang's xopintrin.h...
[166/2074] Copying clang's xsavecintrin.h...
[167/2074] Copying clang's xsaveintrin.h...
[168/2074] Copying clang's xsaveoptintrin.h...
[169/2074] Copying clang's xsavesintrin.h...
[170/2074] Copying clang's xtestintrin.h...
[171/2074] Bundling HTMLLogger resources
[172/2074] Creating export file for SampleAnalyzerPlugin
[173/2074] Creating export file for CheckerDependencyHandlingAnalyzerPlugin
[174/2074] Creating export file for CheckerOptionHandlingAnalyzerPlugin
[175/2074] Bundling HTMLForest resources
[176/2074] Generating ../../bin/scan-build
[177/2074] Generating ../../libexec/c++-analyzer
[178/2074] Generating ../../libexec/ccc-analyzer
[179/2074] Generating ../../share/man/man1/scan-build.1
[180/2074] cd /startdir/src/clang-18.1.8.src/build/docs && /usr/bin/cmake -E copy_directory /startdir/src/clang-18.1.8.src/docs /startdir/src/clang-18.1.8.src/build/docs && /usr/bin/cmake -E copy_if_different /startdir/src/clang-18.1.8.src/docs/../CodeOwners.rst /startdir/src/clang-18.1.8.src/build/docs
[181/2074] Generating ../../share/scan-build/scanview.css
[182/2074] Generating ../../bin/intercept-build
[183/2074] Generating ../../share/scan-build/sorttable.js
[184/2074] Generating ../../bin/analyze-build
[185/2074] Generating ../../bin/scan-build-py
[186/2074] Generating ../../lib/libear/config.h.in
[187/2074] Generating ../../lib/libear/ear.c
[188/2074] Generating ../../lib/libear/__init__.py
[189/2074] Generating ../../lib/libscanbuild/__init__.py
[190/2074] Generating ../../lib/libscanbuild/analyze.py
[191/2074] Generating ../../lib/libscanbuild/arguments.py
[192/2074] Generating ../../lib/libscanbuild/clang.py
[193/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentHTMLTagsEmitter.cpp.o
[194/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOpcodesEmitter.cpp.o
FAILED: [code=1] utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOpcodesEmitter.cpp.o 
/usr/bin/c++ -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/startdir/src/clang-18.1.8.src/build/utils/TableGen -I/startdir/src/clang-18.1.8.src/utils/TableGen -I/startdir/src/clang-18.1.8.src/include -I/startdir/src/clang-18.1.8.src/build/include -I/usr/lib/llvm18/include -march=x86-64-v3 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -Wp,-D_GLIBCXX_ASSERTIONS -g1 -ffile-prefix-map=/startdir/src=/usr/src/debug/clang18 -flto=auto -falign-functions=32 -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 -Wimplicit-fallthrough -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 -fno-common -Woverloaded-virtual -fno-strict-aliasing -pedantic -Wno-long-long -O3 -DNDEBUG -std=c++17  -fno-exceptions -funwind-tables -MD -MT utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOpcodesEmitter.cpp.o -MF utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOpcodesEmitter.cpp.o.d -o utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOpcodesEmitter.cpp.o -c /startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp
In file included from /usr/lib/llvm18/include/llvm/Support/SourceMgr.h:18,
                 from /usr/lib/llvm18/include/llvm/TableGen/Error.h:17,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp:14:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:119:62: error: ‘uint64_t’ was not declared in this scope
  119 |     std::conditional_t<sizeof(T) < 4 && sizeof(void *) >= 8, uint64_t,
      |                                                              ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:29:1: note: ‘uint64_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
   28 | #include <memory>
  +++ |+#include <cstdint>
   29 | #include <new>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:24: error: ‘uint32_t’ was not declared in this scope
  120 |                        uint32_t>;
      |                        ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:24: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:32: error: template argument 2 is invalid
  120 |                        uint32_t>;
      |                                ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:32: error: template argument 3 is invalid
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:27: error: ‘SmallVectorSizeType’ was not declared in this scope; did you mean ‘SmallVectorBase’? [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |                           ^~~~~~~~~~~~~~~~~~~
      |                           SmallVectorBase
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:47: error: template argument 1 is invalid [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |                                               ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:48: error: expected ‘)’ before ‘>’ token [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |          ~                                     ^~
      |                                                )
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:48: error: expected unqualified-id before ‘>’ token [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |                                                ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:134:30: error: ‘SmallVectorSizeType’ was not declared in this scope; did you mean ‘SmallVectorBase’? [-Wtemplate-body]
  134 |     : public SmallVectorBase<SmallVectorSizeType<T>> {
      |                              ^~~~~~~~~~~~~~~~~~~
      |                              SmallVectorBase
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:134:50: error: template argument 1 is invalid [-Wtemplate-body]
  134 |     : public SmallVectorBase<SmallVectorSizeType<T>> {
      |                                                  ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:134:51: error: expected ‘{’ before ‘>’ token
  134 |     : public SmallVectorBase<SmallVectorSizeType<T>> {
      |                                                   ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In member function ‘T* llvm::SmallVectorTemplateBase<T, <anonymous> >::mallocForGrow(size_t, size_t&)’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:457:23: error: ‘SmallVectorSizeType’ was not declared in this scope; did you mean ‘SmallVectorBase’? [-Wtemplate-body]
  457 |       SmallVectorBase<SmallVectorSizeType<T>>::mallocForGrow(
      |                       ^~~~~~~~~~~~~~~~~~~
      |                       SmallVectorBase
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:457:43: error: template argument 1 is invalid [-Wtemplate-body]
  457 |       SmallVectorBase<SmallVectorSizeType<T>>::mallocForGrow(
      |                                           ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:457:48: error: ‘::mallocForGrow’ has not been declared [-Wtemplate-body]
  457 |       SmallVectorBase<SmallVectorSizeType<T>>::mallocForGrow(
      |                                                ^~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: At global scope:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1330:45: error: ‘uint32_t’ was not declared in this scope
 1330 | extern template class llvm::SmallVectorBase<uint32_t>;
      |                                             ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1330:45: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1330:53: error: template argument 1 is invalid
 1330 | extern template class llvm::SmallVectorBase<uint32_t>;
      |                                                     ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<char, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<char>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h:321:33:   required from here
  321 |       LHS.ptrAndLength.ptr = Str.data();
      |                                 ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<char, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<char, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<char>’:
/usr/lib/llvm18/include/llvm/ADT/Twine.h:321:33:   required from here
  321 |       LHS.ptrAndLength.ptr = Str.data();
      |                                 ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
In file included from /usr/lib/llvm18/include/llvm/Support/MemoryBuffer.h:19,
                 from /usr/lib/llvm18/include/llvm/Support/SourceMgr.h:19:
/usr/lib/llvm18/include/llvm/ADT/Twine.h: In constructor ‘llvm::Twine::Twine(const llvm::SmallVectorImpl<char>&)’:
/usr/lib/llvm18/include/llvm/ADT/Twine.h:321:34: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  321 |       LHS.ptrAndLength.ptr = Str.data();
      |                                  ^~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h:322:37: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  322 |       LHS.ptrAndLength.length = Str.size();
      |                                     ^~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h: In member function ‘llvm::StringRef llvm::Twine::toStringRef(llvm::SmallVectorImpl<char>&) const’:
/usr/lib/llvm18/include/llvm/ADT/Twine.h:496:28: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  496 |       return StringRef(Out.data(), Out.size());
      |                            ^~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h:496:40: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  496 |       return StringRef(Out.data(), Out.size());
      |                                        ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::SMFixIt>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMFixIt, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h:290:27:   required from here
  290 |   SmallVector<SMFixIt, 4> FixIts;
      |                           ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:342:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::SMFixIt, void>’
  342 | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::SMFixIt, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::SMFixIt>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMFixIt, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h:290:27:   required from here
  290 |   SmallVector<SMFixIt, 4> FixIts;
      |                           ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h: In member function ‘llvm::ArrayRef<llvm::SMFixIt> llvm::SMDiagnostic::getFixIts() const’:
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h:317:48: error: could not convert ‘((const llvm::SMDiagnostic*)this)->llvm::SMDiagnostic::FixIts’ from ‘const llvm::SmallVector<llvm::SMFixIt, 4>’ to ‘llvm::ArrayRef<llvm::SMFixIt>’
  317 |   ArrayRef<SMFixIt> getFixIts() const { return FixIts; }
      |                                                ^~~~~~
      |                                                |
      |                                                const llvm::SmallVector<llvm::SMFixIt, 4>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<void*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<void*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<void*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:311:26:   required from here
  311 |   SmallVector<void *, 4> Slabs;
      |                          ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<void*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<void*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<void*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<void*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:311:26:   required from here
  311 |   SmallVector<void *, 4> Slabs;
      |                          ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:314:45:   required from here
  314 |   SmallVector<std::pair<void *, size_t>, 0> CustomSizedSlabs;
      |                                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<std::pair<void*, long unsigned int>, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<std::pair<void*, long unsigned int>, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:314:45:   required from here
  314 |   SmallVector<std::pair<void *, size_t>, 0> CustomSizedSlabs;
      |                                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
In file included from /usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:23,
                 from /usr/lib/llvm18/include/llvm/TableGen/Record.h:20,
                 from /usr/lib/llvm18/include/llvm/TableGen/Error.h:18:
/usr/lib/llvm18/include/llvm/Support/Allocator.h: At global scope:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:351:59: error: expected ‘)’ before ‘,’ token [-Wtemplate-body]
  351 |   void DeallocateSlabs(SmallVectorImpl<void *>::iterator I,
      |                       ~                                   ^
      |                                                           )
/usr/lib/llvm18/include/llvm/Support/Allocator.h:352:24: error: invalid use of qualified-name ‘llvm::SmallVectorImpl<void*>::iterator’ [-Wtemplate-body]
  352 |                        SmallVectorImpl<void *>::iterator E) {
      |                        ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:352:49: error: expected ‘;’ at end of member declaration [-Wtemplate-body]
  352 |                        SmallVectorImpl<void *>::iterator E) {
      |                                                 ^~~~~~~~
      |                                                         ;
/usr/lib/llvm18/include/llvm/Support/Allocator.h:352:58: error: ‘E’ does not name a type [-Wtemplate-body]
  352 |                        SmallVectorImpl<void *>::iterator E) {
      |                                                          ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In destructor ‘llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::~BumpPtrAllocatorImpl()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:98:27: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
   98 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                           ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:98:42: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
   98 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                                          ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>& llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::operator=(llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>&&)’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:103:27: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  103 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                           ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:103:42: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
  103 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                                          ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::Reset()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:128:15: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘empty’ [-Wtemplate-body]
  128 |     if (Slabs.empty())
      |               ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:133:28: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘front’ [-Wtemplate-body]
  133 |     CurPtr = (char *)Slabs.front();
      |                            ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:137:37: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  137 |     DeallocateSlabs(std::next(Slabs.begin()), Slabs.end());
      |                                     ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:137:53: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
  137 |     DeallocateSlabs(std::next(Slabs.begin()), Slabs.end());
      |                                                     ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:138:11: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘erase’ [-Wtemplate-body]
  138 |     Slabs.erase(std::next(Slabs.begin()), Slabs.end());
      |           ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:138:33: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  138 |     Slabs.erase(std::next(Slabs.begin()), Slabs.end());
      |                                 ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:138:49: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
  138 |     Slabs.erase(std::next(Slabs.begin()), Slabs.end());
      |                                                 ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘size_t llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::GetNumSlabs() const’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:225:45: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  225 |   size_t GetNumSlabs() const { return Slabs.size() + CustomSizedSlabs.size(); }
      |                                             ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:225:71: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘size’ [-Wtemplate-body]
  225 |   size_t GetNumSlabs() const { return Slabs.size() + CustomSizedSlabs.size(); }
      |                                                                       ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘std::optional<long int> llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::identifyObject(const void*)’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:235:36: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  235 |     for (size_t Idx = 0, E = Slabs.size(); Idx < E; Idx++) {
      |                                    ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:236:54: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<void*, 4>’ and ‘size_t’ {aka ‘long unsigned int’}) [-Wtemplate-body]
  236 |       const char *S = static_cast<const char *>(Slabs[Idx]);
      |                                                      ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:244:47: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘size’ [-Wtemplate-body]
  244 |     for (size_t Idx = 0, E = CustomSizedSlabs.size(); Idx < E; Idx++) {
      |                                               ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:245:65: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ and ‘size_t’ {aka ‘long unsigned int’}) [-Wtemplate-body]
  245 |       const char *S = static_cast<const char *>(CustomSizedSlabs[Idx].first);
      |                                                                 ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:246:37: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ and ‘size_t’ {aka ‘long unsigned int’}) [-Wtemplate-body]
  246 |       size_t Size = CustomSizedSlabs[Idx].second;
      |                                     ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘size_t llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::getTotalMemory() const’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:283:25: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  283 |     for (auto I = Slabs.begin(), E = Slabs.end(); I != E; ++I)
      |                         ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:283:56: error: ‘E’ was not declared in this scope [-Wtemplate-body]
  283 |     for (auto I = Slabs.begin(), E = Slabs.end(); I != E; ++I)
      |                                                        ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:284:58: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  284 |       TotalMemory += computeSlabSize(std::distance(Slabs.begin(), I));
      |                                                          ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: error: no matching function for call to ‘begin(const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note: there are 6 candidates
In file included from /usr/include/c++/15.2.1/bits/range_access.h:38,
                 from /usr/include/c++/15.2.1/string:55,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/TableGenBackends.h:18,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp:13:
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ have incompatible cv-qualifiers
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: error: no matching function for call to ‘end(const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ have incompatible cv-qualifiers
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::PrintStats() const’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:297:46: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  297 |     detail::printBumpPtrAllocatorStats(Slabs.size(), BytesAllocated,
      |                                              ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::StartNewSlab()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:337:54: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  337 |     size_t AllocatedSlabSize = computeSlabSize(Slabs.size());
      |                                                      ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::DeallocateCustomSizedSlabs()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: error: no matching function for call to ‘begin(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: error: no matching function for call to ‘end(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::SpecificBumpPtrAllocator<T>::DestroyAll()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:410:35: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  410 |     for (auto I = Allocator.Slabs.begin(), E = Allocator.Slabs.end(); I != E;
      |                                   ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:410:76: error: ‘E’ was not declared in this scope [-Wtemplate-body]
  410 |     for (auto I = Allocator.Slabs.begin(), E = Allocator.Slabs.end(); I != E;
      |                                                                            ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:413:41: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  413 |           std::distance(Allocator.Slabs.begin(), I));
      |                                         ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:415:41: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘back’ [-Wtemplate-body]
  415 |       char *End = *I == Allocator.Slabs.back() ? Allocator.CurPtr
      |                                         ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: error: no matching function for call to ‘begin(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: error: no matching function for call to ‘end(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<unsigned int>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<unsigned int, 32>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:322:29:   required from here
  322 |   SmallVector<unsigned, 32> Bits;
      |                             ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<unsigned int, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<unsigned int, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<unsigned int>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<unsigned int, 32>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:322:29:   required from here
  322 |   SmallVector<unsigned, 32> Bits;
      |                             ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h: In member function ‘unsigned int llvm::FoldingSetNodeID::ComputeHash() const’:
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:372:37: error: ‘const class llvm::SmallVector<unsigned int, 32>’ has no member named ‘data’
  372 |     return FoldingSetNodeIDRef(Bits.data(), Bits.size()).ComputeHash();
      |                                     ^~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:372:50: error: ‘const class llvm::SmallVector<unsigned int, 32>’ has no member named ‘size’
  372 |     return FoldingSetNodeIDRef(Bits.data(), Bits.size()).ComputeHash();
      |                                                  ^~~~
In file included from /usr/lib/llvm18/include/llvm/TableGen/Record.h:23:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h: In function ‘void llvm::toHex(ArrayRef<unsigned char>, bool, SmallVectorImpl<char>&)’:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:186:10: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘resize_for_overwrite’
  186 |   Output.resize_for_overwrite(Length * 2);
      |          ^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:190:11: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVectorImpl<char>’ and ‘size_t’ {aka ‘long unsigned int’})
  190 |     Output[i * 2    ] = hexdigit(c >> 4, LowerCase);
      |           ^
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:191:11: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVectorImpl<char>’ and ‘size_t’ {aka ‘long unsigned int’})
  191 |     Output[i * 2 + 1] = hexdigit(c & 15, LowerCase);
      |           ^
In file included from /usr/lib/llvm18/include/llvm/TableGen/Record.h:30:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h: In member function ‘llvm::raw_ostream& llvm::raw_ostream::operator<<(const llvm::SmallVectorImpl<char>&)’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:257:22: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  257 |     return write(Str.data(), Str.size());
      |                      ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:257:34: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  257 |     return write(Str.data(), Str.size());
      |                                  ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h: In member function ‘llvm::StringRef llvm::raw_svector_ostream::str() const’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:699:47: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  699 |   StringRef str() const { return StringRef(OS.data(), OS.size()); }
      |                                               ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:699:58: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  699 |   StringRef str() const { return StringRef(OS.data(), OS.size()); }
      |                                                          ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h: In member function ‘virtual void llvm::raw_svector_ostream::reserveExtraSpace(uint64_t)’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:702:8: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘reserve’
  702 |     OS.reserve(tell() + ExtraSize);
      |        ^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::Init*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1114:53:   required from here
 1114 |   using const_case_iterator = SmallVectorImpl<Init*>::const_iterator;
      |                                                     ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::Init*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::Init*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::Init*>’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1114:53:   required from here
 1114 |   using const_case_iterator = SmallVectorImpl<Init*>::const_iterator;
      |                                                     ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: At global scope:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1117:10: error: ‘const_case_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1117 |   inline const_case_iterator  arg_begin() const { return getConds().begin(); }
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1118:10: error: ‘const_case_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1118 |   inline const_case_iterator  arg_end  () const { return getConds().end(); }
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1123:10: error: ‘const_val_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1123 |   inline const_val_iterator name_begin() const { return getVals().begin();}
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1124:10: error: ‘const_val_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1124 |   inline const_val_iterator name_end  () const { return getVals().end(); }
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::StringInit*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1518:59:   required from here
 1518 |   using const_name_iterator = SmallVectorImpl<StringInit*>::const_iterator;
      |                                                           ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::StringInit*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::StringInit*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::StringInit*>’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1518:59:   required from here
 1518 |   using const_name_iterator = SmallVectorImpl<StringInit*>::const_iterator;
      |                                                           ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1520:10: error: ‘const_arg_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1520 |   inline const_arg_iterator  arg_begin() const { return getArgs().begin(); }
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1521:10: error: ‘const_arg_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1521 |   inline const_arg_iterator  arg_end  () const { return getArgs().end(); }
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1526:10: error: ‘const_name_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1526 |   inline const_name_iterator name_begin() const { return getArgNames().begin();}
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1527:10: error: ‘const_name_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1527 |   inline const_name_iterator name_end  () const { return getArgNames().end(); }
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::SMRange>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMRange, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1184:37:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::PreferredInlineBytes’
 1184 |       kPreferredSmallVectorSizeof - sizeof(SmallVector<T, 0>);
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1185:48:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::NumElementsThatFit’
 1185 |   static constexpr size_t NumElementsThatFit = PreferredInlineBytes / sizeof(T);
      |                                                ^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1187:7:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::value’
 1187 |       NumElementsThatFit == 0 ? 1 : NumElementsThatFit;
      |       ^~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1207:71:   required from here
 1207 |           unsigned N = CalculateSmallVectorDefaultInlinedElements<T>::value>
      |                                                                       ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::SMRange, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::SMRange, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::SMRange>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMRange, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1184:37:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::PreferredInlineBytes’
 1184 |       kPreferredSmallVectorSizeof - sizeof(SmallVector<T, 0>);
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1185:48:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::NumElementsThatFit’
 1185 |   static constexpr size_t NumElementsThatFit = PreferredInlineBytes / sizeof(T);
      |                                                ^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1187:7:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::value’
 1187 |       NumElementsThatFit == 0 ? 1 : NumElementsThatFit;
      |       ^~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1207:71:   required from here
 1207 |           unsigned N = CalculateSmallVectorDefaultInlinedElements<T>::value>
      |                                                                       ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMRange> llvm::RecordVal::getReferenceLocs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1613:55: error: could not convert ‘((const llvm::RecordVal*)this)->llvm::RecordVal::ReferenceLocs’ from ‘const llvm::SmallVector<llvm::SMRange>’ to ‘llvm::ArrayRef<llvm::SMRange>’
 1613 |   ArrayRef<SMRange> getReferenceLocs() const { return ReferenceLocs; }
      |                                                       ^~~~~~~~~~~~~
      |                                                       |
      |                                                       const llvm::SmallVector<llvm::SMRange>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::SMLoc>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMLoc, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1660:25:   required from here
 1660 |   SmallVector<SMLoc, 4> Locs;
      |                         ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::SMLoc, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::SMLoc, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::SMLoc>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMLoc, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1660:25:   required from here
 1660 |   SmallVector<SMLoc, 4> Locs;
      |                         ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::RecordVal>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::RecordVal, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1664:29:   required from here
 1664 |   SmallVector<RecordVal, 0> Values;
      |                             ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:342:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::RecordVal, void>’
  342 | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::RecordVal, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::RecordVal>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::RecordVal, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1664:29:   required from here
 1664 |   SmallVector<RecordVal, 0> Values;
      |                             ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::Record::AssertionInfo>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::AssertionInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1665:33:   required from here
 1665 |   SmallVector<AssertionInfo, 0> Assertions;
      |                                 ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::Record::AssertionInfo, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::Record::AssertionInfo, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::Record::AssertionInfo>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::AssertionInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1665:33:   required from here
 1665 |   SmallVector<AssertionInfo, 0> Assertions;
      |                                 ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::Record::DumpInfo>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::DumpInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1666:28:   required from here
 1666 |   SmallVector<DumpInfo, 0> Dumps;
      |                            ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::Record::DumpInfo, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::Record::DumpInfo, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::Record::DumpInfo>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::DumpInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1666:28:   required from here
 1666 |   SmallVector<DumpInfo, 0> Dumps;
      |                            ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1670:48:   required from here
 1670 |   SmallVector<std::pair<Record *, SMRange>, 0> SuperClasses;
      |                                                ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<std::pair<llvm::Record*, llvm::SMRange>, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<std::pair<llvm::Record*, llvm::SMRange>, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1670:48:   required from here
 1670 |   SmallVector<std::pair<Record *, SMRange>, 0> SuperClasses;
      |                                                ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMLoc> llvm::Record::getLoc() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1723:43: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Locs’ from ‘const llvm::SmallVector<llvm::SMLoc, 4>’ to ‘llvm::ArrayRef<llvm::SMLoc>’
 1723 |   ArrayRef<SMLoc> getLoc() const { return Locs; }
      |                                           ^~~~
      |                                           |
      |                                           const llvm::SmallVector<llvm::SMLoc, 4>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMLoc> llvm::Record::getForwardDeclarationLocs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1727:12: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::ForwardDeclarationLocs’ from ‘const llvm::SmallVector<llvm::SMLoc, 0>’ to ‘llvm::ArrayRef<llvm::SMLoc>’
 1727 |     return ForwardDeclarationLocs;
      |            ^~~~~~~~~~~~~~~~~~~~~~
      |            |
      |            const llvm::SmallVector<llvm::SMLoc, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMRange> llvm::Record::getReferenceLocs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1734:55: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::ReferenceLocs’ from ‘const llvm::SmallVector<llvm::SMRange, 0>’ to ‘llvm::ArrayRef<llvm::SMRange>’
 1734 |   ArrayRef<SMRange> getReferenceLocs() const { return ReferenceLocs; }
      |                                                       ^~~~~~~~~~~~~
      |                                                       |
      |                                                       const llvm::SmallVector<llvm::SMRange, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::Init*> llvm::Record::getTemplateArgs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1752:12: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::TemplateArgs’ from ‘const llvm::SmallVector<llvm::Init*, 0>’ to ‘llvm::ArrayRef<llvm::Init*>’
 1752 |     return TemplateArgs;
      |            ^~~~~~~~~~~~
      |            |
      |            const llvm::SmallVector<llvm::Init*, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::RecordVal> llvm::Record::getValues() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1755:50: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Values’ from ‘const llvm::SmallVector<llvm::RecordVal, 0>’ to ‘llvm::ArrayRef<llvm::RecordVal>’
 1755 |   ArrayRef<RecordVal> getValues() const { return Values; }
      |                                                  ^~~~~~
      |                                                  |
      |                                                  const llvm::SmallVector<llvm::RecordVal, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::Record::AssertionInfo> llvm::Record::getAssertions() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1757:58: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Assertions’ from ‘const llvm::SmallVector<llvm::Record::AssertionInfo, 0>’ to ‘llvm::ArrayRef<llvm::Record::AssertionInfo>’
 1757 |   ArrayRef<AssertionInfo> getAssertions() const { return Assertions; }
      |                                                          ^~~~~~~~~~
      |                                                          |
      |                                                          const llvm::SmallVector<llvm::Record::AssertionInfo, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::Record::DumpInfo> llvm::Record::getDumps() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1758:48: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Dumps’ from ‘const llvm::SmallVector<llvm::Record::DumpInfo, 0>’ to ‘llvm::ArrayRef<llvm::Record::DumpInfo>’
 1758 |   ArrayRef<DumpInfo> getDumps() const { return Dumps; }
      |                                                ^~~~~
      |                                                |
      |                                                const llvm::SmallVector<llvm::Record::DumpInfo, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<std::pair<llvm::Record*, llvm::SMRange> > llvm::Record::getSuperClasses() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1761:12: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::SuperClasses’ from ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ to ‘llvm::ArrayRef<std::pair<llvm::Record*, llvm::SMRange> >’
 1761 |     return SuperClasses;
      |            ^~~~~~~~~~~~
      |            |
      |            const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘const llvm::RecordVal* llvm::Record::getValue(const llvm::Init*) const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: error: ‘begin’ was not declared in this scope
 1775 |     for (const RecordVal &Val : Values)
      |                                 ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: note: suggested alternatives:
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note:   ‘std::begin’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note:   ‘std::begin’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: error: ‘end’ was not declared in this scope
 1775 |     for (const RecordVal &Val : Values)
      |                                 ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: note: suggested alternatives:
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note:   ‘std::end’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note:   ‘std::end’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘void llvm::Record::removeValue(llvm::Init*)’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1803:37: error: ‘class llvm::SmallVector<llvm::RecordVal, 0>’ has no member named ‘size’
 1803 |     for (unsigned i = 0, e = Values.size(); i != e; ++i)
      |                                     ^~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1804:17: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<llvm::RecordVal, 0>’ and ‘unsigned int’)
 1804 |       if (Values[i].getNameInit() == Name) {
      |                 ^
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1805:16: error: ‘class llvm::SmallVector<llvm::RecordVal, 0>’ has no member named ‘erase’
 1805 |         Values.erase(Values.begin()+i);
      |                ^~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1805:29: error: ‘class llvm::SmallVector<llvm::RecordVal, 0>’ has no member named ‘begin’
 1805 |         Values.erase(Values.begin()+i);
      |                             ^~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘bool llvm::Record::isSubClassOf(const llvm::Record*) const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: error: no matching function for call to ‘begin(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: error: no matching function for call to ‘end(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘bool llvm::Record::isSubClassOf(llvm::StringRef) const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: error: no matching function for call to ‘begin(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: error: no matching function for call to ‘end(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2125:49:   required from here
 2125 |     SmallVector<std::pair< bool, StringRef>, 4> Parts;
      |                                                 ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<std::pair<bool, llvm::StringRef>, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<std::pair<bool, llvm::StringRef>, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2125:49:   required from here
 2125 |     SmallVector<std::pair< bool, StringRef>, 4> Parts;
      |                                                 ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘size_t llvm::LessRecordRegister::RecordParts::size()’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2148:34: error: ‘class llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’ has no member named ‘size’
 2148 |     size_t size() { return Parts.size(); }
      |                                  ^~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘std::pair<bool, llvm::StringRef> llvm::LessRecordRegister::RecordParts::getPart(size_t)’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2152:19: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’ and ‘size_t’ {aka ‘long unsigned int’})
 2152 |       return Parts[i];
      |                   ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::Option*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::Option*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:233:28:   required from here
  233 |   SmallVector<Option *, 4> PositionalOpts;
      |                            ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::Option*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::Option*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::Option*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::Option*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:233:28:   required from here
  233 |   SmallVector<Option *, 4> PositionalOpts;
      |                            ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::SubCommand*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::SubCommand*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:247:32:   required from here
  247 |   SmallVector<SubCommand *, 4> Subs;
      |                                ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::SubCommand*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::SubCommand*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::SubCommand*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::SubCommand*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:247:32:   required from here
  247 |   SmallVector<SubCommand *, 4> Subs;
      |                                ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
In file included from /usr/lib/llvm18/include/llvm/TableGen/TableGenBackend.h:17,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp:17:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h: In member function ‘llvm::ArrayRef<llvm::cl::SubCommand*> llvm::cl::SubCommandGroup::getSubCommands() const’:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:252:58: error: could not convert ‘((const llvm::cl::SubCommandGroup*)this)->llvm::cl::SubCommandGroup::Subs’ from ‘const llvm::SmallVector<llvm::cl::SubCommand*, 4>’ to ‘llvm::ArrayRef<llvm::cl::SubCommand*>’
  252 |   ArrayRef<SubCommand *> getSubCommands() const { return Subs; }
      |                                                          ^~~~
      |                                                          |
      |                                                          const llvm::SmallVector<llvm::cl::SubCommand*, 4>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::OptionCategory*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionCategory*, 1>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:293:7:   required from here
  293 |       Categories;                    // The Categories this option belongs to
      |       ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionCategory*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionCategory*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::OptionCategory*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionCategory*, 1>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:293:7:   required from here
  293 |       Categories;                    // The Categories this option belongs to
      |       ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionEnumValue, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:703:35:   required from here
  703 |   SmallVector<OptionEnumValue, 4> Values;
      |                                   ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionEnumValue, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionEnumValue, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionEnumValue, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:703:35:   required from here
  703 |   SmallVector<OptionEnumValue, 4> Values;
      |                                   ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h: In member function ‘void llvm::cl::ValuesClass::apply(Opt&) const’:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:710:30: error: there are no arguments to ‘begin’ that depend on a template parameter, so a declaration of ‘begin’ must be available [-Wtemplate-body]
  710 |     for (const auto &Value : Values)
      |                              ^~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:710:30: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:710:30: error: there are no arguments to ‘end’ that depend on a template parameter, so a declaration of ‘end’ must be available [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::StringRef>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:794:20:   required from here
  794 |         OptionNames.push_back(getOption(i));
      |                    ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::StringRef, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::StringRef, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::StringRef>’:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:794:20:   required from here
  794 |         OptionNames.push_back(getOption(i));
      |                    ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, 8>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:839:30:   required from ‘class llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
  839 |   SmallVector<OptionInfo, 8> Values;
      |                              ^~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:1431:15:   required from ‘class llvm::cl::opt<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
 1431 |   ParserClass Parser;
      |               ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/TableGenBackend.h:38:13:   required from here
   38 |       Action->setInitialValue(CB);
      |             ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:342:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, void>’
  342 | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, 8>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:839:30:   required from ‘class llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
  839 |   SmallVector<OptionInfo, 8> Values;
      |                              ^~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:1431:15:   required from ‘class llvm::cl::opt<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
 1431 |   ParserClass Parser;
      |               ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/TableGenBackend.h:38:13:   required from here
   38 |       Action->setInitialValue(CB);
      |             ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<const llvm::Record*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<const llvm::Record*, 2>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp:62:40:   required from here
   62 |   llvm::SmallVector<const Record *, 2> TypePath;
      |                                        ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<const llvm::Record*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<const llvm::Record*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<const llvm::Record*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<const llvm::Record*, 2>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp:62:40:   required from here
   62 |   llvm::SmallVector<const Record *, 2> TypePath;
      |                                        ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<const llvm::Record*>::SuperClass = class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<const llvm::Record*>::SuperClass = class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<const llvm::Record*>::SuperClass = class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<const llvm::Record*>::SuperClass = class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<const llvm::Record*>::SuperClass = class llvm::SmallVectorTemplateBase<const llvm::Record*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp: In lambda function:
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp:68:8: error: no match for call to ‘(std::function<void(llvm::ArrayRef<const llvm::Record*>, llvm::Twine)>) (llvm::SmallVector<const llvm::Record*, 2>&, const llvm::Twine&)’
   68 |       F(TypePath, ID);
      |       ~^~~~~~~~~~~~~~
In file included from /usr/include/c++/15.2.1/functional:61,
                 from /usr/lib/llvm18/include/llvm/ADT/SmallVector.h:24:
/usr/include/c++/15.2.1/bits/std_function.h:336:11: note: there is 1 candidate
  336 |     class function<_Res(_ArgTypes...)>
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/std_function.h:589:7: note: candidate 1: ‘_Res std::function<_Res(_ArgTypes ...)>::operator()(_ArgTypes ...) const [with _Res = void; _ArgTypes = {llvm::ArrayRef<const llvm::Record*>, llvm::Twine}]’
  589 |       operator()(_ArgTypes... __args) const
      |       ^~~~~~~~
/usr/include/c++/15.2.1/bits/std_function.h:589:27: note: no known conversion for argument 1 from ‘llvm::SmallVector<const llvm::Record*, 2>’ to ‘llvm::ArrayRef<const llvm::Record*>’
  589 |       operator()(_ArgTypes... __args) const
      |                  ~~~~~~~~~^~~~~~~~~~
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp: In lambda function:
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp:295:24: error: cannot convert ‘llvm::SmallVector<const llvm::Record*, 2>’ to ‘llvm::ArrayRef<const llvm::Record*>’
  295 |         PrintTypes(OS, TS);
      |                        ^~
      |                        |
      |                        llvm::SmallVector<const llvm::Record*, 2>
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOpcodesEmitter.cpp:57:61: note: initializing argument 2 of ‘void {anonymous}::ClangOpcodesEmitter::PrintTypes(llvm::raw_ostream&, llvm::ArrayRef<const llvm::Record*>)’
   57 |   void PrintTypes(raw_ostream &OS, ArrayRef<const Record *> Types);
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 16]’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:29:3:   required from here
   29 |   SmallString() = default;
      |   ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 16>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 16>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
In file included from /usr/lib/llvm18/include/llvm/ADT/StringExtras.h:19:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h: In instantiation of ‘llvm::SmallString<InternalLen>::operator std::string() const [with unsigned int InternalLen = 16; std::string = std::__cxx11::basic_string<char>]’:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:198:22:   required from here
  198 |   return std::string(Output);
      |                      ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:269:30: error: ‘const class llvm::SmallString<16>’ has no member named ‘data’
  269 |     return std::string(this->data(), this->size());
      |                        ~~~~~~^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 40]’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:29:3:   required from here
   29 |   SmallString() = default;
      |   ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 40>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 40>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h: In instantiation of ‘llvm::SmallString<InternalLen>::operator std::string() const [with unsigned int InternalLen = 40; std::string = std::__cxx11::basic_string<char>]’:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:335:22:   required from here
  335 |   return std::string(S);
      |                      ^
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:269:30: error: ‘const class llvm::SmallString<40>’ has no member named ‘data’
  269 |     return std::string(this->data(), this->size());
      |                        ~~~~~~^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:728:71:   required from here
  728 |   buffer_ostream(raw_ostream &OS) : raw_svector_ostream(Buffer), OS(OS) {}
      |                                                                       ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 0>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 0>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::SMLoc; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1690:55:   required from here
 1690 |         ID(getNewUID(N->getRecordKeeper())), Kind(Kind) {
      |                                                       ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::SMLoc, 0>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::SMLoc, 0>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::Init*; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1690:55:   required from here
 1690 |         ID(getNewUID(N->getRecordKeeper())), Kind(Kind) {
      |                                                       ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::SmallVector(const llvm::SmallVector<T, N>&) [with T = llvm::Init*; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1702:37:   required from here
 1702 |       : Name(O.Name), Locs(O.Locs), TemplateArgs(O.TemplateArgs),
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1250:14: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘empty’
 1250 |     if (!RHS.empty())
      |          ~~~~^~~~~
In file included from /usr/lib/llvm18/include/llvm/ADT/ArrayRef.h:14,
                 from /usr/lib/llvm18/include/llvm/Support/MemoryBuffer.h:17:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h: In instantiation of ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31: error: no matching function for call to ‘adl_begin(const llvm::SmallVector<llvm::Init*, 0>&)’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31: note: there is 1 candidate
In file included from /usr/lib/llvm18/include/llvm/ADT/STLExtras.h:20:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:62:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&)’
   62 | constexpr auto adl_begin(RangeT &&range)
      |                ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:62:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39: error: no matching function for call to ‘begin_impl(const llvm::SmallVector<llvm::Init*, 0>&)’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:27:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&)’
   27 | constexpr auto begin_impl(RangeT &&range)
      |                ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:27:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: error: no matching function for call to ‘begin(const llvm::SmallVector<llvm::Init*, 0>&)’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note: there are 6 candidates
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 1: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   ‘const llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘const std::valarray<_Tp>’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 2: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<llvm::Init*, 0>’ have incompatible cv-qualifiers
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 3: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<llvm::Init*, 0>’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 4: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22:   required by substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 5: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22:   required by substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 6: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   ‘llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘std::initializer_list<_Tp>’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h: In instantiation of ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47: error: no matching function for call to ‘adl_end(const llvm::SmallVector<llvm::Init*, 0>&)’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&)’
   70 | constexpr auto adl_end(RangeT &&range)
      |                ^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: error: no matching function for call to ‘end_impl(const llvm::SmallVector<llvm::Init*, 0>&)’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&)’
   35 | constexpr auto end_impl(RangeT &&range)
      |                ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: error: no matching function for call to ‘end(const llvm::SmallVector<llvm::Init*, 0>&)’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note: there are 6 candidates
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 1: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘const llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘const std::valarray<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 2: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<llvm::Init*, 0>’ have incompatible cv-qualifiers
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 3: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<llvm::Init*, 0>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 4: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 5: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 6: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘std::initializer_list<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h: In instantiation of ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19: error: no matching function for call to ‘adl_end(const llvm::SmallVector<llvm::Init*, 0>&)’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&)’
   70 | constexpr auto adl_end(RangeT &&range)
      |                ^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: error: no matching function for call to ‘end_impl(const llvm::SmallVector<llvm::Init*, 0>&)’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&)’
   35 | constexpr auto end_impl(RangeT &&range)
      |                ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: error: no matching function for call to ‘end(const llvm::SmallVector<llvm::Init*, 0>&)’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note: there are 6 candidates
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 1: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘const llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘const std::valarray<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 2: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<llvm::Init*, 0>’ have incompatible cv-qualifiers
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 3: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<llvm::Init*, 0>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 4: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 5: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 6: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘std::initializer_list<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::Init*; unsigned int N = 4]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2273:51:   required from here
 2273 |   explicit RecordResolver(Record &R) : Resolver(&R) {}
      |                                                   ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::Init*, 4>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::Init*, 4>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 32]’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:29:3:   required from ‘bool llvm::detail::to_float(const llvm::Twine&, N&, N (*)(const char*, char**)) [with N = float]’
   29 |   SmallString() = default;
      |   ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:298:26:   required from here
  298 |   return detail::to_float(T, Num, strtof);
      |          ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 32>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 32>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
[195/2074] Generating ../../lib/libscanbuild/compilation.py
[196/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp.o
FAILED: [code=1] utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp.o 
/usr/bin/c++ -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/startdir/src/clang-18.1.8.src/build/utils/TableGen -I/startdir/src/clang-18.1.8.src/utils/TableGen -I/startdir/src/clang-18.1.8.src/include -I/startdir/src/clang-18.1.8.src/build/include -I/usr/lib/llvm18/include -march=x86-64-v3 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -Wp,-D_GLIBCXX_ASSERTIONS -g1 -ffile-prefix-map=/startdir/src=/usr/src/debug/clang18 -flto=auto -falign-functions=32 -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 -Wimplicit-fallthrough -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 -fno-common -Woverloaded-virtual -fno-strict-aliasing -pedantic -Wno-long-long -O3 -DNDEBUG -std=c++17  -fno-exceptions -funwind-tables -MD -MT utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp.o -MF utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp.o.d -o utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp.o -c /startdir/src/clang-18.1.8.src/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp
In file included from /usr/lib/llvm18/include/llvm/ADT/SmallString.h:17,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp:15:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:119:62: error: ‘uint64_t’ was not declared in this scope
  119 |     std::conditional_t<sizeof(T) < 4 && sizeof(void *) >= 8, uint64_t,
      |                                                              ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:29:1: note: ‘uint64_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
   28 | #include <memory>
  +++ |+#include <cstdint>
   29 | #include <new>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:24: error: ‘uint32_t’ was not declared in this scope
  120 |                        uint32_t>;
      |                        ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:24: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:32: error: template argument 2 is invalid
  120 |                        uint32_t>;
      |                                ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:32: error: template argument 3 is invalid
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:27: error: ‘SmallVectorSizeType’ was not declared in this scope; did you mean ‘SmallVectorBase’? [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |                           ^~~~~~~~~~~~~~~~~~~
      |                           SmallVectorBase
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:47: error: template argument 1 is invalid [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |                                               ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:48: error: expected ‘)’ before ‘>’ token [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |          ~                                     ^~
      |                                                )
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:48: error: expected unqualified-id before ‘>’ token [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |                                                ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:134:30: error: ‘SmallVectorSizeType’ was not declared in this scope; did you mean ‘SmallVectorBase’? [-Wtemplate-body]
  134 |     : public SmallVectorBase<SmallVectorSizeType<T>> {
      |                              ^~~~~~~~~~~~~~~~~~~
      |                              SmallVectorBase
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:134:50: error: template argument 1 is invalid [-Wtemplate-body]
  134 |     : public SmallVectorBase<SmallVectorSizeType<T>> {
      |                                                  ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:134:51: error: expected ‘{’ before ‘>’ token
  134 |     : public SmallVectorBase<SmallVectorSizeType<T>> {
      |                                                   ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In member function ‘T* llvm::SmallVectorTemplateBase<T, <anonymous> >::mallocForGrow(size_t, size_t&)’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:457:23: error: ‘SmallVectorSizeType’ was not declared in this scope; did you mean ‘SmallVectorBase’? [-Wtemplate-body]
  457 |       SmallVectorBase<SmallVectorSizeType<T>>::mallocForGrow(
      |                       ^~~~~~~~~~~~~~~~~~~
      |                       SmallVectorBase
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:457:43: error: template argument 1 is invalid [-Wtemplate-body]
  457 |       SmallVectorBase<SmallVectorSizeType<T>>::mallocForGrow(
      |                                           ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:457:48: error: ‘::mallocForGrow’ has not been declared [-Wtemplate-body]
  457 |       SmallVectorBase<SmallVectorSizeType<T>>::mallocForGrow(
      |                                                ^~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: At global scope:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1330:45: error: ‘uint32_t’ was not declared in this scope
 1330 | extern template class llvm::SmallVectorBase<uint32_t>;
      |                                             ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1330:45: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1330:53: error: template argument 1 is invalid
 1330 | extern template class llvm::SmallVectorBase<uint32_t>;
      |                                                     ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<char, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<char>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:52:26:   required from here
   52 |     SmallVectorImpl<char>::assign(RHS.begin(), RHS.end());
      |                          ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<char, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<char, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<char>’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:52:26:   required from here
   52 |     SmallVectorImpl<char>::assign(RHS.begin(), RHS.end());
      |                          ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
In file included from /usr/lib/llvm18/include/llvm/Support/MemoryBuffer.h:19,
                 from /usr/lib/llvm18/include/llvm/Support/SourceMgr.h:19,
                 from /usr/lib/llvm18/include/llvm/TableGen/Error.h:17,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp:17:
/usr/lib/llvm18/include/llvm/ADT/Twine.h: In constructor ‘llvm::Twine::Twine(const llvm::SmallVectorImpl<char>&)’:
/usr/lib/llvm18/include/llvm/ADT/Twine.h:321:34: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  321 |       LHS.ptrAndLength.ptr = Str.data();
      |                                  ^~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h:322:37: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  322 |       LHS.ptrAndLength.length = Str.size();
      |                                     ^~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h: In member function ‘llvm::StringRef llvm::Twine::toStringRef(llvm::SmallVectorImpl<char>&) const’:
/usr/lib/llvm18/include/llvm/ADT/Twine.h:496:28: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  496 |       return StringRef(Out.data(), Out.size());
      |                            ^~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h:496:40: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  496 |       return StringRef(Out.data(), Out.size());
      |                                        ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::SMFixIt>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMFixIt, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h:290:27:   required from here
  290 |   SmallVector<SMFixIt, 4> FixIts;
      |                           ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:342:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::SMFixIt, void>’
  342 | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::SMFixIt, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::SMFixIt>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMFixIt, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h:290:27:   required from here
  290 |   SmallVector<SMFixIt, 4> FixIts;
      |                           ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h: In member function ‘llvm::ArrayRef<llvm::SMFixIt> llvm::SMDiagnostic::getFixIts() const’:
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h:317:48: error: could not convert ‘((const llvm::SMDiagnostic*)this)->llvm::SMDiagnostic::FixIts’ from ‘const llvm::SmallVector<llvm::SMFixIt, 4>’ to ‘llvm::ArrayRef<llvm::SMFixIt>’
  317 |   ArrayRef<SMFixIt> getFixIts() const { return FixIts; }
      |                                                ^~~~~~
      |                                                |
      |                                                const llvm::SmallVector<llvm::SMFixIt, 4>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<void*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<void*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<void*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:311:26:   required from here
  311 |   SmallVector<void *, 4> Slabs;
      |                          ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<void*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<void*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<void*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<void*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:311:26:   required from here
  311 |   SmallVector<void *, 4> Slabs;
      |                          ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:314:45:   required from here
  314 |   SmallVector<std::pair<void *, size_t>, 0> CustomSizedSlabs;
      |                                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<std::pair<void*, long unsigned int>, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<std::pair<void*, long unsigned int>, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:314:45:   required from here
  314 |   SmallVector<std::pair<void *, size_t>, 0> CustomSizedSlabs;
      |                                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
In file included from /usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:23,
                 from /usr/lib/llvm18/include/llvm/TableGen/Record.h:20,
                 from /usr/lib/llvm18/include/llvm/TableGen/Error.h:18:
/usr/lib/llvm18/include/llvm/Support/Allocator.h: At global scope:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:351:59: error: expected ‘)’ before ‘,’ token [-Wtemplate-body]
  351 |   void DeallocateSlabs(SmallVectorImpl<void *>::iterator I,
      |                       ~                                   ^
      |                                                           )
/usr/lib/llvm18/include/llvm/Support/Allocator.h:352:24: error: invalid use of qualified-name ‘llvm::SmallVectorImpl<void*>::iterator’ [-Wtemplate-body]
  352 |                        SmallVectorImpl<void *>::iterator E) {
      |                        ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:352:49: error: expected ‘;’ at end of member declaration [-Wtemplate-body]
  352 |                        SmallVectorImpl<void *>::iterator E) {
      |                                                 ^~~~~~~~
      |                                                         ;
/usr/lib/llvm18/include/llvm/Support/Allocator.h:352:58: error: ‘E’ does not name a type [-Wtemplate-body]
  352 |                        SmallVectorImpl<void *>::iterator E) {
      |                                                          ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In destructor ‘llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::~BumpPtrAllocatorImpl()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:98:27: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
   98 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                           ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:98:42: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
   98 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                                          ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>& llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::operator=(llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>&&)’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:103:27: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  103 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                           ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:103:42: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
  103 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                                          ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::Reset()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:128:15: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘empty’ [-Wtemplate-body]
  128 |     if (Slabs.empty())
      |               ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:133:28: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘front’ [-Wtemplate-body]
  133 |     CurPtr = (char *)Slabs.front();
      |                            ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:137:37: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  137 |     DeallocateSlabs(std::next(Slabs.begin()), Slabs.end());
      |                                     ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:137:53: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
  137 |     DeallocateSlabs(std::next(Slabs.begin()), Slabs.end());
      |                                                     ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:138:11: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘erase’ [-Wtemplate-body]
  138 |     Slabs.erase(std::next(Slabs.begin()), Slabs.end());
      |           ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:138:33: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  138 |     Slabs.erase(std::next(Slabs.begin()), Slabs.end());
      |                                 ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:138:49: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
  138 |     Slabs.erase(std::next(Slabs.begin()), Slabs.end());
      |                                                 ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘size_t llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::GetNumSlabs() const’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:225:45: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  225 |   size_t GetNumSlabs() const { return Slabs.size() + CustomSizedSlabs.size(); }
      |                                             ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:225:71: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘size’ [-Wtemplate-body]
  225 |   size_t GetNumSlabs() const { return Slabs.size() + CustomSizedSlabs.size(); }
      |                                                                       ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘std::optional<long int> llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::identifyObject(const void*)’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:235:36: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  235 |     for (size_t Idx = 0, E = Slabs.size(); Idx < E; Idx++) {
      |                                    ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:236:54: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<void*, 4>’ and ‘size_t’ {aka ‘long unsigned int’}) [-Wtemplate-body]
  236 |       const char *S = static_cast<const char *>(Slabs[Idx]);
      |                                                      ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:244:47: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘size’ [-Wtemplate-body]
  244 |     for (size_t Idx = 0, E = CustomSizedSlabs.size(); Idx < E; Idx++) {
      |                                               ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:245:65: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ and ‘size_t’ {aka ‘long unsigned int’}) [-Wtemplate-body]
  245 |       const char *S = static_cast<const char *>(CustomSizedSlabs[Idx].first);
      |                                                                 ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:246:37: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ and ‘size_t’ {aka ‘long unsigned int’}) [-Wtemplate-body]
  246 |       size_t Size = CustomSizedSlabs[Idx].second;
      |                                     ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘size_t llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::getTotalMemory() const’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:283:25: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  283 |     for (auto I = Slabs.begin(), E = Slabs.end(); I != E; ++I)
      |                         ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:283:56: error: ‘E’ was not declared in this scope [-Wtemplate-body]
  283 |     for (auto I = Slabs.begin(), E = Slabs.end(); I != E; ++I)
      |                                                        ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:284:58: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  284 |       TotalMemory += computeSlabSize(std::distance(Slabs.begin(), I));
      |                                                          ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: error: no matching function for call to ‘begin(const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note: there are 6 candidates
In file included from /usr/include/c++/15.2.1/bits/range_access.h:38,
                 from /usr/include/c++/15.2.1/string:55,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/TableGenBackends.h:18,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp:14:
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ have incompatible cv-qualifiers
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: error: no matching function for call to ‘end(const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ have incompatible cv-qualifiers
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::PrintStats() const’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:297:46: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  297 |     detail::printBumpPtrAllocatorStats(Slabs.size(), BytesAllocated,
      |                                              ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::StartNewSlab()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:337:54: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  337 |     size_t AllocatedSlabSize = computeSlabSize(Slabs.size());
      |                                                      ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::DeallocateCustomSizedSlabs()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: error: no matching function for call to ‘begin(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: error: no matching function for call to ‘end(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::SpecificBumpPtrAllocator<T>::DestroyAll()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:410:35: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  410 |     for (auto I = Allocator.Slabs.begin(), E = Allocator.Slabs.end(); I != E;
      |                                   ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:410:76: error: ‘E’ was not declared in this scope [-Wtemplate-body]
  410 |     for (auto I = Allocator.Slabs.begin(), E = Allocator.Slabs.end(); I != E;
      |                                                                            ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:413:41: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  413 |           std::distance(Allocator.Slabs.begin(), I));
      |                                         ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:415:41: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘back’ [-Wtemplate-body]
  415 |       char *End = *I == Allocator.Slabs.back() ? Allocator.CurPtr
      |                                         ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: error: no matching function for call to ‘begin(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: error: no matching function for call to ‘end(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<unsigned int>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<unsigned int, 32>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:322:29:   required from here
  322 |   SmallVector<unsigned, 32> Bits;
      |                             ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<unsigned int, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<unsigned int, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<unsigned int>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<unsigned int, 32>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:322:29:   required from here
  322 |   SmallVector<unsigned, 32> Bits;
      |                             ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h: In member function ‘unsigned int llvm::FoldingSetNodeID::ComputeHash() const’:
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:372:37: error: ‘const class llvm::SmallVector<unsigned int, 32>’ has no member named ‘data’
  372 |     return FoldingSetNodeIDRef(Bits.data(), Bits.size()).ComputeHash();
      |                                     ^~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:372:50: error: ‘const class llvm::SmallVector<unsigned int, 32>’ has no member named ‘size’
  372 |     return FoldingSetNodeIDRef(Bits.data(), Bits.size()).ComputeHash();
      |                                                  ^~~~
In file included from /usr/lib/llvm18/include/llvm/TableGen/Record.h:23:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h: In function ‘void llvm::toHex(ArrayRef<unsigned char>, bool, SmallVectorImpl<char>&)’:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:186:10: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘resize_for_overwrite’
  186 |   Output.resize_for_overwrite(Length * 2);
      |          ^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:190:11: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVectorImpl<char>’ and ‘size_t’ {aka ‘long unsigned int’})
  190 |     Output[i * 2    ] = hexdigit(c >> 4, LowerCase);
      |           ^
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:191:11: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVectorImpl<char>’ and ‘size_t’ {aka ‘long unsigned int’})
  191 |     Output[i * 2 + 1] = hexdigit(c & 15, LowerCase);
      |           ^
In file included from /usr/lib/llvm18/include/llvm/TableGen/Record.h:30:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h: In member function ‘llvm::raw_ostream& llvm::raw_ostream::operator<<(const llvm::SmallVectorImpl<char>&)’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:257:22: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  257 |     return write(Str.data(), Str.size());
      |                      ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:257:34: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  257 |     return write(Str.data(), Str.size());
      |                                  ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h: In member function ‘llvm::StringRef llvm::raw_svector_ostream::str() const’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:699:47: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  699 |   StringRef str() const { return StringRef(OS.data(), OS.size()); }
      |                                               ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:699:58: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  699 |   StringRef str() const { return StringRef(OS.data(), OS.size()); }
      |                                                          ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h: In member function ‘virtual void llvm::raw_svector_ostream::reserveExtraSpace(uint64_t)’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:702:8: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘reserve’
  702 |     OS.reserve(tell() + ExtraSize);
      |        ^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::Init*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1114:53:   required from here
 1114 |   using const_case_iterator = SmallVectorImpl<Init*>::const_iterator;
      |                                                     ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::Init*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::Init*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::Init*>’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1114:53:   required from here
 1114 |   using const_case_iterator = SmallVectorImpl<Init*>::const_iterator;
      |                                                     ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: At global scope:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1117:10: error: ‘const_case_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1117 |   inline const_case_iterator  arg_begin() const { return getConds().begin(); }
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1118:10: error: ‘const_case_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1118 |   inline const_case_iterator  arg_end  () const { return getConds().end(); }
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1123:10: error: ‘const_val_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1123 |   inline const_val_iterator name_begin() const { return getVals().begin();}
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1124:10: error: ‘const_val_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1124 |   inline const_val_iterator name_end  () const { return getVals().end(); }
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::StringInit*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1518:59:   required from here
 1518 |   using const_name_iterator = SmallVectorImpl<StringInit*>::const_iterator;
      |                                                           ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::StringInit*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::StringInit*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::StringInit*>’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1518:59:   required from here
 1518 |   using const_name_iterator = SmallVectorImpl<StringInit*>::const_iterator;
      |                                                           ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1520:10: error: ‘const_arg_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1520 |   inline const_arg_iterator  arg_begin() const { return getArgs().begin(); }
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1521:10: error: ‘const_arg_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1521 |   inline const_arg_iterator  arg_end  () const { return getArgs().end(); }
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1526:10: error: ‘const_name_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1526 |   inline const_name_iterator name_begin() const { return getArgNames().begin();}
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1527:10: error: ‘const_name_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1527 |   inline const_name_iterator name_end  () const { return getArgNames().end(); }
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::SMRange>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMRange, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1184:37:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::PreferredInlineBytes’
 1184 |       kPreferredSmallVectorSizeof - sizeof(SmallVector<T, 0>);
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1185:48:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::NumElementsThatFit’
 1185 |   static constexpr size_t NumElementsThatFit = PreferredInlineBytes / sizeof(T);
      |                                                ^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1187:7:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::value’
 1187 |       NumElementsThatFit == 0 ? 1 : NumElementsThatFit;
      |       ^~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1207:71:   required from here
 1207 |           unsigned N = CalculateSmallVectorDefaultInlinedElements<T>::value>
      |                                                                       ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::SMRange, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::SMRange, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::SMRange>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMRange, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1184:37:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::PreferredInlineBytes’
 1184 |       kPreferredSmallVectorSizeof - sizeof(SmallVector<T, 0>);
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1185:48:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::NumElementsThatFit’
 1185 |   static constexpr size_t NumElementsThatFit = PreferredInlineBytes / sizeof(T);
      |                                                ^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1187:7:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::value’
 1187 |       NumElementsThatFit == 0 ? 1 : NumElementsThatFit;
      |       ^~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1207:71:   required from here
 1207 |           unsigned N = CalculateSmallVectorDefaultInlinedElements<T>::value>
      |                                                                       ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMRange> llvm::RecordVal::getReferenceLocs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1613:55: error: could not convert ‘((const llvm::RecordVal*)this)->llvm::RecordVal::ReferenceLocs’ from ‘const llvm::SmallVector<llvm::SMRange>’ to ‘llvm::ArrayRef<llvm::SMRange>’
 1613 |   ArrayRef<SMRange> getReferenceLocs() const { return ReferenceLocs; }
      |                                                       ^~~~~~~~~~~~~
      |                                                       |
      |                                                       const llvm::SmallVector<llvm::SMRange>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::SMLoc>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMLoc, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1660:25:   required from here
 1660 |   SmallVector<SMLoc, 4> Locs;
      |                         ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::SMLoc, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::SMLoc, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::SMLoc>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMLoc, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1660:25:   required from here
 1660 |   SmallVector<SMLoc, 4> Locs;
      |                         ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::RecordVal>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::RecordVal, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1664:29:   required from here
 1664 |   SmallVector<RecordVal, 0> Values;
      |                             ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:342:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::RecordVal, void>’
  342 | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::RecordVal, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::RecordVal>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::RecordVal, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1664:29:   required from here
 1664 |   SmallVector<RecordVal, 0> Values;
      |                             ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::Record::AssertionInfo>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::AssertionInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1665:33:   required from here
 1665 |   SmallVector<AssertionInfo, 0> Assertions;
      |                                 ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::Record::AssertionInfo, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::Record::AssertionInfo, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::Record::AssertionInfo>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::AssertionInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1665:33:   required from here
 1665 |   SmallVector<AssertionInfo, 0> Assertions;
      |                                 ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::Record::DumpInfo>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::DumpInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1666:28:   required from here
 1666 |   SmallVector<DumpInfo, 0> Dumps;
      |                            ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::Record::DumpInfo, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::Record::DumpInfo, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::Record::DumpInfo>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::DumpInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1666:28:   required from here
 1666 |   SmallVector<DumpInfo, 0> Dumps;
      |                            ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1670:48:   required from here
 1670 |   SmallVector<std::pair<Record *, SMRange>, 0> SuperClasses;
      |                                                ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<std::pair<llvm::Record*, llvm::SMRange>, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<std::pair<llvm::Record*, llvm::SMRange>, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1670:48:   required from here
 1670 |   SmallVector<std::pair<Record *, SMRange>, 0> SuperClasses;
      |                                                ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMLoc> llvm::Record::getLoc() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1723:43: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Locs’ from ‘const llvm::SmallVector<llvm::SMLoc, 4>’ to ‘llvm::ArrayRef<llvm::SMLoc>’
 1723 |   ArrayRef<SMLoc> getLoc() const { return Locs; }
      |                                           ^~~~
      |                                           |
      |                                           const llvm::SmallVector<llvm::SMLoc, 4>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMLoc> llvm::Record::getForwardDeclarationLocs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1727:12: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::ForwardDeclarationLocs’ from ‘const llvm::SmallVector<llvm::SMLoc, 0>’ to ‘llvm::ArrayRef<llvm::SMLoc>’
 1727 |     return ForwardDeclarationLocs;
      |            ^~~~~~~~~~~~~~~~~~~~~~
      |            |
      |            const llvm::SmallVector<llvm::SMLoc, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMRange> llvm::Record::getReferenceLocs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1734:55: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::ReferenceLocs’ from ‘const llvm::SmallVector<llvm::SMRange, 0>’ to ‘llvm::ArrayRef<llvm::SMRange>’
 1734 |   ArrayRef<SMRange> getReferenceLocs() const { return ReferenceLocs; }
      |                                                       ^~~~~~~~~~~~~
      |                                                       |
      |                                                       const llvm::SmallVector<llvm::SMRange, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::Init*> llvm::Record::getTemplateArgs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1752:12: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::TemplateArgs’ from ‘const llvm::SmallVector<llvm::Init*, 0>’ to ‘llvm::ArrayRef<llvm::Init*>’
 1752 |     return TemplateArgs;
      |            ^~~~~~~~~~~~
      |            |
      |            const llvm::SmallVector<llvm::Init*, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::RecordVal> llvm::Record::getValues() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1755:50: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Values’ from ‘const llvm::SmallVector<llvm::RecordVal, 0>’ to ‘llvm::ArrayRef<llvm::RecordVal>’
 1755 |   ArrayRef<RecordVal> getValues() const { return Values; }
      |                                                  ^~~~~~
      |                                                  |
      |                                                  const llvm::SmallVector<llvm::RecordVal, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::Record::AssertionInfo> llvm::Record::getAssertions() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1757:58: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Assertions’ from ‘const llvm::SmallVector<llvm::Record::AssertionInfo, 0>’ to ‘llvm::ArrayRef<llvm::Record::AssertionInfo>’
 1757 |   ArrayRef<AssertionInfo> getAssertions() const { return Assertions; }
      |                                                          ^~~~~~~~~~
      |                                                          |
      |                                                          const llvm::SmallVector<llvm::Record::AssertionInfo, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::Record::DumpInfo> llvm::Record::getDumps() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1758:48: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Dumps’ from ‘const llvm::SmallVector<llvm::Record::DumpInfo, 0>’ to ‘llvm::ArrayRef<llvm::Record::DumpInfo>’
 1758 |   ArrayRef<DumpInfo> getDumps() const { return Dumps; }
      |                                                ^~~~~
      |                                                |
      |                                                const llvm::SmallVector<llvm::Record::DumpInfo, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<std::pair<llvm::Record*, llvm::SMRange> > llvm::Record::getSuperClasses() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1761:12: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::SuperClasses’ from ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ to ‘llvm::ArrayRef<std::pair<llvm::Record*, llvm::SMRange> >’
 1761 |     return SuperClasses;
      |            ^~~~~~~~~~~~
      |            |
      |            const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘const llvm::RecordVal* llvm::Record::getValue(const llvm::Init*) const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: error: ‘begin’ was not declared in this scope
 1775 |     for (const RecordVal &Val : Values)
      |                                 ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: note: suggested alternatives:
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note:   ‘std::begin’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note:   ‘std::begin’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: error: ‘end’ was not declared in this scope
 1775 |     for (const RecordVal &Val : Values)
      |                                 ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: note: suggested alternatives:
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note:   ‘std::end’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note:   ‘std::end’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘void llvm::Record::removeValue(llvm::Init*)’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1803:37: error: ‘class llvm::SmallVector<llvm::RecordVal, 0>’ has no member named ‘size’
 1803 |     for (unsigned i = 0, e = Values.size(); i != e; ++i)
      |                                     ^~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1804:17: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<llvm::RecordVal, 0>’ and ‘unsigned int’)
 1804 |       if (Values[i].getNameInit() == Name) {
      |                 ^
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1805:16: error: ‘class llvm::SmallVector<llvm::RecordVal, 0>’ has no member named ‘erase’
 1805 |         Values.erase(Values.begin()+i);
      |                ^~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1805:29: error: ‘class llvm::SmallVector<llvm::RecordVal, 0>’ has no member named ‘begin’
 1805 |         Values.erase(Values.begin()+i);
      |                             ^~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘bool llvm::Record::isSubClassOf(const llvm::Record*) const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: error: no matching function for call to ‘begin(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: error: no matching function for call to ‘end(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘bool llvm::Record::isSubClassOf(llvm::StringRef) const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: error: no matching function for call to ‘begin(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: error: no matching function for call to ‘end(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2125:49:   required from here
 2125 |     SmallVector<std::pair< bool, StringRef>, 4> Parts;
      |                                                 ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<std::pair<bool, llvm::StringRef>, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<std::pair<bool, llvm::StringRef>, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2125:49:   required from here
 2125 |     SmallVector<std::pair< bool, StringRef>, 4> Parts;
      |                                                 ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘size_t llvm::LessRecordRegister::RecordParts::size()’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2148:34: error: ‘class llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’ has no member named ‘size’
 2148 |     size_t size() { return Parts.size(); }
      |                                  ^~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘std::pair<bool, llvm::StringRef> llvm::LessRecordRegister::RecordParts::getPart(size_t)’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2152:19: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’ and ‘size_t’ {aka ‘long unsigned int’})
 2152 |       return Parts[i];
      |                   ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::Option*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::Option*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:233:28:   required from here
  233 |   SmallVector<Option *, 4> PositionalOpts;
      |                            ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::Option*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::Option*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::Option*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::Option*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:233:28:   required from here
  233 |   SmallVector<Option *, 4> PositionalOpts;
      |                            ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::SubCommand*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::SubCommand*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:247:32:   required from here
  247 |   SmallVector<SubCommand *, 4> Subs;
      |                                ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::SubCommand*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::SubCommand*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::SubCommand*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::SubCommand*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:247:32:   required from here
  247 |   SmallVector<SubCommand *, 4> Subs;
      |                                ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
In file included from /usr/lib/llvm18/include/llvm/TableGen/TableGenBackend.h:17,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp:20:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h: In member function ‘llvm::ArrayRef<llvm::cl::SubCommand*> llvm::cl::SubCommandGroup::getSubCommands() const’:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:252:58: error: could not convert ‘((const llvm::cl::SubCommandGroup*)this)->llvm::cl::SubCommandGroup::Subs’ from ‘const llvm::SmallVector<llvm::cl::SubCommand*, 4>’ to ‘llvm::ArrayRef<llvm::cl::SubCommand*>’
  252 |   ArrayRef<SubCommand *> getSubCommands() const { return Subs; }
      |                                                          ^~~~
      |                                                          |
      |                                                          const llvm::SmallVector<llvm::cl::SubCommand*, 4>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::OptionCategory*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionCategory*, 1>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:293:7:   required from here
  293 |       Categories;                    // The Categories this option belongs to
      |       ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionCategory*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionCategory*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::OptionCategory*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionCategory*, 1>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:293:7:   required from here
  293 |       Categories;                    // The Categories this option belongs to
      |       ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionEnumValue, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:703:35:   required from here
  703 |   SmallVector<OptionEnumValue, 4> Values;
      |                                   ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionEnumValue, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionEnumValue, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionEnumValue, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:703:35:   required from here
  703 |   SmallVector<OptionEnumValue, 4> Values;
      |                                   ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h: In member function ‘void llvm::cl::ValuesClass::apply(Opt&) const’:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:710:30: error: there are no arguments to ‘begin’ that depend on a template parameter, so a declaration of ‘begin’ must be available [-Wtemplate-body]
  710 |     for (const auto &Value : Values)
      |                              ^~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:710:30: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:710:30: error: there are no arguments to ‘end’ that depend on a template parameter, so a declaration of ‘end’ must be available [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::StringRef>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:794:20:   required from here
  794 |         OptionNames.push_back(getOption(i));
      |                    ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::StringRef, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::StringRef, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::StringRef>’:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:794:20:   required from here
  794 |         OptionNames.push_back(getOption(i));
      |                    ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, 8>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:839:30:   required from ‘class llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
  839 |   SmallVector<OptionInfo, 8> Values;
      |                              ^~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:1431:15:   required from ‘class llvm::cl::opt<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
 1431 |   ParserClass Parser;
      |               ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/TableGenBackend.h:38:13:   required from here
   38 |       Action->setInitialValue(CB);
      |             ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:342:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, void>’
  342 | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, 8>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:839:30:   required from ‘class llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
  839 |   SmallVector<OptionInfo, 8> Values;
      |                              ^~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:1431:15:   required from ‘class llvm::cl::opt<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
 1431 |   ParserClass Parser;
      |               ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/TableGenBackend.h:38:13:   required from here
   38 |       Action->setInitialValue(CB);
      |             ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 16]’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:29:3:   required from here
   29 |   SmallString() = default;
      |   ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 16>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 16>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h: In instantiation of ‘llvm::SmallString<InternalLen>::operator std::string() const [with unsigned int InternalLen = 16; std::string = std::__cxx11::basic_string<char>]’:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:198:22:   required from here
  198 |   return std::string(Output);
      |                      ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:269:30: error: ‘const class llvm::SmallString<16>’ has no member named ‘data’
  269 |     return std::string(this->data(), this->size());
      |                        ~~~~~~^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 40]’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:29:3:   required from here
   29 |   SmallString() = default;
      |   ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 40>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 40>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h: In instantiation of ‘llvm::SmallString<InternalLen>::operator std::string() const [with unsigned int InternalLen = 40; std::string = std::__cxx11::basic_string<char>]’:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:335:22:   required from here
  335 |   return std::string(S);
      |                      ^
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:269:30: error: ‘const class llvm::SmallString<40>’ has no member named ‘data’
  269 |     return std::string(this->data(), this->size());
      |                        ~~~~~~^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:728:71:   required from here
  728 |   buffer_ostream(raw_ostream &OS) : raw_svector_ostream(Buffer), OS(OS) {}
      |                                                                       ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 0>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 0>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::SMLoc; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1690:55:   required from here
 1690 |         ID(getNewUID(N->getRecordKeeper())), Kind(Kind) {
      |                                                       ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::SMLoc, 0>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::SMLoc, 0>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::Init*; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1690:55:   required from here
 1690 |         ID(getNewUID(N->getRecordKeeper())), Kind(Kind) {
      |                                                       ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::SmallVector(const llvm::SmallVector<T, N>&) [with T = llvm::Init*; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1702:37:   required from here
 1702 |       : Name(O.Name), Locs(O.Locs), TemplateArgs(O.TemplateArgs),
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1250:14: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘empty’
 1250 |     if (!RHS.empty())
      |          ~~~~^~~~~
In file included from /usr/lib/llvm18/include/llvm/ADT/ArrayRef.h:14,
                 from /usr/lib/llvm18/include/llvm/Support/MemoryBuffer.h:17:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h: In instantiation of ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31: error: no matching function for call to ‘adl_begin(const llvm::SmallVector<llvm::Init*, 0>&)’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31: note: there is 1 candidate
In file included from /usr/lib/llvm18/include/llvm/ADT/iterator_range.h:21,
                 from /usr/lib/llvm18/include/llvm/ADT/StringRef.h:14,
                 from /usr/lib/llvm18/include/llvm/ADT/SmallString.h:18:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:62:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&)’
   62 | constexpr auto adl_begin(RangeT &&range)
      |                ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:62:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39: error: no matching function for call to ‘begin_impl(const llvm::SmallVector<llvm::Init*, 0>&)’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:27:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&)’
   27 | constexpr auto begin_impl(RangeT &&range)
      |                ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:27:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: error: no matching function for call to ‘begin(const llvm::SmallVector<llvm::Init*, 0>&)’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note: there are 6 candidates
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 1: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   ‘const llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘const std::valarray<_Tp>’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 2: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<llvm::Init*, 0>’ have incompatible cv-qualifiers
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 3: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<llvm::Init*, 0>’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 4: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22:   required by substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 5: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22:   required by substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 6: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   ‘llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘std::initializer_list<_Tp>’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h: In instantiation of ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47: error: no matching function for call to ‘adl_end(const llvm::SmallVector<llvm::Init*, 0>&)’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&)’
   70 | constexpr auto adl_end(RangeT &&range)
      |                ^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: error: no matching function for call to ‘end_impl(const llvm::SmallVector<llvm::Init*, 0>&)’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&)’
   35 | constexpr auto end_impl(RangeT &&range)
      |                ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: error: no matching function for call to ‘end(const llvm::SmallVector<llvm::Init*, 0>&)’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note: there are 6 candidates
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 1: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘const llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘const std::valarray<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 2: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<llvm::Init*, 0>’ have incompatible cv-qualifiers
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 3: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<llvm::Init*, 0>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 4: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 5: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 6: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘std::initializer_list<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h: In instantiation of ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19: error: no matching function for call to ‘adl_end(const llvm::SmallVector<llvm::Init*, 0>&)’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&)’
   70 | constexpr auto adl_end(RangeT &&range)
      |                ^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: error: no matching function for call to ‘end_impl(const llvm::SmallVector<llvm::Init*, 0>&)’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&)’
   35 | constexpr auto end_impl(RangeT &&range)
      |                ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: error: no matching function for call to ‘end(const llvm::SmallVector<llvm::Init*, 0>&)’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note: there are 6 candidates
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 1: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘const llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘const std::valarray<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 2: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<llvm::Init*, 0>’ have incompatible cv-qualifiers
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 3: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<llvm::Init*, 0>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 4: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 5: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 6: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘std::initializer_list<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::Init*; unsigned int N = 4]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2273:51:   required from here
 2273 |   explicit RecordResolver(Record &R) : Resolver(&R) {}
      |                                                   ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::Init*, 4>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::Init*, 4>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 32]’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:29:3:   required from here
   29 |   SmallString() = default;
      |   ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 32>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 32>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h: In instantiation of ‘llvm::SmallString<InternalLen>::operator std::string() const [with unsigned int InternalLen = 32; std::string = std::__cxx11::basic_string<char>]’:
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp:69:59:   required from here
   69 |     StringMatcher::StringPair Match(Spelling, std::string(CLiteral));
      |                                                           ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:269:30: error: ‘const class llvm::SmallString<32>’ has no member named ‘data’
  269 |     return std::string(this->data(), this->size());
      |                        ~~~~~~^~~~
[197/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentCommandInfoEmitter.cpp.o
[198/2074] Generating ../../lib/libscanbuild/intercept.py
[199/2074] Generating ../../lib/libscanbuild/resources/scanview.css
[200/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ASTTableGen.cpp.o
[201/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangDataCollectorsEmitter.cpp.o
[202/2074] Generating ../../lib/libscanbuild/report.py
[203/2074] Generating ../../lib/libscanbuild/resources/selectable.js
[204/2074] Building CXX object lib/Support/CMakeFiles/obj.clangSupport.dir/RISCVVIntrinsicUtils.cpp.o
[205/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangTypeNodesEmitter.cpp.o
[206/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangSACheckersEmitter.cpp.o
[207/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/TableGen.cpp.o
[208/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangASTNodesEmitter.cpp.o
[209/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOptionDocEmitter.cpp.o
FAILED: [code=1] utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOptionDocEmitter.cpp.o 
/usr/bin/c++ -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/startdir/src/clang-18.1.8.src/build/utils/TableGen -I/startdir/src/clang-18.1.8.src/utils/TableGen -I/startdir/src/clang-18.1.8.src/include -I/startdir/src/clang-18.1.8.src/build/include -I/usr/lib/llvm18/include -march=x86-64-v3 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -Wp,-D_GLIBCXX_ASSERTIONS -g1 -ffile-prefix-map=/startdir/src=/usr/src/debug/clang18 -flto=auto -falign-functions=32 -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 -Wimplicit-fallthrough -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 -fno-common -Woverloaded-virtual -fno-strict-aliasing -pedantic -Wno-long-long -O3 -DNDEBUG -std=c++17  -fno-exceptions -funwind-tables -MD -MT utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOptionDocEmitter.cpp.o -MF utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOptionDocEmitter.cpp.o.d -o utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOptionDocEmitter.cpp.o -c /startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp
In file included from /usr/lib/llvm18/include/llvm/Support/SourceMgr.h:18,
                 from /usr/lib/llvm18/include/llvm/TableGen/Error.h:17,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp:12:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:119:62: error: ‘uint64_t’ was not declared in this scope
  119 |     std::conditional_t<sizeof(T) < 4 && sizeof(void *) >= 8, uint64_t,
      |                                                              ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:29:1: note: ‘uint64_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
   28 | #include <memory>
  +++ |+#include <cstdint>
   29 | #include <new>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:24: error: ‘uint32_t’ was not declared in this scope
  120 |                        uint32_t>;
      |                        ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:24: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:32: error: template argument 2 is invalid
  120 |                        uint32_t>;
      |                                ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:120:32: error: template argument 3 is invalid
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:27: error: ‘SmallVectorSizeType’ was not declared in this scope; did you mean ‘SmallVectorBase’? [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |                           ^~~~~~~~~~~~~~~~~~~
      |                           SmallVectorBase
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:47: error: template argument 1 is invalid [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |                                               ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:48: error: expected ‘)’ before ‘>’ token [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |          ~                                     ^~
      |                                                )
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:124:48: error: expected unqualified-id before ‘>’ token [-Wtemplate-body]
  124 |   alignas(SmallVectorBase<SmallVectorSizeType<T>>) char Base[sizeof(
      |                                                ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:134:30: error: ‘SmallVectorSizeType’ was not declared in this scope; did you mean ‘SmallVectorBase’? [-Wtemplate-body]
  134 |     : public SmallVectorBase<SmallVectorSizeType<T>> {
      |                              ^~~~~~~~~~~~~~~~~~~
      |                              SmallVectorBase
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:134:50: error: template argument 1 is invalid [-Wtemplate-body]
  134 |     : public SmallVectorBase<SmallVectorSizeType<T>> {
      |                                                  ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:134:51: error: expected ‘{’ before ‘>’ token
  134 |     : public SmallVectorBase<SmallVectorSizeType<T>> {
      |                                                   ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In member function ‘T* llvm::SmallVectorTemplateBase<T, <anonymous> >::mallocForGrow(size_t, size_t&)’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:457:23: error: ‘SmallVectorSizeType’ was not declared in this scope; did you mean ‘SmallVectorBase’? [-Wtemplate-body]
  457 |       SmallVectorBase<SmallVectorSizeType<T>>::mallocForGrow(
      |                       ^~~~~~~~~~~~~~~~~~~
      |                       SmallVectorBase
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:457:43: error: template argument 1 is invalid [-Wtemplate-body]
  457 |       SmallVectorBase<SmallVectorSizeType<T>>::mallocForGrow(
      |                                           ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:457:48: error: ‘::mallocForGrow’ has not been declared [-Wtemplate-body]
  457 |       SmallVectorBase<SmallVectorSizeType<T>>::mallocForGrow(
      |                                                ^~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: At global scope:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1330:45: error: ‘uint32_t’ was not declared in this scope
 1330 | extern template class llvm::SmallVectorBase<uint32_t>;
      |                                             ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1330:45: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1330:53: error: template argument 1 is invalid
 1330 | extern template class llvm::SmallVectorBase<uint32_t>;
      |                                                     ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<char, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<char>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h:321:33:   required from here
  321 |       LHS.ptrAndLength.ptr = Str.data();
      |                                 ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<char, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<char, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<char>’:
/usr/lib/llvm18/include/llvm/ADT/Twine.h:321:33:   required from here
  321 |       LHS.ptrAndLength.ptr = Str.data();
      |                                 ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’ {aka ‘class llvm::SmallVectorTemplateBase<char, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<char>::SuperClass = class llvm::SmallVectorTemplateBase<char, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
In file included from /usr/lib/llvm18/include/llvm/Support/MemoryBuffer.h:19,
                 from /usr/lib/llvm18/include/llvm/Support/SourceMgr.h:19:
/usr/lib/llvm18/include/llvm/ADT/Twine.h: In constructor ‘llvm::Twine::Twine(const llvm::SmallVectorImpl<char>&)’:
/usr/lib/llvm18/include/llvm/ADT/Twine.h:321:34: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  321 |       LHS.ptrAndLength.ptr = Str.data();
      |                                  ^~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h:322:37: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  322 |       LHS.ptrAndLength.length = Str.size();
      |                                     ^~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h: In member function ‘llvm::StringRef llvm::Twine::toStringRef(llvm::SmallVectorImpl<char>&) const’:
/usr/lib/llvm18/include/llvm/ADT/Twine.h:496:28: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  496 |       return StringRef(Out.data(), Out.size());
      |                            ^~~~
/usr/lib/llvm18/include/llvm/ADT/Twine.h:496:40: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  496 |       return StringRef(Out.data(), Out.size());
      |                                        ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::SMFixIt>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMFixIt, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h:290:27:   required from here
  290 |   SmallVector<SMFixIt, 4> FixIts;
      |                           ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:342:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::SMFixIt, void>’
  342 | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::SMFixIt, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::SMFixIt>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMFixIt, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h:290:27:   required from here
  290 |   SmallVector<SMFixIt, 4> FixIts;
      |                           ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::SMFixIt>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMFixIt, false>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h: In member function ‘llvm::ArrayRef<llvm::SMFixIt> llvm::SMDiagnostic::getFixIts() const’:
/usr/lib/llvm18/include/llvm/Support/SourceMgr.h:317:48: error: could not convert ‘((const llvm::SMDiagnostic*)this)->llvm::SMDiagnostic::FixIts’ from ‘const llvm::SmallVector<llvm::SMFixIt, 4>’ to ‘llvm::ArrayRef<llvm::SMFixIt>’
  317 |   ArrayRef<SMFixIt> getFixIts() const { return FixIts; }
      |                                                ^~~~~~
      |                                                |
      |                                                const llvm::SmallVector<llvm::SMFixIt, 4>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<void*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<void*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<void*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:311:26:   required from here
  311 |   SmallVector<void *, 4> Slabs;
      |                          ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<void*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<void*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<void*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<void*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:311:26:   required from here
  311 |   SmallVector<void *, 4> Slabs;
      |                          ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<void*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<void*>::SuperClass = class llvm::SmallVectorTemplateBase<void*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:314:45:   required from here
  314 |   SmallVector<std::pair<void *, size_t>, 0> CustomSizedSlabs;
      |                                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<std::pair<void*, long unsigned int>, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<std::pair<void*, long unsigned int>, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:314:45:   required from here
  314 |   SmallVector<std::pair<void *, size_t>, 0> CustomSizedSlabs;
      |                                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<std::pair<void*, long unsigned int> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<void*, long unsigned int>, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
In file included from /usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:23,
                 from /usr/lib/llvm18/include/llvm/TableGen/Record.h:20,
                 from /usr/lib/llvm18/include/llvm/TableGen/Error.h:18:
/usr/lib/llvm18/include/llvm/Support/Allocator.h: At global scope:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:351:59: error: expected ‘)’ before ‘,’ token [-Wtemplate-body]
  351 |   void DeallocateSlabs(SmallVectorImpl<void *>::iterator I,
      |                       ~                                   ^
      |                                                           )
/usr/lib/llvm18/include/llvm/Support/Allocator.h:352:24: error: invalid use of qualified-name ‘llvm::SmallVectorImpl<void*>::iterator’ [-Wtemplate-body]
  352 |                        SmallVectorImpl<void *>::iterator E) {
      |                        ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:352:49: error: expected ‘;’ at end of member declaration [-Wtemplate-body]
  352 |                        SmallVectorImpl<void *>::iterator E) {
      |                                                 ^~~~~~~~
      |                                                         ;
/usr/lib/llvm18/include/llvm/Support/Allocator.h:352:58: error: ‘E’ does not name a type [-Wtemplate-body]
  352 |                        SmallVectorImpl<void *>::iterator E) {
      |                                                          ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In destructor ‘llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::~BumpPtrAllocatorImpl()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:98:27: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
   98 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                           ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:98:42: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
   98 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                                          ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>& llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::operator=(llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>&&)’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:103:27: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  103 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                           ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:103:42: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
  103 |     DeallocateSlabs(Slabs.begin(), Slabs.end());
      |                                          ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::Reset()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:128:15: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘empty’ [-Wtemplate-body]
  128 |     if (Slabs.empty())
      |               ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:133:28: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘front’ [-Wtemplate-body]
  133 |     CurPtr = (char *)Slabs.front();
      |                            ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:137:37: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  137 |     DeallocateSlabs(std::next(Slabs.begin()), Slabs.end());
      |                                     ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:137:53: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
  137 |     DeallocateSlabs(std::next(Slabs.begin()), Slabs.end());
      |                                                     ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:138:11: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘erase’ [-Wtemplate-body]
  138 |     Slabs.erase(std::next(Slabs.begin()), Slabs.end());
      |           ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:138:33: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  138 |     Slabs.erase(std::next(Slabs.begin()), Slabs.end());
      |                                 ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:138:49: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘end’ [-Wtemplate-body]
  138 |     Slabs.erase(std::next(Slabs.begin()), Slabs.end());
      |                                                 ^~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘size_t llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::GetNumSlabs() const’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:225:45: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  225 |   size_t GetNumSlabs() const { return Slabs.size() + CustomSizedSlabs.size(); }
      |                                             ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:225:71: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘size’ [-Wtemplate-body]
  225 |   size_t GetNumSlabs() const { return Slabs.size() + CustomSizedSlabs.size(); }
      |                                                                       ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘std::optional<long int> llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::identifyObject(const void*)’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:235:36: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  235 |     for (size_t Idx = 0, E = Slabs.size(); Idx < E; Idx++) {
      |                                    ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:236:54: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<void*, 4>’ and ‘size_t’ {aka ‘long unsigned int’}) [-Wtemplate-body]
  236 |       const char *S = static_cast<const char *>(Slabs[Idx]);
      |                                                      ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:244:47: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘size’ [-Wtemplate-body]
  244 |     for (size_t Idx = 0, E = CustomSizedSlabs.size(); Idx < E; Idx++) {
      |                                               ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:245:65: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ and ‘size_t’ {aka ‘long unsigned int’}) [-Wtemplate-body]
  245 |       const char *S = static_cast<const char *>(CustomSizedSlabs[Idx].first);
      |                                                                 ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:246:37: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ and ‘size_t’ {aka ‘long unsigned int’}) [-Wtemplate-body]
  246 |       size_t Size = CustomSizedSlabs[Idx].second;
      |                                     ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘size_t llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::getTotalMemory() const’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:283:25: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  283 |     for (auto I = Slabs.begin(), E = Slabs.end(); I != E; ++I)
      |                         ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:283:56: error: ‘E’ was not declared in this scope [-Wtemplate-body]
  283 |     for (auto I = Slabs.begin(), E = Slabs.end(); I != E; ++I)
      |                                                        ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:284:58: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  284 |       TotalMemory += computeSlabSize(std::distance(Slabs.begin(), I));
      |                                                          ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: error: no matching function for call to ‘begin(const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note: there are 6 candidates
In file included from /usr/include/c++/15.2.1/bits/range_access.h:38,
                 from /usr/include/c++/15.2.1/string:55,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/TableGenBackends.h:18,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp:11:
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ have incompatible cv-qualifiers
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: error: no matching function for call to ‘end(const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35:   required from here
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ have incompatible cv-qualifiers
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:285:35: note:   ‘const llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  285 |     for (const auto &PtrAndSize : CustomSizedSlabs)
      |                                   ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::PrintStats() const’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:297:46: error: ‘const class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  297 |     detail::printBumpPtrAllocatorStats(Slabs.size(), BytesAllocated,
      |                                              ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::StartNewSlab()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:337:54: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘size’ [-Wtemplate-body]
  337 |     size_t AllocatedSlabSize = computeSlabSize(Slabs.size());
      |                                                      ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold, GrowthDelay>::DeallocateCustomSizedSlabs()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: error: no matching function for call to ‘begin(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: error: no matching function for call to ‘end(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29:   required from here
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:363:29: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  363 |     for (auto &PtrAndSize : CustomSizedSlabs) {
      |                             ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h: In member function ‘void llvm::SpecificBumpPtrAllocator<T>::DestroyAll()’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:410:35: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  410 |     for (auto I = Allocator.Slabs.begin(), E = Allocator.Slabs.end(); I != E;
      |                                   ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:410:76: error: ‘E’ was not declared in this scope [-Wtemplate-body]
  410 |     for (auto I = Allocator.Slabs.begin(), E = Allocator.Slabs.end(); I != E;
      |                                                                            ^
/usr/lib/llvm18/include/llvm/Support/Allocator.h:413:41: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘begin’ [-Wtemplate-body]
  413 |           std::distance(Allocator.Slabs.begin(), I));
      |                                         ^~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:415:41: error: ‘class llvm::SmallVector<void*, 4>’ has no member named ‘back’ [-Wtemplate-body]
  415 |       char *End = *I == Allocator.Slabs.back() ? Allocator.CurPtr
      |                                         ^~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: error: no matching function for call to ‘begin(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: error: no matching function for call to ‘end(llvm::SmallVector<std::pair<void*, long unsigned int>, 0>&)’ [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<void*, long unsigned int>, 0>]’:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39:   required from here
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   mismatched types ‘_Tp [_Nm]’ and ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/Support/Allocator.h:421:39: note:   ‘llvm::SmallVector<std::pair<void*, long unsigned int>, 0>’ is not derived from ‘const std::valarray<_Tp>’
  421 |     for (auto &PtrAndSize : Allocator.CustomSizedSlabs) {
      |                                       ^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<unsigned int>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<unsigned int, 32>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:322:29:   required from here
  322 |   SmallVector<unsigned, 32> Bits;
      |                             ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<unsigned int, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<unsigned int, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<unsigned int>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<unsigned int, 32>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:322:29:   required from here
  322 |   SmallVector<unsigned, 32> Bits;
      |                             ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’ {aka ‘class llvm::SmallVectorTemplateBase<unsigned int, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<unsigned int>::SuperClass = class llvm::SmallVectorTemplateBase<unsigned int, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h: In member function ‘unsigned int llvm::FoldingSetNodeID::ComputeHash() const’:
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:372:37: error: ‘const class llvm::SmallVector<unsigned int, 32>’ has no member named ‘data’
  372 |     return FoldingSetNodeIDRef(Bits.data(), Bits.size()).ComputeHash();
      |                                     ^~~~
/usr/lib/llvm18/include/llvm/ADT/FoldingSet.h:372:50: error: ‘const class llvm::SmallVector<unsigned int, 32>’ has no member named ‘size’
  372 |     return FoldingSetNodeIDRef(Bits.data(), Bits.size()).ComputeHash();
      |                                                  ^~~~
In file included from /usr/lib/llvm18/include/llvm/TableGen/Record.h:23:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h: In function ‘void llvm::toHex(ArrayRef<unsigned char>, bool, SmallVectorImpl<char>&)’:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:186:10: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘resize_for_overwrite’
  186 |   Output.resize_for_overwrite(Length * 2);
      |          ^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:190:11: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVectorImpl<char>’ and ‘size_t’ {aka ‘long unsigned int’})
  190 |     Output[i * 2    ] = hexdigit(c >> 4, LowerCase);
      |           ^
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:191:11: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVectorImpl<char>’ and ‘size_t’ {aka ‘long unsigned int’})
  191 |     Output[i * 2 + 1] = hexdigit(c & 15, LowerCase);
      |           ^
In file included from /usr/lib/llvm18/include/llvm/TableGen/Record.h:30:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h: In member function ‘llvm::raw_ostream& llvm::raw_ostream::operator<<(const llvm::SmallVectorImpl<char>&)’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:257:22: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  257 |     return write(Str.data(), Str.size());
      |                      ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:257:34: error: ‘const class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  257 |     return write(Str.data(), Str.size());
      |                                  ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h: In member function ‘llvm::StringRef llvm::raw_svector_ostream::str() const’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:699:47: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘data’
  699 |   StringRef str() const { return StringRef(OS.data(), OS.size()); }
      |                                               ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:699:58: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘size’
  699 |   StringRef str() const { return StringRef(OS.data(), OS.size()); }
      |                                                          ^~~~
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h: In member function ‘virtual void llvm::raw_svector_ostream::reserveExtraSpace(uint64_t)’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:702:8: error: ‘class llvm::SmallVectorImpl<char>’ has no member named ‘reserve’
  702 |     OS.reserve(tell() + ExtraSize);
      |        ^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::Init*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1114:53:   required from here
 1114 |   using const_case_iterator = SmallVectorImpl<Init*>::const_iterator;
      |                                                     ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::Init*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::Init*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::Init*>’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1114:53:   required from here
 1114 |   using const_case_iterator = SmallVectorImpl<Init*>::const_iterator;
      |                                                     ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Init*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::Init*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Init*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: At global scope:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1117:10: error: ‘const_case_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1117 |   inline const_case_iterator  arg_begin() const { return getConds().begin(); }
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1118:10: error: ‘const_case_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1118 |   inline const_case_iterator  arg_end  () const { return getConds().end(); }
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1123:10: error: ‘const_val_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1123 |   inline const_val_iterator name_begin() const { return getVals().begin();}
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1124:10: error: ‘const_val_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1124 |   inline const_val_iterator name_end  () const { return getVals().end(); }
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::StringInit*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1518:59:   required from here
 1518 |   using const_name_iterator = SmallVectorImpl<StringInit*>::const_iterator;
      |                                                           ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::StringInit*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::StringInit*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::StringInit*>’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1518:59:   required from here
 1518 |   using const_name_iterator = SmallVectorImpl<StringInit*>::const_iterator;
      |                                                           ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::StringInit*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringInit*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1520:10: error: ‘const_arg_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1520 |   inline const_arg_iterator  arg_begin() const { return getArgs().begin(); }
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1521:10: error: ‘const_arg_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1521 |   inline const_arg_iterator  arg_end  () const { return getArgs().end(); }
      |          ^~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1526:10: error: ‘const_name_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1526 |   inline const_name_iterator name_begin() const { return getArgNames().begin();}
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1527:10: error: ‘const_name_iterator’ does not name a type; did you mean ‘concat_iterator’?
 1527 |   inline const_name_iterator name_end  () const { return getArgNames().end(); }
      |          ^~~~~~~~~~~~~~~~~~~
      |          concat_iterator
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::SMRange>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMRange, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1184:37:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::PreferredInlineBytes’
 1184 |       kPreferredSmallVectorSizeof - sizeof(SmallVector<T, 0>);
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1185:48:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::NumElementsThatFit’
 1185 |   static constexpr size_t NumElementsThatFit = PreferredInlineBytes / sizeof(T);
      |                                                ^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1187:7:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::value’
 1187 |       NumElementsThatFit == 0 ? 1 : NumElementsThatFit;
      |       ^~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1207:71:   required from here
 1207 |           unsigned N = CalculateSmallVectorDefaultInlinedElements<T>::value>
      |                                                                       ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::SMRange, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::SMRange, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::SMRange>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMRange, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1184:37:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::PreferredInlineBytes’
 1184 |       kPreferredSmallVectorSizeof - sizeof(SmallVector<T, 0>);
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1185:48:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::NumElementsThatFit’
 1185 |   static constexpr size_t NumElementsThatFit = PreferredInlineBytes / sizeof(T);
      |                                                ^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1187:7:   required from ‘constexpr const size_t llvm::CalculateSmallVectorDefaultInlinedElements<llvm::SMRange>::value’
 1187 |       NumElementsThatFit == 0 ? 1 : NumElementsThatFit;
      |       ^~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1207:71:   required from here
 1207 |           unsigned N = CalculateSmallVectorDefaultInlinedElements<T>::value>
      |                                                                       ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::SMRange>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMRange, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMRange> llvm::RecordVal::getReferenceLocs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1613:55: error: could not convert ‘((const llvm::RecordVal*)this)->llvm::RecordVal::ReferenceLocs’ from ‘const llvm::SmallVector<llvm::SMRange>’ to ‘llvm::ArrayRef<llvm::SMRange>’
 1613 |   ArrayRef<SMRange> getReferenceLocs() const { return ReferenceLocs; }
      |                                                       ^~~~~~~~~~~~~
      |                                                       |
      |                                                       const llvm::SmallVector<llvm::SMRange>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::SMLoc>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMLoc, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1660:25:   required from here
 1660 |   SmallVector<SMLoc, 4> Locs;
      |                         ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::SMLoc, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::SMLoc, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::SMLoc>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::SMLoc, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1660:25:   required from here
 1660 |   SmallVector<SMLoc, 4> Locs;
      |                         ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::SMLoc>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::SMLoc, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::RecordVal>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::RecordVal, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1664:29:   required from here
 1664 |   SmallVector<RecordVal, 0> Values;
      |                             ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:342:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::RecordVal, void>’
  342 | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::RecordVal, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::RecordVal>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::RecordVal, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1664:29:   required from here
 1664 |   SmallVector<RecordVal, 0> Values;
      |                             ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::RecordVal>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::RecordVal, false>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::Record::AssertionInfo>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::AssertionInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1665:33:   required from here
 1665 |   SmallVector<AssertionInfo, 0> Assertions;
      |                                 ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::Record::AssertionInfo, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::Record::AssertionInfo, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::Record::AssertionInfo>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::AssertionInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1665:33:   required from here
 1665 |   SmallVector<AssertionInfo, 0> Assertions;
      |                                 ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::Record::AssertionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::AssertionInfo, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::Record::DumpInfo>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::DumpInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1666:28:   required from here
 1666 |   SmallVector<DumpInfo, 0> Dumps;
      |                            ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::Record::DumpInfo, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::Record::DumpInfo, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::Record::DumpInfo>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::Record::DumpInfo, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1666:28:   required from here
 1666 |   SmallVector<DumpInfo, 0> Dumps;
      |                            ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::Record::DumpInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::Record::DumpInfo, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1670:48:   required from here
 1670 |   SmallVector<std::pair<Record *, SMRange>, 0> SuperClasses;
      |                                                ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<std::pair<llvm::Record*, llvm::SMRange>, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<std::pair<llvm::Record*, llvm::SMRange>, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1670:48:   required from here
 1670 |   SmallVector<std::pair<Record *, SMRange>, 0> SuperClasses;
      |                                                ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<std::pair<llvm::Record*, llvm::SMRange> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<llvm::Record*, llvm::SMRange>, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMLoc> llvm::Record::getLoc() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1723:43: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Locs’ from ‘const llvm::SmallVector<llvm::SMLoc, 4>’ to ‘llvm::ArrayRef<llvm::SMLoc>’
 1723 |   ArrayRef<SMLoc> getLoc() const { return Locs; }
      |                                           ^~~~
      |                                           |
      |                                           const llvm::SmallVector<llvm::SMLoc, 4>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMLoc> llvm::Record::getForwardDeclarationLocs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1727:12: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::ForwardDeclarationLocs’ from ‘const llvm::SmallVector<llvm::SMLoc, 0>’ to ‘llvm::ArrayRef<llvm::SMLoc>’
 1727 |     return ForwardDeclarationLocs;
      |            ^~~~~~~~~~~~~~~~~~~~~~
      |            |
      |            const llvm::SmallVector<llvm::SMLoc, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::SMRange> llvm::Record::getReferenceLocs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1734:55: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::ReferenceLocs’ from ‘const llvm::SmallVector<llvm::SMRange, 0>’ to ‘llvm::ArrayRef<llvm::SMRange>’
 1734 |   ArrayRef<SMRange> getReferenceLocs() const { return ReferenceLocs; }
      |                                                       ^~~~~~~~~~~~~
      |                                                       |
      |                                                       const llvm::SmallVector<llvm::SMRange, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::Init*> llvm::Record::getTemplateArgs() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1752:12: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::TemplateArgs’ from ‘const llvm::SmallVector<llvm::Init*, 0>’ to ‘llvm::ArrayRef<llvm::Init*>’
 1752 |     return TemplateArgs;
      |            ^~~~~~~~~~~~
      |            |
      |            const llvm::SmallVector<llvm::Init*, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::RecordVal> llvm::Record::getValues() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1755:50: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Values’ from ‘const llvm::SmallVector<llvm::RecordVal, 0>’ to ‘llvm::ArrayRef<llvm::RecordVal>’
 1755 |   ArrayRef<RecordVal> getValues() const { return Values; }
      |                                                  ^~~~~~
      |                                                  |
      |                                                  const llvm::SmallVector<llvm::RecordVal, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::Record::AssertionInfo> llvm::Record::getAssertions() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1757:58: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Assertions’ from ‘const llvm::SmallVector<llvm::Record::AssertionInfo, 0>’ to ‘llvm::ArrayRef<llvm::Record::AssertionInfo>’
 1757 |   ArrayRef<AssertionInfo> getAssertions() const { return Assertions; }
      |                                                          ^~~~~~~~~~
      |                                                          |
      |                                                          const llvm::SmallVector<llvm::Record::AssertionInfo, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<llvm::Record::DumpInfo> llvm::Record::getDumps() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1758:48: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::Dumps’ from ‘const llvm::SmallVector<llvm::Record::DumpInfo, 0>’ to ‘llvm::ArrayRef<llvm::Record::DumpInfo>’
 1758 |   ArrayRef<DumpInfo> getDumps() const { return Dumps; }
      |                                                ^~~~~
      |                                                |
      |                                                const llvm::SmallVector<llvm::Record::DumpInfo, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘llvm::ArrayRef<std::pair<llvm::Record*, llvm::SMRange> > llvm::Record::getSuperClasses() const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1761:12: error: could not convert ‘((const llvm::Record*)this)->llvm::Record::SuperClasses’ from ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ to ‘llvm::ArrayRef<std::pair<llvm::Record*, llvm::SMRange> >’
 1761 |     return SuperClasses;
      |            ^~~~~~~~~~~~
      |            |
      |            const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘const llvm::RecordVal* llvm::Record::getValue(const llvm::Init*) const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: error: ‘begin’ was not declared in this scope
 1775 |     for (const RecordVal &Val : Values)
      |                                 ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: note: suggested alternatives:
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note:   ‘std::begin’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note:   ‘std::begin’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: error: ‘end’ was not declared in this scope
 1775 |     for (const RecordVal &Val : Values)
      |                                 ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1775:33: note: suggested alternatives:
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note:   ‘std::end’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note:   ‘std::end’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘void llvm::Record::removeValue(llvm::Init*)’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1803:37: error: ‘class llvm::SmallVector<llvm::RecordVal, 0>’ has no member named ‘size’
 1803 |     for (unsigned i = 0, e = Values.size(); i != e; ++i)
      |                                     ^~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1804:17: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<llvm::RecordVal, 0>’ and ‘unsigned int’)
 1804 |       if (Values[i].getNameInit() == Name) {
      |                 ^
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1805:16: error: ‘class llvm::SmallVector<llvm::RecordVal, 0>’ has no member named ‘erase’
 1805 |         Values.erase(Values.begin()+i);
      |                ^~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1805:29: error: ‘class llvm::SmallVector<llvm::RecordVal, 0>’ has no member named ‘begin’
 1805 |         Values.erase(Values.begin()+i);
      |                             ^~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘bool llvm::Record::isSubClassOf(const llvm::Record*) const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: error: no matching function for call to ‘begin(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: error: no matching function for call to ‘end(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31:   required from here
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1834:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1834 |     for (const auto &SCPair : SuperClasses)
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘bool llvm::Record::isSubClassOf(llvm::StringRef) const’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: error: no matching function for call to ‘begin(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 5: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: error: no matching function for call to ‘end(const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>&)’
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note: there are 6 candidates
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 1: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘std::initializer_list<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 2: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 3: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31:   required from here
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 4: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 5: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ have incompatible cv-qualifiers
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 6: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1841:31: note:   ‘const llvm::SmallVector<std::pair<llvm::Record*, llvm::SMRange>, 0>’ is not derived from ‘const std::valarray<_Tp>’
 1841 |     for (const auto &SCPair : SuperClasses) {
      |                               ^~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2125:49:   required from here
 2125 |     SmallVector<std::pair< bool, StringRef>, 4> Parts;
      |                                                 ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<std::pair<bool, llvm::StringRef>, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<std::pair<bool, llvm::StringRef>, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2125:49:   required from here
 2125 |     SmallVector<std::pair< bool, StringRef>, 4> Parts;
      |                                                 ^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’ {aka ‘class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<std::pair<bool, llvm::StringRef> >::SuperClass = class llvm::SmallVectorTemplateBase<std::pair<bool, llvm::StringRef>, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘size_t llvm::LessRecordRegister::RecordParts::size()’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2148:34: error: ‘class llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’ has no member named ‘size’
 2148 |     size_t size() { return Parts.size(); }
      |                                  ^~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h: In member function ‘std::pair<bool, llvm::StringRef> llvm::LessRecordRegister::RecordParts::getPart(size_t)’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2152:19: error: no match for ‘operator[]’ (operand types are ‘llvm::SmallVector<std::pair<bool, llvm::StringRef>, 4>’ and ‘size_t’ {aka ‘long unsigned int’})
 2152 |       return Parts[i];
      |                   ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::Option*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::Option*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:233:28:   required from here
  233 |   SmallVector<Option *, 4> PositionalOpts;
      |                            ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::Option*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::Option*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::Option*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::Option*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:233:28:   required from here
  233 |   SmallVector<Option *, 4> PositionalOpts;
      |                            ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::Option*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::Option*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::SubCommand*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::SubCommand*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:247:32:   required from here
  247 |   SmallVector<SubCommand *, 4> Subs;
      |                                ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::SubCommand*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::SubCommand*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::SubCommand*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::SubCommand*, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:247:32:   required from here
  247 |   SmallVector<SubCommand *, 4> Subs;
      |                                ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::SubCommand*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::SubCommand*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
In file included from /usr/lib/llvm18/include/llvm/TableGen/TableGenBackend.h:17,
                 from /startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp:18:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h: In member function ‘llvm::ArrayRef<llvm::cl::SubCommand*> llvm::cl::SubCommandGroup::getSubCommands() const’:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:252:58: error: could not convert ‘((const llvm::cl::SubCommandGroup*)this)->llvm::cl::SubCommandGroup::Subs’ from ‘const llvm::SmallVector<llvm::cl::SubCommand*, 4>’ to ‘llvm::ArrayRef<llvm::cl::SubCommand*>’
  252 |   ArrayRef<SubCommand *> getSubCommands() const { return Subs; }
      |                                                          ^~~~
      |                                                          |
      |                                                          const llvm::SmallVector<llvm::cl::SubCommand*, 4>
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::OptionCategory*>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionCategory*, 1>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:293:7:   required from here
  293 |       Categories;                    // The Categories this option belongs to
      |       ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionCategory*, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionCategory*, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::OptionCategory*>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionCategory*, 1>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:293:7:   required from here
  293 |       Categories;                    // The Categories this option belongs to
      |       ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::OptionCategory*>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionCategory*, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionEnumValue, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:703:35:   required from here
  703 |   SmallVector<OptionEnumValue, 4> Values;
      |                                   ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionEnumValue, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::OptionEnumValue, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::OptionEnumValue, 4>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:703:35:   required from here
  703 |   SmallVector<OptionEnumValue, 4> Values;
      |                                   ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::OptionEnumValue>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::OptionEnumValue, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h: In member function ‘void llvm::cl::ValuesClass::apply(Opt&) const’:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:710:30: error: there are no arguments to ‘begin’ that depend on a template parameter, so a declaration of ‘begin’ must be available [-Wtemplate-body]
  710 |     for (const auto &Value : Values)
      |                              ^~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:710:30: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:710:30: error: there are no arguments to ‘end’ that depend on a template parameter, so a declaration of ‘end’ must be available [-Wtemplate-body]
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::StringRef>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:794:20:   required from here
  794 |         OptionNames.push_back(getOption(i));
      |                    ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:488:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::StringRef, void>’
  488 | class SmallVectorTemplateBase<T, true> : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::StringRef, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::StringRef>’:
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:794:20:   required from here
  794 |         OptionNames.push_back(getOption(i));
      |                    ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::StringRef>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::StringRef, true>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:586:7:   required from ‘class llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>’
  586 | class SmallVectorImpl : public SmallVectorTemplateBase<T> {
      |       ^~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, 8>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:839:30:   required from ‘class llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
  839 |   SmallVector<OptionInfo, 8> Values;
      |                              ^~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:1431:15:   required from ‘class llvm::cl::opt<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
 1431 |   ParserClass Parser;
      |               ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/TableGenBackend.h:38:13:   required from here
   38 |       Action->setInitialValue(CB);
      |             ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:342:7: error: invalid use of incomplete type ‘class llvm::SmallVectorTemplateCommon<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, void>’
  342 | class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
      |       ^~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:133:7: note: declaration of ‘class llvm::SmallVectorTemplateCommon<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, void>’
  133 | class SmallVectorTemplateCommon
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘class llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>’:
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1208:22:   required from ‘class llvm::SmallVector<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, 8>’
 1208 | class LLVM_GSL_OWNER SmallVector : public SmallVectorImpl<T>,
      |                      ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:839:30:   required from ‘class llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
  839 |   SmallVector<OptionInfo, 8> Values;
      |                              ^~~~~~
/usr/lib/llvm18/include/llvm/Support/CommandLine.h:1431:15:   required from ‘class llvm::cl::opt<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>’
 1431 |   ParserClass Parser;
      |               ^~~~~~
/usr/lib/llvm18/include/llvm/TableGen/TableGenBackend.h:38:13:   required from here
   38 |       Action->setInitialValue(CB);
      |             ^~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:590:9: error: no type named ‘iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  590 |   using iterator = typename SuperClass::iterator;
      |         ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:591:9: error: no type named ‘const_iterator’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  591 |   using const_iterator = typename SuperClass::const_iterator;
      |         ^~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:592:9: error: no type named ‘reference’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  592 |   using reference = typename SuperClass::reference;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:593:9: error: no type named ‘size_type’ in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’ {aka ‘class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’}
  593 |   using size_type = typename SuperClass::size_type;
      |         ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:630:21: error: ‘set_size’ has not been declared in ‘using llvm::SmallVectorImpl<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo>::SuperClass = class llvm::SmallVectorTemplateBase<llvm::cl::parser<void (*)(llvm::RecordKeeper&, llvm::raw_ostream&)>::OptionInfo, false>’
  630 |   using SuperClass::set_size;
      |                     ^~~~~~~~
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp: In function ‘void {anonymous}::emitOption(const DocumentedOption&, const llvm::Record*, llvm::raw_ostream&)’:
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp:377:16: error: ‘class llvm::SmallVector<llvm::StringRef>’ has no member named ‘size’
  377 |     if (Values.size() > 1) {
      |                ^~~~
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp:378:34: error: ‘class llvm::SmallVector<llvm::StringRef>’ has no member named ‘begin’
  378 |       Description += join(Values.begin(), Values.end() - 1, "', '");
      |                                  ^~~~~
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp:378:50: error: ‘class llvm::SmallVector<llvm::StringRef>’ has no member named ‘end’
  378 |       Description += join(Values.begin(), Values.end() - 1, "', '");
      |                                                  ^~~
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp:381:28: error: ‘class llvm::SmallVector<llvm::StringRef>’ has no member named ‘back’
  381 |     Description += (Values.back() + "'.").str();
      |                            ^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 16]’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:29:3:   required from here
   29 |   SmallString() = default;
      |   ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 16>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 16>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
In file included from /usr/lib/llvm18/include/llvm/ADT/StringExtras.h:19:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h: In instantiation of ‘llvm::SmallString<InternalLen>::operator std::string() const [with unsigned int InternalLen = 16; std::string = std::__cxx11::basic_string<char>]’:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:198:22:   required from here
  198 |   return std::string(Output);
      |                      ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:269:30: error: ‘const class llvm::SmallString<16>’ has no member named ‘data’
  269 |     return std::string(this->data(), this->size());
      |                        ~~~~~~^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 40]’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:29:3:   required from here
   29 |   SmallString() = default;
      |   ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 40>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 40>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallString.h: In instantiation of ‘llvm::SmallString<InternalLen>::operator std::string() const [with unsigned int InternalLen = 40; std::string = std::__cxx11::basic_string<char>]’:
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:335:22:   required from here
  335 |   return std::string(S);
      |                      ^
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:269:30: error: ‘const class llvm::SmallString<40>’ has no member named ‘data’
  269 |     return std::string(this->data(), this->size());
      |                        ~~~~~~^~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/Support/raw_ostream.h:728:71:   required from here
  728 |   buffer_ostream(raw_ostream &OS) : raw_svector_ostream(Buffer), OS(OS) {}
      |                                                                       ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 0>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 0>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::SMLoc; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1690:55:   required from here
 1690 |         ID(getNewUID(N->getRecordKeeper())), Kind(Kind) {
      |                                                       ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::SMLoc, 0>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::SMLoc, 0>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::Init*; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1690:55:   required from here
 1690 |         ID(getNewUID(N->getRecordKeeper())), Kind(Kind) {
      |                                                       ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::SmallVector(const llvm::SmallVector<T, N>&) [with T = llvm::Init*; unsigned int N = 0]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1702:37:   required from here
 1702 |       : Name(O.Name), Locs(O.Locs), TemplateArgs(O.TemplateArgs),
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1250:14: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘empty’
 1250 |     if (!RHS.empty())
      |          ~~~~^~~~~
In file included from /usr/lib/llvm18/include/llvm/ADT/ArrayRef.h:14,
                 from /usr/lib/llvm18/include/llvm/Support/MemoryBuffer.h:17:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h: In instantiation of ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31: error: no matching function for call to ‘adl_begin(const llvm::SmallVector<llvm::Init*, 0>&)’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31: note: there is 1 candidate
In file included from /usr/lib/llvm18/include/llvm/ADT/STLExtras.h:20:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:62:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&)’
   62 | constexpr auto adl_begin(RangeT &&range)
      |                ^~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:62:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39: error: no matching function for call to ‘begin_impl(const llvm::SmallVector<llvm::Init*, 0>&)’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:27:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&)’
   27 | constexpr auto begin_impl(RangeT &&range)
      |                ^~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:27:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: error: no matching function for call to ‘begin(const llvm::SmallVector<llvm::Init*, 0>&)’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note: there are 6 candidates
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: candidate 1: ‘template<class _Tp> const _Tp* std::begin(const valarray<_Tp>&)’
  120 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&) noexcept;
      |                                     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:120:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   ‘const llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘const std::valarray<_Tp>’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: candidate 2: ‘template<class _Tp> _Tp* std::begin(valarray<_Tp>&)’
  119 |   template<typename _Tp> _Tp* begin(valarray<_Tp>&) noexcept;
      |                               ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:119:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<llvm::Init*, 0>’ have incompatible cv-qualifiers
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: candidate 3: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::begin(_Tp (&)[_Nm])’
  101 |     begin(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<llvm::Init*, 0>’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: candidate 4: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&)’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:66:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22:   required by substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:67:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘begin’
   67 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: candidate 5: ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&)’
   54 |     begin(_Container& __cont) noexcept(noexcept(__cont.begin()))
      |     ^~~~~
/usr/include/c++/15.2.1/bits/range_access.h:54:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.begin()) std::begin(_Container&) [with _Container = const llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22:   required by substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:55:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘begin’
   55 |     -> decltype(__cont.begin())
      |                 ~~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::begin(forward<RangeT>(range))) llvm::adl_detail::begin_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:63:39:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::begin_impl(forward<RangeT>(range))) llvm::adl_begin(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   63 |     -> decltype(adl_detail::begin_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:31:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                      ~~~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: candidate 6: ‘template<class _Tp> constexpr const _Tp* std::begin(initializer_list<_Tp>)’
   90 |     begin(initializer_list<_Tp> __ils) noexcept
      |     ^~~~~
/usr/include/c++/15.2.1/initializer_list:90:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:28:22: note:   ‘llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘std::initializer_list<_Tp>’
   28 |     -> decltype(begin(std::forward<RangeT>(range))) {
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h: In instantiation of ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47: error: no matching function for call to ‘adl_end(const llvm::SmallVector<llvm::Init*, 0>&)’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&)’
   70 | constexpr auto adl_end(RangeT &&range)
      |                ^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: error: no matching function for call to ‘end_impl(const llvm::SmallVector<llvm::Init*, 0>&)’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&)’
   35 | constexpr auto end_impl(RangeT &&range)
      |                ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: error: no matching function for call to ‘end(const llvm::SmallVector<llvm::Init*, 0>&)’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note: there are 6 candidates
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 1: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘const llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘const std::valarray<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 2: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<llvm::Init*, 0>’ have incompatible cv-qualifiers
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 3: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<llvm::Init*, 0>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 4: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 5: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1894:47:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1894 |     return std::find(adl_begin(Range), adl_end(Range), Element) !=
      |                                        ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 6: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘std::initializer_list<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h: In instantiation of ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19: error: no matching function for call to ‘adl_end(const llvm::SmallVector<llvm::Init*, 0>&)’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&)’
   70 | constexpr auto adl_end(RangeT &&range)
      |                ^~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:70:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: error: no matching function for call to ‘end_impl(const llvm::SmallVector<llvm::Init*, 0>&)’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37: note: there is 1 candidate
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: candidate 1: ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&)’
   35 | constexpr auto end_impl(RangeT &&range)
      |                ^~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:35:16: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: error: no matching function for call to ‘end(const llvm::SmallVector<llvm::Init*, 0>&)’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note: there are 6 candidates
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: candidate 1: ‘template<class _Tp> const _Tp* std::end(const valarray<_Tp>&)’
  122 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&) noexcept;
      |                                     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:122:37: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘const llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘const std::valarray<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: candidate 2: ‘template<class _Tp> _Tp* std::end(valarray<_Tp>&)’
  121 |   template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
      |                               ^~~
/usr/include/c++/15.2.1/bits/range_access.h:121:31: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   types ‘std::valarray<_Tp>’ and ‘const llvm::SmallVector<llvm::Init*, 0>’ have incompatible cv-qualifiers
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: candidate 3: ‘template<class _Tp, long unsigned int _Nm> constexpr _Tp* std::end(_Tp (&)[_Nm])’
  112 |     end(_Tp (&__arr)[_Nm]) noexcept
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:112:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   mismatched types ‘_Tp [_Nm]’ and ‘const llvm::SmallVector<llvm::Init*, 0>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: candidate 4: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&)’
   90 |     end(const _Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:90:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(const _Container&) [with _Container = llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:91:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   91 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: candidate 5: ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&)’
   78 |     end(_Container& __cont) noexcept(noexcept(__cont.end()))
      |     ^~~
/usr/include/c++/15.2.1/bits/range_access.h:78:5: note: template argument deduction/substitution failed:
/usr/include/c++/15.2.1/bits/range_access.h: In substitution of ‘template<class _Container> constexpr decltype (__cont.end()) std::end(_Container&) [with _Container = const llvm::SmallVector<llvm::Init*, 0>]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20:   required by substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/bits/range_access.h:79:24: error: ‘const class llvm::SmallVector<llvm::Init*, 0>’ has no member named ‘end’
   79 |     -> decltype(__cont.end())
      |                 ~~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/ADL.h: In substitution of ‘template<class RangeT> constexpr decltype (std::end(forward<RangeT>(range))) llvm::adl_detail::end_impl(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:71:37:   required by substitution of ‘template<class RangeT> constexpr decltype (llvm::adl_detail::end_impl(forward<RangeT>(range))) llvm::adl_end(RangeT&&) [with RangeT = const llvm::SmallVector<llvm::Init*, 0>&]’
   71 |     -> decltype(adl_detail::end_impl(std::forward<RangeT>(range))) {
      |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/STLExtras.h:1895:19:   required from ‘bool llvm::is_contained(R&&, const E&) [with R = const SmallVector<Init*, 0>&; E = Init*]’
 1895 |            adl_end(Range);
      |            ~~~~~~~^~~~~~~
/usr/lib/llvm18/include/llvm/TableGen/Record.h:1771:30:   required from here
 1771 |     return llvm::is_contained(TemplateArgs, Name);
      |            ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: candidate 6: ‘template<class _Tp> constexpr const _Tp* std::end(initializer_list<_Tp>)’
  101 |     end(initializer_list<_Tp> __ils) noexcept
      |     ^~~
/usr/include/c++/15.2.1/initializer_list:101:5: note: template argument deduction/substitution failed:
/usr/lib/llvm18/include/llvm/ADT/ADL.h:36:20: note:   ‘llvm::SmallVector<llvm::Init*, 0>’ is not derived from ‘std::initializer_list<_Tp>’
   36 |     -> decltype(end(std::forward<RangeT>(range))) {
      |                 ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::Init*; unsigned int N = 4]’:
/usr/lib/llvm18/include/llvm/TableGen/Record.h:2273:51:   required from here
 2273 |   explicit RecordResolver(Record &R) : Resolver(&R) {}
      |                                                   ^
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::Init*, 4>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::Init*, 4>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = llvm::StringRef; unsigned int N = 3]’:
/startdir/src/clang-18.1.8.src/utils/TableGen/ClangOptionDocEmitter.cpp:374:28:   required from here
  374 |     SmallVector<StringRef> Values;
      |                            ^~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<llvm::StringRef>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<llvm::StringRef>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h: In instantiation of ‘llvm::SmallVector<T, N>::~SmallVector() [with T = char; unsigned int N = 32]’:
/usr/lib/llvm18/include/llvm/ADT/SmallString.h:29:3:   required from ‘bool llvm::detail::to_float(const llvm::Twine&, N&, N (*)(const char*, char**)) [with N = float]’
   29 |   SmallString() = default;
      |   ^~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/StringExtras.h:298:26:   required from here
  298 |   return detail::to_float(T, Num, strtof);
      |          ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:31: error: ‘class llvm::SmallVector<char, 32>’ has no member named ‘begin’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                         ~~~~~~^~~~~
/usr/lib/llvm18/include/llvm/ADT/SmallVector.h:1215:46: error: ‘class llvm::SmallVector<char, 32>’ has no member named ‘end’
 1215 |     this->destroy_range(this->begin(), this->end());
      |                                        ~~~~~~^~~
[210/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangSyntaxEmitter.cpp.o
[211/2074] Building CXX object tools/extra/clang-tidy/misc/ConfusableTable/CMakeFiles/clang-tidy-confusable-chars-gen.dir/BuildConfusableTable.cpp.o
[212/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangASTPropertiesEmitter.cpp.o
[213/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/RISCVVEmitter.cpp.o
[214/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/SveEmitter.cpp.o
[215/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOpenCLBuiltinEmitter.cpp.o
[216/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangDiagnosticsEmitter.cpp.o
[217/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/NeonEmitter.cpp.o
[218/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/MveEmitter.cpp.o
[219/2074] Building CXX object utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangAttrEmitter.cpp.o
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
==> ERROR: Build failed, check /home/alhp/workspace/chroot/build_d5a9a2c4-0112-4f38-8c9e-96ad4c4be531/build
