Mock Version: 2.15 Mock Version: 2.15 Mock Version: 2.15 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target riscv64 --nodeps /builddir/build/SPECS/cvise.spec'], chrootPath='/var/lib/mock/f38-build-722809-98855/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=604800uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target riscv64 --nodeps /builddir/build/SPECS/cvise.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: riscv64 Building for target riscv64 setting SOURCE_DATE_EPOCH=1642636800 Wrote: /builddir/build/SRPMS/cvise-2.4.0-3.fc38.src.rpm Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target riscv64 --nodeps /builddir/build/SPECS/cvise.spec'], chrootPath='/var/lib/mock/f38-build-722809-98855/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=604800uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target riscv64 --nodeps /builddir/build/SPECS/cvise.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: riscv64 Building for target riscv64 setting SOURCE_DATE_EPOCH=1642636800 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.HCy8KB + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf cvise-2.4.0 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/v2.4.0.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd cvise-2.4.0 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.mcO6tg + umask 022 + cd /builddir/build/BUILD + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd cvise-2.4.0 + mkdir objdir + cd objdir + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + /usr/bin/cmake -S . -B redhat-linux-build -DCMAKE_C_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_CXX_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_Fortran_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_INSTALL_DO_STRIP:BOOL=OFF -DCMAKE_INSTALL_PREFIX:PATH=/usr -DINCLUDE_INSTALL_DIR:PATH=/usr/include -DLIB_INSTALL_DIR:PATH=/usr/lib64 -DSYSCONF_INSTALL_DIR:PATH=/etc -DSHARE_INSTALL_PREFIX:PATH=/usr/share -DLIB_SUFFIX=64 -DBUILD_SHARED_LIBS:BOOL=ON .. -B riscv64-redhat-linux-gnu -DCMAKE_INSTALL_LIBEXECDIR=/usr/libexec -DCMAKE_INSTALL_BINDIR=/usr/bin -DCMAKE_INSTALL_DATADIR=/usr/share -DCMAKE_BUILD_TYPE= -DCMAKE_SKIP_RPATH=TRUE CMake Warning: Ignoring extra path from command line: "/builddir/build/BUILD/cvise-2.4.0/objdir" -- The C compiler identification is GNU 13.1.1 -- The CXX compiler identification is GNU 13.1.1 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/gcc - 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/g++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Could NOT find FFI (missing: FFI_LIBRARIES HAVE_FFI_CALL) -- Performing Test Terminfo_LINKABLE -- Performing Test Terminfo_LINKABLE - Success -- Found Terminfo: /usr/lib64/libtinfo.so -- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) -- Found LLVM 16.0.5 -- Using LLVMConfig.cmake in /usr/lib64/cmake/llvm -- Could NOT find FFI (missing: FFI_LIBRARIES HAVE_FFI_CALL) -- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) -- Using ClangConfig.cmake in /usr/lib64/cmake/clang -- Found PythonInterp: /usr/bin/python3 (found suitable version "3.11.3", minimum required is "3.6") -- Found FLEX: /usr/bin/flex (found version "2.6.4") -- Looking for dlfcn.h -- Looking for dlfcn.h - found -- Looking for inttypes.h -- Looking for inttypes.h - found -- Looking for memory.h -- Looking for memory.h - found -- Looking for stdint.h -- Looking for stdint.h - found -- Looking for stdlib.h -- Looking for stdlib.h - found -- Looking for strings.h -- Looking for strings.h - found -- Looking for string.h -- Looking for string.h - found -- Looking for sys/stat.h -- Looking for sys/stat.h - found -- Looking for sys/types.h -- Looking for sys/types.h - found -- Looking for unistd.h -- Looking for unistd.h - found -- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG -- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG - Success -- Using clang-format in /usr/bin/clang-format -- Configuring done (21.1s) -- Generating done (0.2s) CMake Warning: Manually-specified variables were not used by the project: CMAKE_C_FLAGS_RELEASE CMAKE_Fortran_FLAGS_RELEASE CMAKE_INSTALL_DO_STRIP INCLUDE_INSTALL_DIR LIB_INSTALL_DIR LIB_SUFFIX SHARE_INSTALL_PREFIX SYSCONF_INSTALL_DIR -- Build files have been written to: /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu + /usr/bin/make -O -j4 V=1 VERBOSE=1 VERBOSE=1 -C riscv64-redhat-linux-gnu make: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' /usr/bin/cmake -S/builddir/build/BUILD/cvise-2.4.0 -B/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu --check-build-system CMakeFiles/Makefile.cmake 0 make: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' /usr/bin/cmake -E cmake_progress_start /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/CMakeFiles /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu//CMakeFiles/progress.marks make: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' /usr/bin/make -f CMakeFiles/Makefile2 all /usr/bin/make -f clang_delta/CMakeFiles/clang_delta.dir/build.make clang_delta/CMakeFiles/clang_delta.dir/depend /usr/bin/make -f clex/CMakeFiles/clex.dir/build.make clex/CMakeFiles/clex.dir/depend /usr/bin/make -f clex/CMakeFiles/strlex.dir/build.make clex/CMakeFiles/strlex.dir/depend /usr/bin/make -f delta/CMakeFiles/topformflat.dir/build.make delta/CMakeFiles/topformflat.dir/depend make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /builddir/build/BUILD/cvise-2.4.0 /builddir/build/BUILD/cvise-2.4.0/clang_delta /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clang_delta /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clang_delta/CMakeFiles/clang_delta.dir/DependInfo.cmake --color= make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' /usr/bin/make -f clang_delta/CMakeFiles/clang_delta.dir/build.make clang_delta/CMakeFiles/clang_delta.dir/build make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 3%] [FLEX][topformflat_scanner] Building scanner with flex 2.6.4 cd /builddir/build/BUILD/cvise-2.4.0/delta && /usr/bin/flex -o/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/delta/topformflat.c topformflat.l make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 3%] [FLEX][strlex_scanner] Building scanner with flex 2.6.4 cd /builddir/build/BUILD/cvise-2.4.0/clex && /usr/bin/flex -o/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex/strlex.c strlex.l make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 3%] [FLEX][clex_scanner] Building scanner with flex 2.6.4 cd /builddir/build/BUILD/cvise-2.4.0/clex && /usr/bin/flex -o/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex/clex.c clex.l make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /builddir/build/BUILD/cvise-2.4.0 /builddir/build/BUILD/cvise-2.4.0/clex /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex/CMakeFiles/clex.dir/DependInfo.cmake --color= make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /builddir/build/BUILD/cvise-2.4.0 /builddir/build/BUILD/cvise-2.4.0/clex /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex/CMakeFiles/strlex.dir/DependInfo.cmake --color= make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' /usr/bin/make -f clex/CMakeFiles/clex.dir/build.make clex/CMakeFiles/clex.dir/build /usr/bin/make -f clex/CMakeFiles/strlex.dir/build.make clex/CMakeFiles/strlex.dir/build make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /builddir/build/BUILD/cvise-2.4.0 /builddir/build/BUILD/cvise-2.4.0/delta /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/delta /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/delta/CMakeFiles/topformflat.dir/DependInfo.cmake --color= make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' /usr/bin/make -f delta/CMakeFiles/topformflat.dir/build.make delta/CMakeFiles/topformflat.dir/build make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 5%] Building C object clex/CMakeFiles/clex.dir/clex.c.o cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex && /usr/bin/gcc -DHAVE_CONFIG_H -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex -I/builddir/build/BUILD/cvise-2.4.0/clex -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -Wall -Wextra -Wno-unused-function -MD -MT clex/CMakeFiles/clex.dir/clex.c.o -MF CMakeFiles/clex.dir/clex.c.o.d -o CMakeFiles/clex.dir/clex.c.o -c /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex/clex.c make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 8%] Building C object clex/CMakeFiles/strlex.dir/strlex.c.o cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex && /usr/bin/gcc -DHAVE_CONFIG_H -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex -I/builddir/build/BUILD/cvise-2.4.0/clex -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -Wall -Wextra -Wno-unused-function -MD -MT clex/CMakeFiles/strlex.dir/strlex.c.o -MF CMakeFiles/strlex.dir/strlex.c.o.d -o CMakeFiles/strlex.dir/strlex.c.o -c /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex/strlex.c make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 6%] Building C object delta/CMakeFiles/topformflat.dir/topformflat.c.o cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/delta && /usr/bin/gcc -DHAVE_CONFIG_H -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/delta -I/builddir/build/BUILD/cvise-2.4.0/delta -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -Wall -Wextra -Wno-unused-function -Wno-unused-parameter -MD -MT delta/CMakeFiles/topformflat.dir/topformflat.c.o -MF CMakeFiles/topformflat.dir/topformflat.c.o.d -o CMakeFiles/topformflat.dir/topformflat.c.o -c /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/delta/topformflat.c make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 9%] Building C object clex/CMakeFiles/clex.dir/driver.c.o cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex && /usr/bin/gcc -DHAVE_CONFIG_H -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex -I/builddir/build/BUILD/cvise-2.4.0/clex -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -Wall -Wextra -MD -MT clex/CMakeFiles/clex.dir/driver.c.o -MF CMakeFiles/clex.dir/driver.c.o.d -o CMakeFiles/clex.dir/driver.c.o -c /builddir/build/BUILD/cvise-2.4.0/clex/driver.c make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 10%] Building C object clex/CMakeFiles/strlex.dir/driver.c.o cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex && /usr/bin/gcc -DHAVE_CONFIG_H -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex -I/builddir/build/BUILD/cvise-2.4.0/clex -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -Wall -Wextra -MD -MT clex/CMakeFiles/strlex.dir/driver.c.o -MF CMakeFiles/strlex.dir/driver.c.o.d -o CMakeFiles/strlex.dir/driver.c.o -c /builddir/build/BUILD/cvise-2.4.0/clex/driver.c make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 11%] Linking C executable topformflat cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/delta && /usr/bin/cmake -E cmake_link_script CMakeFiles/topformflat.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -Wall -Wextra -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -rdynamic CMakeFiles/topformflat.dir/topformflat.c.o -o topformflat make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[1]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 13%] Built target topformflat make[1]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 12%] Linking C executable clex cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex && /usr/bin/cmake -E cmake_link_script CMakeFiles/clex.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -Wall -Wextra -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -rdynamic CMakeFiles/clex.dir/clex.c.o CMakeFiles/clex.dir/driver.c.o -o clex make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[1]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 14%] Built target clex make[1]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 13%] Linking C executable strlex cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clex && /usr/bin/cmake -E cmake_link_script CMakeFiles/strlex.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -Wall -Wextra -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -rdynamic CMakeFiles/strlex.dir/strlex.c.o CMakeFiles/strlex.dir/driver.c.o -o strlex make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[1]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 16%] Built target strlex make[1]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 17%] Building CXX object clang_delta/CMakeFiles/clang_delta.dir/ClangDelta.cpp.o cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clang_delta && /usr/bin/g++ -DHAVE_CONFIG_H -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu -I/builddir/build/BUILD/cvise-2.4.0/clang_delta -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -std=c++14 -fno-rtti -fno-strict-aliasing -Wall -Wextra -Wno-unused-parameter -fvisibility-inlines-hidden -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -MD -MT clang_delta/CMakeFiles/clang_delta.dir/ClangDelta.cpp.o -MF CMakeFiles/clang_delta.dir/ClangDelta.cpp.o.d -o CMakeFiles/clang_delta.dir/ClangDelta.cpp.o -c /builddir/build/BUILD/cvise-2.4.0/clang_delta/ClangDelta.cpp make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' In file included from /usr/include/llvm/Support/raw_ostream.h:16, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/ClangDelta.cpp:19: /usr/include/llvm/ADT/SmallVector.h: In static member function 'static void llvm::SmallVectorTemplateBase >::uninitialized_move(It1, It1, It2)': /usr/include/llvm/ADT/SmallVector.h:352:10: error: 'uninitialized_move' is not a member of 'std'; did you mean 'uninitialized_copy'? 352 | std::uninitialized_move(I, E, Dest); | ^~~~~~~~~~~~~~~~~~ | uninitialized_copy In file included from /usr/include/llvm/ADT/StringRef.h:12, from /usr/include/llvm/Support/raw_ostream.h:17: /usr/include/llvm/ADT/DenseMapInfo.h: At global scope: /usr/include/llvm/ADT/DenseMapInfo.h:294:52: error: 'variant' is not a member of 'std' 294 | template struct DenseMapInfo> { | ^~~~~~~ /usr/include/llvm/ADT/DenseMapInfo.h:294:52: note: 'std::variant' is only available from C++17 onwards /usr/include/llvm/ADT/DenseMapInfo.h:294:52: error: 'variant' is not a member of 'std' /usr/include/llvm/ADT/DenseMapInfo.h:294:52: note: 'std::variant' is only available from C++17 onwards /usr/include/llvm/ADT/DenseMapInfo.h:294:62: error: expected parameter pack before '...' 294 | template struct DenseMapInfo> { | ^~~ /usr/include/llvm/ADT/DenseMapInfo.h:294:62: error: template argument 1 is invalid /usr/include/llvm/ADT/DenseMapInfo.h:294:65: error: expected unqualified-id before '>' token 294 | template struct DenseMapInfo> { | ^~ In file included from /usr/include/llvm/ADT/STLFunctionalExtras.h:18, from /usr/include/llvm/ADT/StringRef.h:13: /usr/include/llvm/ADT/STLForwardCompat.h:46:35: error: 'optional' in namespace 'std' does not name a template type 46 | auto transformOptional(const std::optional &O, const Function &F) | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:46:30: note: 'std::optional' is only available from C++17 onwards 46 | auto transformOptional(const std::optional &O, const Function &F) | ^~~ /usr/include/llvm/ADT/STLForwardCompat.h:46:43: error: expected ',' or '...' before '<' token 46 | auto transformOptional(const std::optional &O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:47:13: error: 'optional' in namespace 'std' does not name a template type 47 | -> std::optional { | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:47:8: note: 'std::optional' is only available from C++17 onwards 47 | -> std::optional { | ^~~ /usr/include/llvm/ADT/STLForwardCompat.h:47:21: error: expected initializer before '<' token 47 | -> std::optional { | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:29: error: 'optional' is not a member of 'std' 56 | auto transformOptional(std::optional &&O, const Function &F) | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:56:29: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/ADT/STLForwardCompat.h:56:39: error: expected primary-expression before '>' token 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:43: error: label 'O' referenced outside of any function 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:46: error: expected primary-expression before 'const' 56 | auto transformOptional(std::optional &&O, const Function &F) | ^~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:56:63: error: expression list treated as compound expression in initializer [-fpermissive] 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:64: error: expected ';' before '->' token 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ | ; 57 | -> std::optional { | ~~ /usr/include/llvm/ADT/StringRef.h:104:54: error: expected ')' before 'Str' 104 | /*implicit*/ constexpr StringRef(std::string_view Str) | ~ ^~~~ | ) /usr/include/llvm/ADT/StringRef.h:248:14: error: expected type-specifier 248 | operator std::string_view() const { | ^~~ /usr/include/llvm/ADT/StringRef.h: In member function 'size_t llvm::StringRef::find(char, size_t) const': /usr/include/llvm/ADT/StringRef.h:296:19: error: 'string_view' is not a member of 'std' 296 | return std::string_view(*this).find(C, From); | ^~~~~~~~~~~ /usr/include/llvm/ADT/StringRef.h:296:19: note: 'std::string_view' is only available from C++17 onwards /usr/include/llvm/Support/raw_ostream.h: At global scope: /usr/include/llvm/Support/raw_ostream.h:252:38: error: 'string_view' in namespace 'std' does not name a type 252 | raw_ostream &operator<<(const std::string_view &Str) { | ^~~~~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:252:33: note: 'std::string_view' is only available from C++17 onwards 252 | raw_ostream &operator<<(const std::string_view &Str) { | ^~~ /usr/include/llvm/Support/raw_ostream.h: In member function 'llvm::raw_ostream& llvm::raw_ostream::operator<<(const int&)': /usr/include/llvm/Support/raw_ostream.h:253:22: error: request for member 'data' in 'Str', which is of non-class type 'const int' 253 | return write(Str.data(), Str.length()); | ^~~~ /usr/include/llvm/Support/raw_ostream.h:253:34: error: request for member 'length' in 'Str', which is of non-class type 'const int' 253 | return write(Str.data(), Str.length()); | ^~~~~~ /usr/include/llvm/Support/raw_ostream.h: At global scope: /usr/include/llvm/Support/raw_ostream.h:459:16: error: 'optional' in namespace 'std' does not name a template type 459 | mutable std::optional HasColors; | ^~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:459:11: note: 'std::optional' is only available from C++17 onwards 459 | mutable std::optional HasColors; | ^~~ /usr/include/llvm/Support/raw_ostream.h:757:47: error: 'std::nullopt_t' has not been declared 757 | raw_ostream &operator<<(raw_ostream &OS, std::nullopt_t); | ^~~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:761:53: error: 'optional' in namespace 'std' does not name a template type 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:761:48: note: 'std::optional' is only available from C++17 onwards 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^~~ /usr/include/llvm/Support/raw_ostream.h:761:61: error: expected ',' or '...' before '<' token 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^ /usr/include/llvm/Support/raw_ostream.h: In function 'llvm::raw_ostream& llvm::operator<<(raw_ostream&, int)': /usr/include/llvm/Support/raw_ostream.h:762:7: error: 'O' was not declared in this scope; did you mean 'OS'? 762 | if (O) | ^ | OS /usr/include/llvm/Support/raw_ostream.h:765:16: error: 'nullopt' is not a member of 'std' 765 | OS << std::nullopt; | ^~~~~~~ /usr/include/llvm/Support/raw_ostream.h:765:16: note: 'std::nullopt' is only available from C++17 onwards make[2]: *** [clang_delta/CMakeFiles/clang_delta.dir/build.make:121: clang_delta/CMakeFiles/clang_delta.dir/ClangDelta.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 4%] Building CXX object clang_delta/CMakeFiles/clang_delta.dir/AggregateToScalar.cpp.o cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clang_delta && /usr/bin/g++ -DHAVE_CONFIG_H -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu -I/builddir/build/BUILD/cvise-2.4.0/clang_delta -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -std=c++14 -fno-rtti -fno-strict-aliasing -Wall -Wextra -Wno-unused-parameter -fvisibility-inlines-hidden -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -MD -MT clang_delta/CMakeFiles/clang_delta.dir/AggregateToScalar.cpp.o -MF CMakeFiles/clang_delta.dir/AggregateToScalar.cpp.o.d -o CMakeFiles/clang_delta.dir/AggregateToScalar.cpp.o -c /builddir/build/BUILD/cvise-2.4.0/clang_delta/AggregateToScalar.cpp In file included from /usr/include/llvm/ADT/DenseMap.h:17, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/AggregateToScalar.h:16, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/AggregateToScalar.cpp:15: /usr/include/llvm/ADT/DenseMapInfo.h:294:52: error: 'variant' is not a member of 'std' 294 | template struct DenseMapInfo> { | ^~~~~~~ /usr/include/llvm/ADT/DenseMapInfo.h:294:52: note: 'std::variant' is only available from C++17 onwards /usr/include/llvm/ADT/DenseMapInfo.h:294:52: error: 'variant' is not a member of 'std' /usr/include/llvm/ADT/DenseMapInfo.h:294:52: note: 'std::variant' is only available from C++17 onwards /usr/include/llvm/ADT/DenseMapInfo.h:294:62: error: expected parameter pack before '...' 294 | template struct DenseMapInfo> { | ^~~ /usr/include/llvm/ADT/DenseMapInfo.h:294:62: error: template argument 1 is invalid /usr/include/llvm/ADT/DenseMapInfo.h:294:65: error: expected unqualified-id before '>' token 294 | template struct DenseMapInfo> { | ^~ In file included from /usr/include/llvm/Support/MathExtras.h:16, from /usr/include/llvm/ADT/DenseMap.h:21: /usr/include/llvm/ADT/bit.h:64:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'? 64 | template >> | ^~~~~~~~~~~~~ | is_integral /usr/include/llvm/ADT/bit.h:64:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'? 64 | template >> | ^~~~~~~~~~~~~ | is_integral /usr/include/llvm/ADT/bit.h:64:70: error: template argument 1 is invalid 64 | template >> | ^ /usr/include/llvm/ADT/bit.h:64:73: error: expected unqualified-id before '>' token 64 | template >> | ^ /usr/include/llvm/ADT/bit.h:109:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 109 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:109:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 109 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:109:70: error: template argument 1 is invalid 109 | template >> | ^ /usr/include/llvm/ADT/bit.h:109:73: error: expected unqualified-id before '>' token 109 | template >> | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_zero(T)': /usr/include/llvm/ADT/bit.h:180:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 180 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:180:37: error: expected primary-expression before '>' token 180 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:180:38: error: expected primary-expression before ',' token 180 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_zero(T)': /usr/include/llvm/ADT/bit.h:246:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 246 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:246:37: error: expected primary-expression before '>' token 246 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:246:38: error: expected primary-expression before ',' token 246 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_one(T)': /usr/include/llvm/ADT/bit.h:259:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 259 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:259:37: error: expected primary-expression before '>' token 259 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:259:38: error: expected primary-expression before ',' token 259 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_one(T)': /usr/include/llvm/ADT/bit.h:272:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 272 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:272:37: error: expected primary-expression before '>' token 272 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:272:38: error: expected primary-expression before ',' token 272 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::bit_width(T)': /usr/include/llvm/ADT/bit.h:282:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 282 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:282:37: error: expected primary-expression before '>' token 282 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:282:38: error: expected primary-expression before ',' token 282 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_floor(T)': /usr/include/llvm/ADT/bit.h:292:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 292 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:292:37: error: expected primary-expression before '>' token 292 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:292:38: error: expected primary-expression before ',' token 292 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_ceil(T)': /usr/include/llvm/ADT/bit.h:307:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 307 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:307:37: error: expected primary-expression before '>' token 307 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:307:38: error: expected primary-expression before ',' token 307 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: At global scope: /usr/include/llvm/ADT/bit.h:348:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 348 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:348:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 348 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:348:70: error: template argument 1 is invalid 348 | template >> | ^ /usr/include/llvm/ADT/bit.h:348:73: error: expected unqualified-id before '>' token 348 | template >> | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countTrailingZeros(T)': /usr/include/llvm/Support/MathExtras.h:78:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 78 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:78:37: error: expected primary-expression before '>' token 78 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:78:38: error: expected primary-expression before ',' token 78 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countLeadingZeros(T)': /usr/include/llvm/Support/MathExtras.h:90:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 90 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:90:37: error: expected primary-expression before '>' token 90 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:90:38: error: expected primary-expression before ',' token 90 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_32(uint32_t)': /usr/include/llvm/Support/MathExtras.h:325:16: error: 'has_single_bit' is not a member of 'llvm' 325 | return llvm::has_single_bit(Value); | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_64(uint64_t)': /usr/include/llvm/Support/MathExtras.h:330:16: error: 'has_single_bit' is not a member of 'llvm' 330 | return llvm::has_single_bit(Value); | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countLeadingOnes(T)': /usr/include/llvm/Support/MathExtras.h:341:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 341 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:341:37: error: expected primary-expression before '>' token 341 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:341:38: error: expected primary-expression before ',' token 341 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countTrailingOnes(T)': /usr/include/llvm/Support/MathExtras.h:354:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 354 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:354:37: error: expected primary-expression before '>' token 354 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:354:38: error: expected primary-expression before ',' token 354 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countPopulation(T)': /usr/include/llvm/Support/MathExtras.h:364:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 364 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:364:37: error: expected primary-expression before '>' token 364 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:364:38: error: expected primary-expression before ',' token 364 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:366:26: error: 'popcount' is not a member of 'llvm' 366 | return (unsigned)llvm::popcount(Value); | ^~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_32(uint32_t, unsigned int&, unsigned int&)': /usr/include/llvm/Support/MathExtras.h:379:19: error: 'popcount' is not a member of 'llvm' 379 | MaskLen = llvm::popcount(Value); | ^~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_64(uint64_t, unsigned int&, unsigned int&)': /usr/include/llvm/Support/MathExtras.h:392:19: error: 'popcount' is not a member of 'llvm' 392 | MaskLen = llvm::popcount(Value); | ^~~~~~~~ /usr/include/llvm/Support/MathExtras.h: At global scope: /usr/include/llvm/Support/MathExtras.h:620:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:620:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:620:38: error: template argument 1 is invalid 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^ /usr/include/llvm/Support/MathExtras.h:620:39: error: expected unqualified-id before ',' token 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^ In file included from /usr/include/clang/Basic/LLVM.h:21, from /usr/include/clang/Rewrite/Core/Rewriter.h:17, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/Transformation.h:19, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/AggregateToScalar.h:18: /usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std' 266 | struct CastIsPossible> { | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:266:41: error: template argument 2 is invalid 266 | struct CastIsPossible> { | ^~~~ /usr/include/llvm/Support/Casting.h:266:45: error: expected unqualified-id before '>' token 266 | struct CastIsPossible> { | ^~ /usr/include/llvm/Support/Casting.h:369:16: error: 'optional' is not a member of 'std' 369 | std::optional, From, | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:369:16: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:369:16: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:369:16: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:369:27: error: wrong number of template arguments (1, should be 3) 369 | std::optional, From, | ^ /usr/include/llvm/Support/Casting.h:310:8: note: provided for 'template struct llvm::DefaultDoCastIfPossible' 310 | struct DefaultDoCastIfPossible { | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/Casting.h:370:65: error: expected '{' before '>' token 370 | detail::SelfType>> { | ^ /usr/include/llvm/Support/Casting.h:540:26: error: 'optional' is not a member of 'std' 540 | struct CastInfo> : public OptionalValueCast { | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:540:26: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:540:26: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:540:26: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:540:35: error: template argument 2 is invalid 540 | struct CastInfo> : public OptionalValueCast { | ^~~~ /usr/include/llvm/Support/Casting.h:540:39: error: expected unqualified-id before '>' token 540 | struct CastInfo> : public OptionalValueCast { | ^~ /usr/include/llvm/Support/Casting.h:595:10: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'? 595 | std::is_pointer_v || std::is_constructible_v; | ^~~~~~~~~~~~ | is_pointer /usr/include/llvm/Support/Casting.h:595:24: error: expected primary-expression before '>' token 595 | std::is_pointer_v || std::is_constructible_v; | ^ /usr/include/llvm/Support/Casting.h:595:26: error: expected primary-expression before '||' token 595 | std::is_pointer_v || std::is_constructible_v; | ^~ /usr/include/llvm/Support/Casting.h:595:34: error: 'is_constructible_v' is not a member of 'std'; did you mean 'is_constructible'? 595 | std::is_pointer_v || std::is_constructible_v; | ^~~~~~~~~~~~~~~~~~ | is_constructible /usr/include/llvm/Support/Casting.h:595:54: error: expected primary-expression before ',' token 595 | std::is_pointer_v || std::is_constructible_v; | ^ /usr/include/llvm/Support/Casting.h:610:50: error: 'optional' is not a member of 'std' 610 | template struct ValueIsPresent> { | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:610:50: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:610:50: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:610:50: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:610:59: error: template argument 1 is invalid 610 | template struct ValueIsPresent> { | ^ /usr/include/llvm/Support/Casting.h:610:60: error: expected unqualified-id before '>' token 610 | template struct ValueIsPresent> { | ^~ In file included from /usr/include/clang/Basic/LLVM.h:24: /usr/include/llvm/ADT/None.h:26:14: error: 'nullopt_t' in namespace 'std' does not name a type; did you mean 'nullptr_t'? 26 | typedef std::nullopt_t NoneType; | ^~~~~~~~~ | nullptr_t /usr/include/llvm/ADT/None.h:28:23: error: 'nullopt_t' in namespace 'std' does not name a type; did you mean 'nullptr_t'? 28 | inline constexpr std::nullopt_t None = std::nullopt; | ^~~~~~~~~ | nullptr_t In file included from /usr/include/clang/Basic/LLVM.h:27: /usr/include/llvm/ADT/SmallVector.h: In static member function 'static void llvm::SmallVectorTemplateBase >::uninitialized_move(It1, It1, It2)': /usr/include/llvm/ADT/SmallVector.h:352:10: error: 'uninitialized_move' is not a member of 'std'; did you mean 'uninitialized_copy'? 352 | std::uninitialized_move(I, E, Dest); | ^~~~~~~~~~~~~~~~~~ | uninitialized_copy /usr/include/clang/Basic/LLVM.h: At global scope: /usr/include/clang/Basic/LLVM.h:40:47: error: 'optional' in namespace 'std' does not name a template type 40 | template using Optional = std::optional; | ^~~~~~~~ /usr/include/clang/Basic/LLVM.h:40:42: note: 'std::optional' is only available from C++17 onwards 40 | template using Optional = std::optional; | ^~~ /usr/include/clang/Basic/LLVM.h:72:15: error: 'Optional' has not been declared in 'llvm' 72 | using llvm::Optional; | ^~~~~~~~ In file included from /usr/include/llvm/ADT/STLFunctionalExtras.h:18, from /usr/include/llvm/ADT/StringRef.h:13, from /usr/include/clang/Basic/SourceLocation.h:18, from /usr/include/clang/Rewrite/Core/Rewriter.h:18: /usr/include/llvm/ADT/STLForwardCompat.h:46:35: error: 'optional' in namespace 'std' does not name a template type 46 | auto transformOptional(const std::optional &O, const Function &F) | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:46:30: note: 'std::optional' is only available from C++17 onwards 46 | auto transformOptional(const std::optional &O, const Function &F) | ^~~ /usr/include/llvm/ADT/STLForwardCompat.h:46:43: error: expected ',' or '...' before '<' token 46 | auto transformOptional(const std::optional &O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:47:13: error: 'optional' in namespace 'std' does not name a template type 47 | -> std::optional { | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:47:8: note: 'std::optional' is only available from C++17 onwards 47 | -> std::optional { | ^~~ /usr/include/llvm/ADT/STLForwardCompat.h:47:21: error: expected initializer before '<' token 47 | -> std::optional { | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:29: error: 'optional' is not a member of 'std' 56 | auto transformOptional(std::optional &&O, const Function &F) | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:56:29: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/ADT/STLForwardCompat.h:56:39: error: expected primary-expression before '>' token 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:43: error: label 'O' referenced outside of any function 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:46: error: expected primary-expression before 'const' 56 | auto transformOptional(std::optional &&O, const Function &F) | ^~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:56:63: error: expression list treated as compound expression in initializer [-fpermissive] 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:64: error: expected ';' before '->' token 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ | ; 57 | -> std::optional { | ~~ /usr/include/llvm/ADT/StringRef.h:104:54: error: expected ')' before 'Str' 104 | /*implicit*/ constexpr StringRef(std::string_view Str) | ~ ^~~~ | ) /usr/include/llvm/ADT/StringRef.h:248:14: error: expected type-specifier 248 | operator std::string_view() const { | ^~~ /usr/include/llvm/ADT/StringRef.h: In member function 'size_t llvm::StringRef::find(char, size_t) const': /usr/include/llvm/ADT/StringRef.h:296:19: error: 'string_view' is not a member of 'std' 296 | return std::string_view(*this).find(C, From); | ^~~~~~~~~~~ /usr/include/llvm/ADT/StringRef.h:296:19: note: 'std::string_view' is only available from C++17 onwards In file included from /usr/include/clang/Basic/Diagnostic.h:17, from /usr/include/clang/AST/NestedNameSpecifier.h:18, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/RewriteUtils.h:16, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/Transformation.h:20: /usr/include/clang/Basic/DiagnosticIDs.h: At global scope: /usr/include/clang/Basic/DiagnosticIDs.h:241:15: error: 'optional' in namespace 'std' does not name a template type 241 | static std::optional getGroupForWarningOption(StringRef); | ^~~~~~~~ /usr/include/clang/Basic/DiagnosticIDs.h:241:10: note: 'std::optional' is only available from C++17 onwards 241 | static std::optional getGroupForWarningOption(StringRef); | ^~~ /usr/include/clang/Basic/DiagnosticIDs.h:244:15: error: 'optional' in namespace 'std' does not name a template type 244 | static std::optional getGroupForDiag(unsigned DiagID); | ^~~~~~~~ /usr/include/clang/Basic/DiagnosticIDs.h:244:10: note: 'std::optional' is only available from C++17 onwards 244 | static std::optional getGroupForDiag(unsigned DiagID); | ^~~ In file included from /usr/include/llvm/ADT/Hashing.h:49, from /usr/include/llvm/ADT/ArrayRef.h:12, from /usr/include/clang/Basic/Diagnostic.h:21: /usr/include/llvm/Support/SwapByteOrder.h: In function 'uint16_t llvm::ByteSwap_16(uint16_t)': /usr/include/llvm/Support/SwapByteOrder.h:51:60: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_16'? 51 | inline uint16_t ByteSwap_16(uint16_t value) { return llvm::byteswap(value); } | ^~~~~~~~ | ByteSwap_16 /usr/include/llvm/Support/SwapByteOrder.h: In function 'uint32_t llvm::ByteSwap_32(uint32_t)': /usr/include/llvm/Support/SwapByteOrder.h:54:60: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_32'? 54 | inline uint32_t ByteSwap_32(uint32_t value) { return llvm::byteswap(value); } | ^~~~~~~~ | ByteSwap_32 /usr/include/llvm/Support/SwapByteOrder.h: In function 'uint64_t llvm::ByteSwap_64(uint64_t)': /usr/include/llvm/Support/SwapByteOrder.h:57:60: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 57 | inline uint64_t ByteSwap_64(uint64_t value) { return llvm::byteswap(value); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned char llvm::sys::getSwappedBytes(unsigned char)': /usr/include/llvm/Support/SwapByteOrder.h:69:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 69 | inline unsigned char getSwappedBytes(unsigned char C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'signed char llvm::sys::getSwappedBytes(signed char)': /usr/include/llvm/Support/SwapByteOrder.h:70:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 70 | inline signed char getSwappedBytes( signed char C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'char llvm::sys::getSwappedBytes(char)': /usr/include/llvm/Support/SwapByteOrder.h:71:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 71 | inline char getSwappedBytes( char C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'short unsigned int llvm::sys::getSwappedBytes(short unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:73:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 73 | inline unsigned short getSwappedBytes(unsigned short C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'short int llvm::sys::getSwappedBytes(short int)': /usr/include/llvm/Support/SwapByteOrder.h:74:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 74 | inline signed short getSwappedBytes( signed short C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned int llvm::sys::getSwappedBytes(unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:76:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 76 | inline unsigned int getSwappedBytes(unsigned int C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'int llvm::sys::getSwappedBytes(int)': /usr/include/llvm/Support/SwapByteOrder.h:77:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 77 | inline signed int getSwappedBytes( signed int C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long unsigned int llvm::sys::getSwappedBytes(long unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:79:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 79 | inline unsigned long getSwappedBytes(unsigned long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long int llvm::sys::getSwappedBytes(long int)': /usr/include/llvm/Support/SwapByteOrder.h:80:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 80 | inline signed long getSwappedBytes( signed long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long long unsigned int llvm::sys::getSwappedBytes(long long unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:82:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 82 | inline unsigned long long getSwappedBytes(unsigned long long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long long int llvm::sys::getSwappedBytes(long long int)': /usr/include/llvm/Support/SwapByteOrder.h:83:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 83 | inline signed long long getSwappedBytes( signed long long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'float llvm::sys::getSwappedBytes(float)': /usr/include/llvm/Support/SwapByteOrder.h:91:17: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 91 | out.i = llvm::byteswap(in.i); | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'double llvm::sys::getSwappedBytes(double)': /usr/include/llvm/Support/SwapByteOrder.h:101:17: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 101 | out.i = llvm::byteswap(in.i); | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'std::enable_if_t::value, T> llvm::sys::getSwappedBytes(T)': /usr/include/llvm/Support/SwapByteOrder.h:108:13: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 108 | llvm::byteswap(static_cast>(C))); | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/ADT/Hashing.h: At global scope: /usr/include/llvm/ADT/Hashing.h:127:55: error: 'optional' in namespace 'std' does not name a template type 127 | template hash_code hash_value(const std::optional &arg); | ^~~~~~~~ /usr/include/llvm/ADT/Hashing.h:127:50: note: 'std::optional' is only available from C++17 onwards 127 | template hash_code hash_value(const std::optional &arg); | ^~~ /usr/include/llvm/ADT/Hashing.h:127:63: error: expected ',' or '...' before '<' token 127 | template hash_code hash_value(const std::optional &arg); | ^ /usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(const std::tuple<_Args1 ...>&)': /usr/include/llvm/ADT/Hashing.h:658:15: error: 'apply' is not a member of 'std' 658 | return std::apply([](const auto &...xs) { return hash_combine(xs...); }, arg); | ^~~~~ /usr/include/llvm/ADT/Hashing.h:658:15: note: 'std::apply' is only available from C++17 onwards /usr/include/llvm/ADT/Hashing.h: At global scope: /usr/include/llvm/ADT/Hashing.h:668:55: error: 'optional' in namespace 'std' does not name a template type 668 | template hash_code hash_value(const std::optional &arg) { | ^~~~~~~~ /usr/include/llvm/ADT/Hashing.h:668:50: note: 'std::optional' is only available from C++17 onwards 668 | template hash_code hash_value(const std::optional &arg) { | ^~~ /usr/include/llvm/ADT/Hashing.h:668:63: error: expected ',' or '...' before '<' token 668 | template hash_code hash_value(const std::optional &arg) { | ^ /usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(int)': /usr/include/llvm/ADT/Hashing.h:669:10: error: 'arg' was not declared in this scope 669 | return arg ? hash_combine(true, *arg) : hash_value(false); | ^~~ In file included from /usr/include/llvm/ADT/ArrayRef.h:14: /usr/include/llvm/ADT/STLExtras.h: At global scope: /usr/include/llvm/ADT/STLExtras.h:81:22: error: 'void_t' is not a member of 'std' 81 | struct detector>, Op, Args...> { | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:81:22: note: 'std::void_t' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h:81:22: error: 'void_t' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:81:22: note: 'std::void_t' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h:81:39: error: wrong number of template arguments (1, should be at least 2) 81 | struct detector>, Op, Args...> { | ^~ /usr/include/llvm/ADT/STLExtras.h:77:70: note: provided for 'template class Op, class ... Args> struct llvm::detail::detector' 77 | template class Op, class... Args> struct detector { | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:144:24: error: 'disjunction' in namespace 'std' does not name a template type 144 | using is_one_of = std::disjunction...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:144:19: note: 'std::disjunction' is only available from C++17 onwards 144 | using is_one_of = std::disjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:149:26: error: 'conjunction' in namespace 'std' does not name a template type 149 | using are_base_of = std::conjunction...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:149:21: note: 'std::conjunction' is only available from C++17 onwards 149 | using are_base_of = std::conjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:155:37: error: 'is_one_of' was not declared in this scope 155 | : std::integral_constant::value && | ^~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:155:55: error: template argument 2 is invalid 155 | : std::integral_constant::value && | ^ /usr/include/llvm/ADT/STLExtras.h:155:56: error: expected '{' before '::' token 155 | : std::integral_constant::value && | ^~ /usr/include/llvm/ADT/STLExtras.h:224:23: error: 'is_function_v' is not a member of 'std'; did you mean 'is_function'? 224 | bool = std::is_function_v>>> | ^~~~~~~~~~~~~ | is_function /usr/include/llvm/ADT/STLExtras.h:224:77: error: expected primary-expression before '>>' token 224 | bool = std::is_function_v>>> | ^~ /usr/include/llvm/ADT/STLExtras.h:224:77: error: expected '>' before '>>' token /usr/include/llvm/ADT/STLExtras.h:230:8: error: 'optional' in namespace 'std' does not name a template type 230 | std::optional Obj; | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:230:3: note: 'std::optional' is only available from C++17 onwards 230 | std::optional Obj; | ^~~ /usr/include/llvm/ADT/STLExtras.h:232:23: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'? 232 | static_assert(!std::is_pointer_v, | ^~~~~~~~~~~~ | is_pointer /usr/include/llvm/ADT/STLExtras.h:232:46: error: expected primary-expression before '>' token 232 | static_assert(!std::is_pointer_v, | ^ /usr/include/llvm/ADT/STLExtras.h:232:47: error: expected primary-expression before ',' token 232 | static_assert(!std::is_pointer_v, | ^ /usr/include/llvm/ADT/STLExtras.h:257:35: error: 'is_invocable_v' is not a member of 'std' 257 | std::enable_if_t, int> = 0> | ^~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:257:35: error: 'is_invocable_v' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:257:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template using std::enable_if_t = typename std::enable_if::type' 257 | std::enable_if_t, int> = 0> | ^ In file included from /usr/include/c++/13/bits/char_traits.h:50, from /usr/include/c++/13/string:42, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/AggregateToScalar.h:14: /usr/include/c++/13/type_traits:2609:24: note: declared here 2609 | template | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:257:66: error: expected unqualified-id before '=' token 257 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h:263:35: error: 'is_invocable_v' is not a member of 'std' 263 | std::enable_if_t, int> = 0> | ^~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:263:35: error: 'is_invocable_v' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:263:64: error: template argument 1 is invalid 263 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h:263:72: error: expected unqualified-id before '=' token 263 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h: In constructor 'llvm::callable_detail::Callable >::Callable(const T&)': /usr/include/llvm/ADT/STLExtras.h:237:26: error: class 'llvm::callable_detail::Callable >' does not have any field named 'Obj' 237 | Callable(T const &O) : Obj(std::in_place, O) {} | ^~~ /usr/include/llvm/ADT/STLExtras.h:237:35: error: 'in_place' is not a member of 'std' 237 | Callable(T const &O) : Obj(std::in_place, O) {} | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:237:35: note: 'std::in_place' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >& llvm::callable_detail::Callable >::operator=(const llvm::callable_detail::Callable >&)': /usr/include/llvm/ADT/STLExtras.h:243:5: error: 'Obj' was not declared in this scope 243 | Obj = std::nullopt; | ^~~ /usr/include/llvm/ADT/STLExtras.h:243:16: error: 'nullopt' is not a member of 'std' 243 | Obj = std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:243:16: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >& llvm::callable_detail::Callable >::operator=(llvm::callable_detail::Callable >&&)': /usr/include/llvm/ADT/STLExtras.h:250:5: error: 'Obj' was not declared in this scope 250 | Obj = std::nullopt; | ^~~ /usr/include/llvm/ADT/STLExtras.h:250:16: error: 'nullopt' is not a member of 'std' 250 | Obj = std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:250:16: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable >::valid() const': /usr/include/llvm/ADT/STLExtras.h:268:31: error: 'Obj' was not declared in this scope 268 | bool valid() const { return Obj != std::nullopt; } | ^~~ /usr/include/llvm/ADT/STLExtras.h:268:43: error: 'nullopt' is not a member of 'std' 268 | bool valid() const { return Obj != std::nullopt; } | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:268:43: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable >::reset()': /usr/include/llvm/ADT/STLExtras.h:269:25: error: 'Obj' was not declared in this scope 269 | bool reset() { return Obj = std::nullopt; } | ^~~ /usr/include/llvm/ADT/STLExtras.h:269:36: error: 'nullopt' is not a member of 'std' 269 | bool reset() { return Obj = std::nullopt; } | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:269:36: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >::operator reference()': /usr/include/llvm/ADT/STLExtras.h:271:34: error: 'Obj' was not declared in this scope 271 | operator reference() { return *Obj; } | ^~~ /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >::operator const_reference() const': /usr/include/llvm/ADT/STLExtras.h:272:46: error: 'Obj' was not declared in this scope 272 | operator const_reference() const { return *Obj; } | ^~~ /usr/include/llvm/ADT/STLExtras.h: At global scope: /usr/include/llvm/ADT/STLExtras.h:278:38: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'? 278 | static constexpr bool IsPtr = std::is_pointer_v>; | ^~~~~~~~~~~~ | is_pointer /usr/include/llvm/ADT/STLExtras.h:278:67: error: expected primary-expression before '>' token 278 | static constexpr bool IsPtr = std::is_pointer_v>; | ^~ /usr/include/llvm/ADT/STLExtras.h:278:69: error: expected primary-expression before ';' token 278 | static constexpr bool IsPtr = std::is_pointer_v>; | ^ /usr/include/llvm/ADT/STLExtras.h:284:3: error: 'StorageT' does not name a type 284 | StorageT Func = nullptr; | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:307:13: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'? 307 | !std::is_same_v, Callable>, int | ^~~~~~~~~ | is_same /usr/include/llvm/ADT/STLExtras.h:307:59: error: template argument 1 is invalid 307 | !std::is_same_v, Callable>, int | ^ /usr/include/llvm/ADT/STLExtras.h:308:7: error: expected unqualified-id before '=' token 308 | > = 0 | ^ /usr/include/llvm/ADT/STLExtras.h:313:35: error: 'is_invocable_v' is not a member of 'std' 313 | std::enable_if_t, int> = 0> | ^~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:313:35: error: 'is_invocable_v' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:313:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template using std::enable_if_t = typename std::enable_if::type' 313 | std::enable_if_t, int> = 0> | ^ /usr/include/c++/13/type_traits:2609:24: note: declared here 2609 | template | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:313:66: error: expected unqualified-id before '=' token 313 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable::valid() const': /usr/include/llvm/ADT/STLExtras.h:318:31: error: 'Func' was not declared in this scope 318 | bool valid() const { return Func != nullptr; } | ^~~~ /usr/include/llvm/ADT/STLExtras.h: In member function 'void llvm::callable_detail::Callable::reset()': /usr/include/llvm/ADT/STLExtras.h:319:18: error: 'Func' was not declared in this scope 319 | void reset() { Func = nullptr; } | ^~~~ /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable::operator const T&() const': /usr/include/llvm/ADT/STLExtras.h:324:14: error: 'Func' was not declared in this scope 324 | return Func; | ^~~~ /usr/include/llvm/ADT/STLExtras.h:326:26: error: 'is_reference_v' is not a member of 'std'; did you mean 'is_reference'? 326 | static_assert(std::is_reference_v, | ^~~~~~~~~~~~~~ | is_reference /usr/include/llvm/ADT/STLExtras.h:326:42: error: expected primary-expression before '>' token 326 | static_assert(std::is_reference_v, | ^ /usr/include/llvm/ADT/STLExtras.h:326:43: error: expected primary-expression before ',' token 326 | static_assert(std::is_reference_v, | ^ /usr/include/llvm/ADT/STLExtras.h:329:15: error: 'Func' was not declared in this scope 329 | return *Func; | ^~~~ /usr/include/llvm/ADT/STLExtras.h: At global scope: /usr/include/llvm/ADT/STLExtras.h:423:35: error: template argument 2 is invalid 423 | callable_detail::Callable F{}; | ^ /usr/include/llvm/ADT/STLExtras.h:927:60: error: 'optional' in namespace 'std' does not name a template type 927 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional< | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:927:55: note: 'std::optional' is only available from C++17 onwards 927 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional< | ^~~ /usr/include/llvm/ADT/STLExtras.h:927:68: error: expected initializer before '<' token 927 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional< | ^ /usr/include/llvm/ADT/STLExtras.h:935:21: error: 'optional' in namespace 'std' does not name a template type 935 | using type = std::optional...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1511:19: note: 'std::disjunction' is only available from C++17 onwards 1511 | using is_one_of = std::disjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:1516:26: error: 'conjunction' in namespace 'std' does not name a template type 1516 | using are_base_of = std::conjunction...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1516:21: note: 'std::conjunction' is only available from C++17 onwards 1516 | using are_base_of = std::conjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:1675:38: error: 'conjunction' in namespace 'std' does not name a template type 1675 | using sort_trivially_copyable = std::conjunction< | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1675:33: note: 'std::conjunction' is only available from C++17 onwards 1675 | using sort_trivially_copyable = std::conjunction< | ^~~ /usr/include/llvm/ADT/STLExtras.h: In function 'void llvm::sort(IteratorTy, IteratorTy)': /usr/include/llvm/ADT/STLExtras.h:1684:25: error: 'sort_trivially_copyable' is not a member of 'llvm::detail' 1684 | if constexpr (detail::sort_trivially_copyable::value) { | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1684:59: error: expected primary-expression before '>' token 1684 | if constexpr (detail::sort_trivially_copyable::value) { | ^ /usr/include/llvm/ADT/STLExtras.h:1684:62: error: '::value' has not been declared 1684 | if constexpr (detail::sort_trivially_copyable::value) { | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In function 'bool llvm::detail::all_of_zip_predicate_first(Predicate&&, Args&& ...)': /usr/include/llvm/ADT/STLExtras.h:2276:15: error: 'apply' is not a member of 'std' 2276 | if (!std::apply([&](auto &&...args) { return P(args...); }, *it)) | ^~~~~ /usr/include/llvm/ADT/STLExtras.h:2276:15: note: 'std::apply' is only available from C++17 onwards /usr/include/llvm/ADT/ArrayRef.h: At global scope: /usr/include/llvm/ADT/ArrayRef.h:70:27: error: invalid use of '::' 70 | /*implicit*/ ArrayRef(std::nullopt_t) {} | ^~~ /usr/include/llvm/ADT/ArrayRef.h:70:44: error: expected ';' at end of member declaration 70 | /*implicit*/ ArrayRef(std::nullopt_t) {} | ^ | ; /usr/include/llvm/ADT/ArrayRef.h:323:34: error: invalid use of '::' 323 | /*implicit*/ MutableArrayRef(std::nullopt_t) : ArrayRef() {} | ^~~ /usr/include/llvm/ADT/ArrayRef.h:472:65: error: expected constructor, destructor, or type conversion before ';' token 472 | template ArrayRef(const T &OneElt) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:475:78: error: expected constructor, destructor, or type conversion before ';' token 475 | template ArrayRef(const T *data, size_t length) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:478:77: error: expected constructor, destructor, or type conversion before ';' token 478 | template ArrayRef(const T *data, const T *end) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:481:79: error: expected constructor, destructor, or type conversion before ';' token 481 | template ArrayRef(const SmallVectorImpl &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:485:56: error: expected constructor, destructor, or type conversion before ';' token 485 | ArrayRef(const SmallVector &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:488:75: error: expected constructor, destructor, or type conversion before ';' token 488 | template ArrayRef(const std::vector &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:492:55: error: expected constructor, destructor, or type conversion before ';' token 492 | ArrayRef(const std::array &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:495:72: error: expected constructor, destructor, or type conversion before ';' token 495 | template ArrayRef(const ArrayRef &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:498:66: error: expected constructor, destructor, or type conversion before ';' token 498 | template ArrayRef(ArrayRef &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:501:77: error: expected constructor, destructor, or type conversion before ';' token 501 | template ArrayRef(const T (&Arr)[N]) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:580:70: error: expected constructor, destructor, or type conversion before ';' token 580 | template MutableArrayRef(T &OneElt) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:585:64: error: expected constructor, destructor, or type conversion before ';' token 585 | MutableArrayRef(T *data, size_t length) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:589:65: error: expected constructor, destructor, or type conversion before ';' token 589 | MutableArrayRef(SmallVectorImpl &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:592:64: error: expected constructor, destructor, or type conversion before ';' token 592 | MutableArrayRef(SmallVector &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:595:80: error: expected constructor, destructor, or type conversion before ';' token 595 | template MutableArrayRef(std::vector &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:599:63: error: expected constructor, destructor, or type conversion before ';' token 599 | MutableArrayRef(std::array &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:603:53: error: expected constructor, destructor, or type conversion before ';' token 603 | MutableArrayRef(T (&Arr)[N]) -> MutableArrayRef; | ^ /usr/include/clang/Basic/Diagnostic.h: In static member function 'static clang::FixItHint clang::FixItHint::CreateInsertion(clang::SourceLocation, llvm::StringRef, bool)': /usr/include/clang/Basic/Diagnostic.h:103:41: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 103 | Hint.CodeToInsert = std::string(Code); | ^ In file included from /usr/include/c++/13/string:54: /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:103:41: note: candidate expects 3 arguments, 1 provided 103 | Hint.CodeToInsert = std::string(Code); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: In static member function 'static clang::FixItHint clang::FixItHint::CreateReplacement(clang::CharSourceRange, llvm::StringRef)': /usr/include/clang/Basic/Diagnostic.h:138:41: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 138 | Hint.CodeToInsert = std::string(Code); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:138:41: note: candidate expects 3 arguments, 1 provided 138 | Hint.CodeToInsert = std::string(Code); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: In member function 'void clang::StreamingDiagnostic::AddString(llvm::StringRef) const': /usr/include/clang/Basic/Diagnostic.h:1202:78: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 1202 | DiagStorage->DiagArgumentsStr[DiagStorage->NumDiagArgs++] = std::string(V); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:1202:78: note: candidate expects 3 arguments, 1 provided 1202 | DiagStorage->DiagArgumentsStr[DiagStorage->NumDiagArgs++] = std::string(V); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: In member function 'void clang::DiagnosticBuilder::addFlagValue(llvm::StringRef) const': /usr/include/clang/Basic/Diagnostic.h:1369:76: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 1369 | void addFlagValue(StringRef V) const { DiagObj->FlagValue = std::string(V); } | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:1369:76: note: candidate expects 3 arguments, 1 provided 1369 | void addFlagValue(StringRef V) const { DiagObj->FlagValue = std::string(V); } | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: At global scope: /usr/include/clang/Basic/Diagnostic.h:1514:23: error: 'optional' in namespace 'std' does not name a template type 1514 | const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1514:18: note: 'std::optional' is only available from C++17 onwards 1514 | const std::optional &Opt) { | ^~~ /usr/include/clang/Basic/Diagnostic.h:1514:31: error: expected ',' or '...' before '<' token 1514 | const std::optional &Opt) { | ^ /usr/include/clang/Basic/Diagnostic.h:1513:1: error: redefinition of 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' 1513 | operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1401:35: note: 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' previously defined here 1401 | inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h: In function 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)': /usr/include/clang/Basic/Diagnostic.h:1515:7: error: 'Opt' was not declared in this scope 1515 | if (Opt) | ^~~ /usr/include/clang/Basic/Diagnostic.h: At global scope: /usr/include/clang/Basic/Diagnostic.h:1522:23: error: 'optional' in namespace 'std' does not name a template type 1522 | const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1522:18: note: 'std::optional' is only available from C++17 onwards 1522 | const std::optional &Opt) { | ^~~ /usr/include/clang/Basic/Diagnostic.h:1522:31: error: expected ',' or '...' before '<' token 1522 | const std::optional &Opt) { | ^ /usr/include/clang/Basic/Diagnostic.h:1521:1: error: redefinition of 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' 1521 | operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1401:35: note: 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' previously defined here 1401 | inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h: In function 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)': /usr/include/clang/Basic/Diagnostic.h:1523:7: error: 'Opt' was not declared in this scope 1523 | if (Opt) | ^~~ /usr/include/clang/Basic/Diagnostic.h: At global scope: /usr/include/clang/Basic/Diagnostic.h:1529:54: error: 'optional' in namespace 'std' does not name a template type 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1529:49: note: 'std::optional' is only available from C++17 onwards 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^~~ /usr/include/clang/Basic/Diagnostic.h:1529:62: error: expected ',' or '...' before '<' token 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^ /usr/include/clang/Basic/Diagnostic.h:1529:1: error: redefinition of 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1401:35: note: 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' previously defined here 1401 | inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h: In function 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)': /usr/include/clang/Basic/Diagnostic.h:1530:7: error: 'Opt' was not declared in this scope 1530 | if (Opt) | ^~~ /usr/include/clang/Basic/Diagnostic.h: In member function 'llvm::ArrayRef clang::StoredDiagnostic::getRanges() const': /usr/include/clang/Basic/Diagnostic.h:1724:70: error: missing template arguments before '(' token 1724 | ArrayRef getRanges() const { return llvm::ArrayRef(Ranges); } | ^ /usr/include/clang/Basic/Diagnostic.h: In member function 'llvm::ArrayRef clang::StoredDiagnostic::getFixIts() const': /usr/include/clang/Basic/Diagnostic.h:1732:64: error: missing template arguments before '(' token 1732 | ArrayRef getFixIts() const { return llvm::ArrayRef(FixIts); } | ^ In file included from /usr/include/llvm/Support/Allocator.h:21, from /usr/include/llvm/ADT/FoldingSet.h:22, from /usr/include/clang/AST/NestedNameSpecifier.h:21: /usr/include/llvm/Support/Alignment.h: At global scope: /usr/include/llvm/Support/Alignment.h:117:41: error: expected template-name before '<' token 117 | struct MaybeAlign : public std::optional { | ^ /usr/include/llvm/Support/Alignment.h:117:41: error: expected '{' before '<' token /usr/include/llvm/Support/Alignment.h:117:41: error: expected unqualified-id before '<' token /usr/include/llvm/Support/Alignment.h:217:35: error: 'A' has incomplete type 217 | inline unsigned encode(MaybeAlign A) { return A ? A->ShiftValue + 1 : 0; } | ~~~~~~~~~~~^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:220:50: error: return type 'struct llvm::MaybeAlign' is incomplete 220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) { | ^ /usr/include/llvm/Support/Alignment.h:220:19: error: ambiguating new declaration of 'void llvm::decodeMaybeAlign(unsigned int)' 220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) { | ^~~~~~~~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:53:28: note: old declaration 'llvm::MaybeAlign llvm::decodeMaybeAlign(unsigned int)' 53 | friend struct MaybeAlign decodeMaybeAlign(unsigned Value); | ^~~~~~~~~~~~~~~~ /usr/include/llvm/Support/Alignment.h: In function 'void llvm::decodeMaybeAlign(unsigned int)': /usr/include/llvm/Support/Alignment.h:222:23: error: invalid use of incomplete type 'struct llvm::MaybeAlign' 222 | return MaybeAlign(); | ^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:224:7: error: 'uint8_t llvm::Align::ShiftValue' is private within this context 224 | Out.ShiftValue = Value - 1; | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:41:11: note: declared private here 41 | uint8_t ShiftValue = 0; /// The log2 of the required alignment. | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h: In function 'unsigned int llvm::encode(Align)': /usr/include/llvm/Support/Alignment.h:230:61: error: invalid use of incomplete type 'struct llvm::MaybeAlign' 230 | inline unsigned encode(Align A) { return encode(MaybeAlign(A)); } | ^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h: At global scope: /usr/include/llvm/Support/Alignment.h:295:35: error: 'Lhs' has incomplete type 295 | inline bool operator==(MaybeAlign Lhs, Align Rhs) { return Lhs && *Lhs == Rhs; } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:296:35: error: 'Lhs' has incomplete type 296 | inline bool operator!=(MaybeAlign Lhs, Align Rhs) { return !(Lhs == Rhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:297:46: error: 'Rhs' has incomplete type 297 | inline bool operator==(Align Lhs, MaybeAlign Rhs) { return Rhs == Lhs; } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:298:46: error: 'Rhs' has incomplete type 298 | inline bool operator!=(Align Lhs, MaybeAlign Rhs) { return !(Rhs == Lhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:300:35: error: 'Lhs' has incomplete type 300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) { | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:300:51: error: 'Rhs' has incomplete type 300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) { | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:303:35: error: 'Lhs' has incomplete type 303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:303:51: error: 'Rhs' has incomplete type 303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:305:45: error: 'std::nullopt_t' has not been declared 305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); } | ^~~~~~~~~ /usr/include/llvm/Support/Alignment.h:305:35: error: 'Lhs' has incomplete type 305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:306:45: error: 'std::nullopt_t' has not been declared 306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); } | ^~~~~~~~~ /usr/include/llvm/Support/Alignment.h:306:35: error: 'Lhs' has incomplete type 306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:307:13: error: declaration of 'operator==' as non-function 307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); } | ^~~~~~~~ /usr/include/llvm/Support/Alignment.h:307:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); } | ^~~~~~~~~ | nullptr_t /usr/include/llvm/Support/Alignment.h:307:51: error: expected primary-expression before 'Rhs' 307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); } | ^~~ /usr/include/llvm/Support/Alignment.h:308:13: error: declaration of 'operator!=' as non-function 308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); } | ^~~~~~~~ /usr/include/llvm/Support/Alignment.h:308:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); } | ^~~~~~~~~ | nullptr_t /usr/include/llvm/Support/Alignment.h:308:51: error: expected primary-expression before 'Rhs' 308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); } | ^~~ /usr/include/llvm/Support/Alignment.h: In function 'std::string llvm::DebugStr(const MaybeAlign&)': /usr/include/llvm/Support/Alignment.h:317:7: error: could not convert 'MA' from 'const llvm::MaybeAlign' to 'bool' 317 | if (MA) | ^~ | | | const llvm::MaybeAlign /usr/include/llvm/Support/Alignment.h:318:29: error: base operand of '->' has non-pointer type 'const llvm::MaybeAlign' 318 | return std::to_string(MA->value()); | ^~ /usr/include/llvm/Support/Allocator.h: At global scope: /usr/include/llvm/Support/Allocator.h:232:8: error: 'optional' in namespace 'std' does not name a template type 232 | std::optional identifyObject(const void *Ptr) { | ^~~~~~~~ /usr/include/llvm/Support/Allocator.h:232:3: note: 'std::optional' is only available from C++17 onwards 232 | std::optional identifyObject(const void *Ptr) { | ^~~ /usr/include/llvm/Support/Allocator.h: In member function 'int64_t llvm::BumpPtrAllocatorImpl::identifyKnownObject(const void*)': /usr/include/llvm/Support/Allocator.h:259:10: error: 'optional' is not a member of 'std' 259 | std::optional Out = identifyObject(Ptr); | ^~~~~~~~ /usr/include/llvm/Support/Allocator.h:259:10: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Allocator.h:259:26: error: expected primary-expression before '>' token 259 | std::optional Out = identifyObject(Ptr); | ^ /usr/include/llvm/Support/Allocator.h:259:28: error: 'Out' was not declared in this scope 259 | std::optional Out = identifyObject(Ptr); | ^~~ /usr/include/llvm/Support/Allocator.h:259:34: error: there are no arguments to 'identifyObject' that depend on a template parameter, so a declaration of 'identifyObject' must be available [-fpermissive] 259 | std::optional Out = identifyObject(Ptr); | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/Allocator.h:259:34: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated) In file included from /usr/include/llvm/ADT/APSInt.h:18, from /usr/include/llvm/ADT/APFixedPoint.h:19, from /usr/include/clang/AST/APValue.h:17, from /usr/include/clang/AST/Expr.h:16, from /usr/include/clang/AST/ASTConcept.h:17, from /usr/include/clang/AST/RecursiveASTVisitor.h:16, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/AggregateToScalar.cpp:19: /usr/include/llvm/ADT/APInt.h: At global scope: /usr/include/llvm/ADT/APInt.h:1506:8: error: 'optional' in namespace 'std' does not name a template type 1506 | std::optional tryZExtValue() const { | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:1506:3: note: 'std::optional' is only available from C++17 onwards 1506 | std::optional tryZExtValue() const { | ^~~ /usr/include/llvm/ADT/APInt.h:1528:8: error: 'optional' in namespace 'std' does not name a template type 1528 | std::optional trySExtValue() const { | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:1528:3: note: 'std::optional' is only available from C++17 onwards 1528 | std::optional trySExtValue() const { | ^~~ /usr/include/llvm/ADT/APInt.h: In member function 'unsigned int llvm::APInt::countPopulation() const': /usr/include/llvm/ADT/APInt.h:1621:20: error: 'popcount' is not a member of 'llvm'; did you mean 'count'? 1621 | return llvm::popcount(U.VAL); | ^~~~~~~~ | count /usr/include/llvm/ADT/APInt.h: At global scope: /usr/include/llvm/ADT/APInt.h:2279:6: error: 'optional' in namespace 'std' does not name a template type 2279 | std::optional SolveQuadraticEquationWrap(APInt A, APInt B, APInt C, | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:2279:1: note: 'std::optional' is only available from C++17 onwards 2279 | std::optional SolveQuadraticEquationWrap(APInt A, APInt B, APInt C, | ^~~ /usr/include/llvm/ADT/APInt.h:2284:6: error: 'optional' in namespace 'std' does not name a template type 2284 | std::optional GetMostSignificantDifferentBit(const APInt &A, | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:2284:1: note: 'std::optional' is only available from C++17 onwards 2284 | std::optional GetMostSignificantDifferentBit(const APInt &A, | ^~~ /usr/include/llvm/ADT/APSInt.h:103:8: error: 'optional' in namespace 'std' does not name a template type 103 | std::optional tryExtValue() const { | ^~~~~~~~ /usr/include/llvm/ADT/APSInt.h:103:3: note: 'std::optional' is only available from C++17 onwards 103 | std::optional tryExtValue() const { | ^~~ In file included from /usr/include/llvm/ADT/APFixedPoint.h:23: /usr/include/llvm/Support/raw_ostream.h:252:38: error: 'string_view' in namespace 'std' does not name a type 252 | raw_ostream &operator<<(const std::string_view &Str) { | ^~~~~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:252:33: note: 'std::string_view' is only available from C++17 onwards 252 | raw_ostream &operator<<(const std::string_view &Str) { | ^~~ /usr/include/llvm/Support/raw_ostream.h: In member function 'llvm::raw_ostream& llvm::raw_ostream::operator<<(const int&)': /usr/include/llvm/Support/raw_ostream.h:253:22: error: request for member 'data' in 'Str', which is of non-class type 'const int' 253 | return write(Str.data(), Str.length()); | ^~~~ /usr/include/llvm/Support/raw_ostream.h:253:34: error: request for member 'length' in 'Str', which is of non-class type 'const int' 253 | return write(Str.data(), Str.length()); | ^~~~~~ /usr/include/llvm/Support/raw_ostream.h: At global scope: /usr/include/llvm/Support/raw_ostream.h:459:16: error: 'optional' in namespace 'std' does not name a template type 459 | mutable std::optional HasColors; | ^~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:459:11: note: 'std::optional' is only available from C++17 onwards 459 | mutable std::optional HasColors; | ^~~ /usr/include/llvm/Support/raw_ostream.h:757:47: error: 'std::nullopt_t' has not been declared 757 | raw_ostream &operator<<(raw_ostream &OS, std::nullopt_t); | ^~~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:761:53: error: 'optional' in namespace 'std' does not name a template type 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:761:48: note: 'std::optional' is only available from C++17 onwards 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^~~ /usr/include/llvm/Support/raw_ostream.h:761:61: error: expected ',' or '...' before '<' token 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^ /usr/include/llvm/Support/raw_ostream.h: In function 'llvm::raw_ostream& llvm::operator<<(raw_ostream&, int)': /usr/include/llvm/Support/raw_ostream.h:762:7: error: 'O' was not declared in this scope; did you mean 'OS'? 762 | if (O) | ^ | OS /usr/include/llvm/Support/raw_ostream.h:765:16: error: 'nullopt' is not a member of 'std' 765 | OS << std::nullopt; | ^~~~~~~ /usr/include/llvm/Support/raw_ostream.h:765:16: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/APFixedPoint.h: In member function 'std::string llvm::APFixedPoint::toString() const': /usr/include/llvm/ADT/APFixedPoint.h:238:31: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef)' 238 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/ADT/APFixedPoint.h:238:31: note: candidate expects 3 arguments, 1 provided 238 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/llvm/ADT/FloatingPointMode.h:18, from /usr/include/llvm/ADT/APFloat.h:20, from /usr/include/clang/AST/APValue.h:18: /usr/include/llvm/ADT/StringSwitch.h: At global scope: /usr/include/llvm/ADT/StringSwitch.h:50:8: error: 'optional' in namespace 'std' does not name a template type 50 | std::optional Result; | ^~~~~~~~ /usr/include/llvm/ADT/StringSwitch.h:50:3: note: 'std::optional' is only available from C++17 onwards 50 | std::optional Result; | ^~~ /usr/include/llvm/ADT/StringSwitch.h: In constructor 'llvm::StringSwitch::StringSwitch(llvm::StringRef)': /usr/include/llvm/ADT/StringSwitch.h:54:13: error: class 'llvm::StringSwitch' does not have any field named 'Result' 54 | : Str(S), Result() { } | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In constructor 'llvm::StringSwitch::StringSwitch(llvm::StringSwitch&&)': /usr/include/llvm/ADT/StringSwitch.h:64:23: error: class 'llvm::StringSwitch' does not have any field named 'Result' 64 | : Str(other.Str), Result(std::move(other.Result)) { } | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::Case(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:70:10: error: 'Result' was not declared in this scope 70 | if (!Result && Str == S) { | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::EndsWith(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:77:10: error: 'Result' was not declared in this scope 77 | if (!Result && Str.endswith(S)) { | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::StartsWith(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:84:10: error: 'Result' was not declared in this scope 84 | if (!Result && Str.startswith(S)) { | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::CaseLower(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:143:10: error: 'Result' was not declared in this scope 143 | if (!Result && Str.equals_insensitive(S)) | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::EndsWithLower(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:150:10: error: 'Result' was not declared in this scope 150 | if (!Result && Str.endswith_insensitive(S)) | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::StartsWithLower(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:157:10: error: 'Result' was not declared in this scope 157 | if (!Result && Str.startswith_insensitive(S)) | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'R llvm::StringSwitch::Default(T)': /usr/include/llvm/ADT/StringSwitch.h:183:9: error: 'Result' was not declared in this scope 183 | if (Result) | ^~~~~~ In file included from /usr/include/c++/13/cassert:44, from /usr/include/llvm/ADT/StringSwitch.h:18: /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch::operator R()': /usr/include/llvm/ADT/StringSwitch.h:189:5: error: 'Result' was not declared in this scope 189 | assert(Result && "Fell off the end of a string-switch"); | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/APValue.h:190:11: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ In file included from /usr/include/clang/AST/APValue.h:22: /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/APValue.h:190:11: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/Type.h:22, from /usr/include/clang/AST/DeclarationName.h:16, from /usr/include/clang/AST/DeclBase.h:18, from /usr/include/clang/AST/Decl.h:19, from /usr/include/clang/AST/Expr.h:19: /usr/include/clang/AST/TemplateName.h: In member function 'llvm::ArrayRef clang::OverloadedTemplateStorage::decls() const': /usr/include/clang/AST/TemplateName.h:130:26: error: missing template arguments before '(' token 130 | return llvm::ArrayRef(begin(), end()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/TemplateName.h:211:15: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/TemplateName.h:211:15: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/TemplateName.h: At global scope: /usr/include/clang/AST/TemplateName.h:383:41: error: 'std::optional' has not been declared 383 | std::optional PackIndex) | ^~~~~~~~ /usr/include/clang/AST/TemplateName.h:383:49: error: expected ',' or '...' before '<' token 383 | std::optional PackIndex) | ^ /usr/include/clang/AST/TemplateName.h:399:8: error: 'optional' in namespace 'std' does not name a template type 399 | std::optional getPackIndex() const { | ^~~~~~~~ /usr/include/clang/AST/TemplateName.h:399:3: note: 'std::optional' is only available from C++17 onwards 399 | std::optional getPackIndex() const { | ^~~ /usr/include/clang/AST/TemplateName.h:412:28: error: 'std::optional' has not been declared 412 | std::optional PackIndex); | ^~~~~~~~ /usr/include/clang/AST/TemplateName.h:412:36: error: expected ',' or '...' before '<' token 412 | std::optional PackIndex); | ^ /usr/include/clang/AST/TemplateName.h: In constructor 'clang::SubstTemplateTemplateParmStorage::SubstTemplateTemplateParmStorage(clang::TemplateName, clang::Decl*, unsigned int, int)': /usr/include/clang/AST/TemplateName.h:385:37: error: 'PackIndex' was not declared in this scope 385 | PackIndex ? *PackIndex + 1 : 0), | ^~~~~~~~~ In file included from /usr/include/clang/AST/Type.h:40: /usr/include/llvm/ADT/Twine.h: At global scope: /usr/include/llvm/ADT/Twine.h:292:35: error: 'string_view' in namespace 'std' does not name a type 292 | /*implicit*/ Twine(const std::string_view &Str) | ^~~~~~~~~~~ /usr/include/llvm/ADT/Twine.h:292:30: note: 'std::string_view' is only available from C++17 onwards 292 | /*implicit*/ Twine(const std::string_view &Str) | ^~~ /usr/include/llvm/ADT/Twine.h: In constructor 'llvm::Twine::Twine(const int&)': /usr/include/llvm/ADT/Twine.h:294:34: error: request for member 'data' in 'Str', which is of non-class type 'const int' 294 | LHS.ptrAndLength.ptr = Str.data(); | ^~~~ /usr/include/llvm/ADT/Twine.h:295:37: error: request for member 'length' in 'Str', which is of non-class type 'const int' 295 | LHS.ptrAndLength.length = Str.length(); | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Type.h:744:28: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Type.h:744:28: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Type.h: At global scope: /usr/include/clang/AST/Type.h:2555:8: error: 'optional' in namespace 'std' does not name a template type 2555 | std::optional getNullability() const; | ^~~~~~~~ /usr/include/clang/AST/Type.h:2555:3: note: 'std::optional' is only available from C++17 onwards 2555 | std::optional getNullability() const; | ^~~ /usr/include/clang/AST/Type.h:2579:8: error: 'optional' in namespace 'std' does not name a template type 2579 | std::optional> | ^~~~~~~~ /usr/include/clang/AST/Type.h:2579:3: note: 'std::optional' is only available from C++17 onwards 2579 | std::optional> | ^~~ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::FunctionProtoType::getParamTypes() const': /usr/include/clang/AST/Type.h:4240:26: error: missing template arguments before '(' token 4240 | return llvm::ArrayRef(param_type_begin(), param_type_end()); | ^ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::FunctionProtoType::param_types() const': /usr/include/clang/AST/Type.h:4387:26: error: missing template arguments before '(' token 4387 | return llvm::ArrayRef(param_type_begin(), param_type_end()); | ^ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::FunctionProtoType::exceptions() const': /usr/include/clang/AST/Type.h:4401:26: error: missing template arguments before '(' token 4401 | return llvm::ArrayRef(exception_begin(), exception_end()); | ^ /usr/include/clang/AST/Type.h: At global scope: /usr/include/clang/AST/Type.h:4925:8: error: 'optional' in namespace 'std' does not name a template type 4925 | std::optional getImmediateNullability() const; | ^~~~~~~~ /usr/include/clang/AST/Type.h:4925:3: note: 'std::optional' is only available from C++17 onwards 4925 | std::optional getImmediateNullability() const; | ^~~ /usr/include/clang/AST/Type.h:4955:15: error: 'optional' in namespace 'std' does not name a template type 4955 | static std::optional stripOuterNullability(QualType &T); | ^~~~~~~~ /usr/include/clang/AST/Type.h:4955:10: note: 'std::optional' is only available from C++17 onwards 4955 | static std::optional stripOuterNullability(QualType &T); | ^~~ /usr/include/clang/AST/Type.h:5096:50: error: 'std::optional' has not been declared 5096 | unsigned Index, std::optional PackIndex); | ^~~~~~~~ /usr/include/clang/AST/Type.h:5096:58: error: expected ',' or '...' before '<' token 5096 | unsigned Index, std::optional PackIndex); | ^ /usr/include/clang/AST/Type.h:5119:8: error: 'optional' in namespace 'std' does not name a template type 5119 | std::optional getPackIndex() const { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5119:3: note: 'std::optional' is only available from C++17 onwards 5119 | std::optional getPackIndex() const { | ^~~ /usr/include/clang/AST/Type.h:5135:28: error: 'std::optional' has not been declared 5135 | std::optional PackIndex) { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5135:36: error: expected ',' or '...' before '<' token 5135 | std::optional PackIndex) { | ^ /usr/include/clang/AST/Type.h: In member function 'void clang::SubstTemplateTypeParmType::Profile(llvm::FoldingSetNodeID&)': /usr/include/clang/AST/Type.h:5130:13: error: 'getPackIndex' was not declared in this scope; did you mean 'getIndex'? 5130 | getPackIndex()); | ^~~~~~~~~~~~ | getIndex /usr/include/clang/AST/Type.h: In static member function 'static void clang::SubstTemplateTypeParmType::Profile(llvm::FoldingSetNodeID&, clang::QualType, const clang::Decl*, unsigned int, int)': /usr/include/clang/AST/Type.h:5139:19: error: 'PackIndex' was not declared in this scope 5139 | ID.AddInteger(PackIndex ? *PackIndex - 1 : 0); | ^~~~~~~~~ /usr/include/clang/AST/Type.h: At global scope: /usr/include/clang/AST/Type.h:5849:26: error: 'std::optional' has not been declared 5849 | std::optional NumExpansions) | ^~~~~~~~ /usr/include/clang/AST/Type.h:5849:34: error: expected ',' or '...' before '<' token 5849 | std::optional NumExpansions) | ^ /usr/include/clang/AST/Type.h:5867:8: error: 'optional' in namespace 'std' does not name a template type 5867 | std::optional getNumExpansions() const { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5867:3: note: 'std::optional' is only available from C++17 onwards 5867 | std::optional getNumExpansions() const { | ^~~ /usr/include/clang/AST/Type.h:5881:28: error: 'std::optional' has not been declared 5881 | std::optional NumExpansions) { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5881:36: error: expected ',' or '...' before '<' token 5881 | std::optional NumExpansions) { | ^ /usr/include/clang/AST/Type.h: In constructor 'clang::PackExpansionType::PackExpansionType(clang::QualType, clang::QualType, int)': /usr/include/clang/AST/Type.h:5856:9: error: 'NumExpansions' was not declared in this scope 5856 | NumExpansions ? *NumExpansions + 1 : 0; | ^~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In member function 'void clang::PackExpansionType::Profile(llvm::FoldingSetNodeID&)': /usr/include/clang/AST/Type.h:5877:31: error: 'getNumExpansions' was not declared in this scope 5877 | Profile(ID, getPattern(), getNumExpansions()); | ^~~~~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In static member function 'static void clang::PackExpansionType::Profile(llvm::FoldingSetNodeID&, clang::QualType, int)': /usr/include/clang/AST/Type.h:5883:19: error: 'NumExpansions' was not declared in this scope 5883 | ID.AddBoolean(NumExpansions.has_value()); | ^~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::ObjCObjectType::getTypeArgsAsWritten() const': /usr/include/clang/AST/Type.h:6138:26: error: missing template arguments before '(' token 6138 | return llvm::ArrayRef(getTypeArgStorage(), ObjCObjectTypeBits.NumTypeArgs); | ^ /usr/include/clang/AST/Type.h: In constructor 'clang::DecayedType::DecayedType(clang::QualType, clang::QualType, clang::QualType)': /usr/include/clang/AST/Type.h:7484:25: error: 'stripOuterNullability' is not a member of 'clang::AttributedType' 7484 | (void)AttributedType::stripOuterNullability(Adjusted); | ^~~~~~~~~~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In member function 'clang::QualType clang::DecayedType::getPointeeType() const': /usr/include/clang/AST/Type.h:7491:25: error: 'stripOuterNullability' is not a member of 'clang::AttributedType' 7491 | (void)AttributedType::stripOuterNullability(Decayed); | ^~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/llvm/ADT/StringMap.h:17, from /usr/include/clang/Basic/IdentifierTable.h:23, from /usr/include/clang/AST/DeclarationName.h:18: /usr/include/llvm/ADT/StringMapEntry.h: At global scope: /usr/include/llvm/ADT/StringMapEntry.h:88:34: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 88 | class StringMapEntryStorage : public StringMapEntryBase { | ^~~~~~~~~ | nullptr_t /usr/include/llvm/ADT/StringMapEntry.h:88:34: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 88 | class StringMapEntryStorage : public StringMapEntryBase { | ^~~~~~~~~ | nullptr_t /usr/include/llvm/ADT/StringMapEntry.h:88:43: error: template argument 1 is invalid 88 | class StringMapEntryStorage : public StringMapEntryBase { | ^ In file included from /usr/include/clang/AST/DeclBase.h:31: /usr/include/llvm/Support/VersionTuple.h:76:8: error: 'optional' in namespace 'std' does not name a template type 76 | std::optional getMinor() const { | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:76:3: note: 'std::optional' is only available from C++17 onwards 76 | std::optional getMinor() const { | ^~~ /usr/include/llvm/Support/VersionTuple.h:83:8: error: 'optional' in namespace 'std' does not name a template type 83 | std::optional getSubminor() const { | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:83:3: note: 'std::optional' is only available from C++17 onwards 83 | std::optional getSubminor() const { | ^~~ /usr/include/llvm/Support/VersionTuple.h:90:8: error: 'optional' in namespace 'std' does not name a template type 90 | std::optional getBuild() const { | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:90:3: note: 'std::optional' is only available from C++17 onwards 90 | std::optional getBuild() const { | ^~~ /usr/include/llvm/Support/VersionTuple.h: In static member function 'static unsigned int llvm::DenseMapInfo::getHashValue(const llvm::VersionTuple&)': /usr/include/llvm/Support/VersionTuple.h:203:28: error: 'const class llvm::VersionTuple' has no member named 'getMinor'; did you mean 'getMajor'? 203 | if (auto Minor = Value.getMinor()) | ^~~~~~~~ | getMajor /usr/include/llvm/Support/VersionTuple.h:205:31: error: 'const class llvm::VersionTuple' has no member named 'getSubminor'; did you mean 'unsigned int:31 llvm::VersionTuple::Subminor'? (not accessible from this context) 205 | if (auto Subminor = Value.getSubminor()) | ^~~~~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:37:12: note: declared private here 37 | unsigned Subminor : 31; | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:207:28: error: 'const class llvm::VersionTuple' has no member named 'getBuild'; did you mean 'unsigned int:31 llvm::VersionTuple::Build'? (not accessible from this context) 207 | if (auto Build = Value.getBuild()) | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:40:12: note: declared private here 40 | unsigned Build : 31; | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclBase.h:269:49: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclBase.h:269:49: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclBase.h:1290:11: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclBase.h:1290:11: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/ExternalASTSource.h:17, from /usr/include/clang/AST/Decl.h:21: /usr/include/clang/AST/CharUnits.h: At global scope: /usr/include/clang/AST/CharUnits.h:194:48: error: return type 'struct llvm::MaybeAlign' is incomplete 194 | llvm::MaybeAlign getAsMaybeAlign() const { | ^ /usr/include/clang/AST/CharUnits.h: In member function 'void clang::CharUnits::getAsMaybeAlign() const': /usr/include/clang/AST/CharUnits.h:195:41: error: invalid use of incomplete type 'struct llvm::MaybeAlign' 195 | return llvm::MaybeAlign(Quantity); | ^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/clang/AST/ExternalASTSource.h: At global scope: /usr/include/clang/AST/ExternalASTSource.h:163:16: error: 'optional' in namespace 'std' does not name a template type 163 | virtual std::optional getSourceDescriptor(unsigned ID); | ^~~~~~~~ /usr/include/clang/AST/ExternalASTSource.h:163:11: note: 'std::optional' is only available from C++17 onwards 163 | virtual std::optional getSourceDescriptor(unsigned ID); | ^~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct, clang::LazyGenerationalUpdatePtr >': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion, clang::LazyGenerationalUpdatePtr >' /usr/include/clang/AST/Redeclarable.h:105:61: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct, clang::LazyGenerationalUpdatePtr >' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion, clang::LazyGenerationalUpdatePtr >': /usr/include/clang/AST/Redeclarable.h:105:61: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct, clang::LazyGenerationalUpdatePtr >' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Redeclarable.h:119:40: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Redeclarable.h:119:40: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::LazyData*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::LazyData*>' /usr/include/clang/AST/ExternalASTSource.h:402:13: required from 'struct clang::LazyGenerationalUpdatePtr' /usr/include/clang/AST/Redeclarable.h:134:61: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::LazyData*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::LazyData*>': /usr/include/clang/AST/ExternalASTSource.h:402:13: required from 'struct clang::LazyGenerationalUpdatePtr' /usr/include/clang/AST/Redeclarable.h:134:61: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::LazyData*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Decl.h:440:8: error: 'optional' in namespace 'std' does not name a template type 440 | std::optional | ^~~~~~~~ /usr/include/clang/AST/Decl.h:440:3: note: 'std::optional' is only available from C++17 onwards 440 | std::optional | ^~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:776:51: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:776:51: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:961:20: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:961:20: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:2006:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:2006:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Decl.h:2477:12: error: 'std::optional' has not been declared 2477 | std::optional *AlignmentParam = nullptr, | ^~~~~~~~ /usr/include/clang/AST/Decl.h:2477:20: error: expected ',' or '...' before '<' token 2477 | std::optional *AlignmentParam = nullptr, | ^ /usr/include/clang/AST/Decl.h: In member function 'llvm::ArrayRef clang::IndirectFieldDecl::chain() const': /usr/include/clang/AST/Decl.h:3220:26: error: missing template arguments before '(' token 3220 | return llvm::ArrayRef(Chaining, ChainingSize); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:3307:9: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:3307:9: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:3460:52: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:3460:52: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:3736:54: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:3736:54: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/Basic/ObjCRuntime.h:21, from /usr/include/clang/Basic/LangOptions.h:20, from /usr/include/clang/AST/Stmt.h:22, from /usr/include/clang/AST/Expr.h:23: /usr/include/llvm/Support/HashBuilder.h: At global scope: /usr/include/llvm/Support/HashBuilder.h:84:8: error: 'optional' in namespace 'std' does not name a template type 84 | std::optional OptionalHasher; | ^~~~~~~~ /usr/include/llvm/Support/HashBuilder.h:84:3: note: 'std::optional' is only available from C++17 onwards 84 | std::optional OptionalHasher; | ^~~ /usr/include/llvm/Support/HashBuilder.h: In member function 'void llvm::HashBuilderBase::update(llvm::StringRef)': /usr/include/llvm/Support/HashBuilder.h:62:17: error: missing template arguments before '(' token 62 | ArrayRef(reinterpret_cast(Data.data()), Data.size())); | ^ /usr/include/llvm/Support/HashBuilder.h: In constructor 'llvm::HashBuilderBase::HashBuilderBase(ArgTypes&& ...)': /usr/include/llvm/Support/HashBuilder.h:80:9: error: class 'llvm::HashBuilderBase' does not have any field named 'OptionalHasher' 80 | : OptionalHasher(std::in_place, std::forward(Args)...), | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/HashBuilder.h:80:29: error: 'in_place' is not a member of 'std' 80 | : OptionalHasher(std::in_place, std::forward(Args)...), | ^~~~~~~~ /usr/include/llvm/Support/HashBuilder.h:80:29: note: 'std::in_place' is only available from C++17 onwards /usr/include/llvm/Support/HashBuilder.h:81:17: error: 'OptionalHasher' was not declared in this scope 81 | Hasher(*OptionalHasher) {} | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/HashBuilder.h: In member function 'llvm::HashBuilderImpl& llvm::HashBuilderImpl::add(llvm::ArrayRef)': /usr/include/llvm/Support/HashBuilder.h:134:28: error: missing template arguments before '(' token 134 | this->update(ArrayRef(reinterpret_cast(Value.begin()), | ^ /usr/include/llvm/Support/HashBuilder.h: In member function 'llvm::HashBuilderImpl& llvm::HashBuilderImpl::add(llvm::StringRef)': /usr/include/llvm/Support/HashBuilder.h:162:26: error: missing template arguments before '(' token 162 | this->update(ArrayRef(reinterpret_cast(Value.begin()), | ^ /usr/include/llvm/Support/HashBuilder.h: In member function 'llvm::HashBuilderImpl& llvm::HashBuilderImpl::add(const std::tuple<_Args1 ...>&)': /usr/include/llvm/Support/HashBuilder.h:268:10: error: 'apply' is not a member of 'std' 268 | std::apply([this](const auto &...Args) { this->add(Args...); }, Arg); | ^~~~~ /usr/include/llvm/Support/HashBuilder.h:268:10: note: 'std::apply' is only available from C++17 onwards /usr/include/llvm/Support/HashBuilder.h: In member function 'std::enable_if_t::HasByteSwapT, T>::value_t::value, llvm::HashBuilderImpl&> llvm::HashBuilderImpl::adjustForEndiannessAndAdd(const T&)': /usr/include/llvm/Support/HashBuilder.h:319:26: error: missing template arguments before '(' token 319 | this->update(ArrayRef(reinterpret_cast(&SwappedValue), | ^ /usr/include/llvm/Support/HashBuilder.h: In member function 'std::enable_if_t<(llvm::hashbuilder_detail::IsHashableData::value && (Endianness == llvm::support::endian::system_endianness())), llvm::HashBuilderImpl&> llvm::HashBuilderImpl::addRangeElementsImpl(T*, T*, std::forward_iterator_tag)': /usr/include/llvm/Support/HashBuilder.h:341:26: error: missing template arguments before '(' token 341 | this->update(ArrayRef(reinterpret_cast(First), | ^ /usr/include/clang/Basic/LangOptions.h: At global scope: /usr/include/clang/Basic/LangOptions.h:470:8: error: 'optional' in namespace 'std' does not name a template type 470 | std::optional CXXABI; | ^~~~~~~~ /usr/include/clang/Basic/LangOptions.h:470:3: note: 'std::optional' is only available from C++17 onwards 470 | std::optional CXXABI; | ^~~ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::AttributedStmt::getAttrs() const': /usr/include/clang/AST/Stmt.h:1927:26: error: missing template arguments before '(' token 1927 | return llvm::ArrayRef(getAttrArrayPtr(), AttributedStmtBits.NumAttrs); | ^ /usr/include/clang/AST/Stmt.h: At global scope: /usr/include/clang/AST/Stmt.h:2152:8: error: 'optional' in namespace 'std' does not name a template type 2152 | std::optional getNondiscardedCase(const ASTContext &Ctx) const; | ^~~~~~~~ /usr/include/clang/AST/Stmt.h:2152:3: note: 'std::optional' is only available from C++17 onwards 2152 | std::optional getNondiscardedCase(const ASTContext &Ctx) const; | ^~~ /usr/include/clang/AST/Stmt.h:2153:8: error: 'optional' in namespace 'std' does not name a template type 2153 | std::optional getNondiscardedCase(const ASTContext &Ctx); | ^~~~~~~~ /usr/include/clang/AST/Stmt.h:2153:3: note: 'std::optional' is only available from C++17 onwards 2153 | std::optional getNondiscardedCase(const ASTContext &Ctx); | ^~~ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::MSAsmStmt::getAllConstraints() const': /usr/include/clang/AST/Stmt.h:3338:26: error: missing template arguments before '(' token 3338 | return llvm::ArrayRef(Constraints, NumInputs + NumOutputs); | ^ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::MSAsmStmt::getClobbers() const': /usr/include/clang/AST/Stmt.h:3342:26: error: missing template arguments before '(' token 3342 | return llvm::ArrayRef(Clobbers, NumClobbers); | ^ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::MSAsmStmt::getAllExprs() const': /usr/include/clang/AST/Stmt.h:3346:26: error: missing template arguments before '(' token 3346 | return llvm::ArrayRef(reinterpret_cast(Exprs), | ^ In file included from /usr/include/clang/AST/Expr.h:24: /usr/include/clang/AST/TemplateBase.h: At global scope: /usr/include/clang/AST/TemplateBase.h:204:44: error: 'std::optional' has not been declared 204 | TemplateArgument(TemplateName Name, std::optional NumExpansions) { | ^~~~~~~~ /usr/include/clang/AST/TemplateBase.h:204:52: error: expected ',' or '...' before '<' token 204 | TemplateArgument(TemplateName Name, std::optional NumExpansions) { | ^ /usr/include/clang/AST/TemplateBase.h:309:8: error: 'optional' in namespace 'std' does not name a template type 309 | std::optional getNumTemplateExpansions() const; | ^~~~~~~~ /usr/include/clang/AST/TemplateBase.h:309:3: note: 'std::optional' is only available from C++17 onwards 309 | std::optional getNumTemplateExpansions() const; | ^~~ /usr/include/clang/AST/TemplateBase.h: In constructor 'clang::TemplateArgument::TemplateArgument(clang::TemplateName, int)': /usr/include/clang/AST/TemplateBase.h:207:9: error: 'NumExpansions' was not declared in this scope 207 | if (NumExpansions) | ^~~~~~~~~~~~~ /usr/include/clang/AST/TemplateBase.h: In static member function 'static clang::TemplateArgument clang::TemplateArgument::getEmptyPack()': /usr/include/clang/AST/TemplateBase.h:236:34: error: 'nullopt' is not a member of 'std' 236 | return TemplateArgument(std::nullopt); | ^~~~~~~ /usr/include/clang/AST/TemplateBase.h:236:34: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::APSInt clang::TemplateArgument::getAsIntegral() const': /usr/include/clang/AST/TemplateBase.h:322:18: error: expected primary-expression before '(' token 322 | return APSInt(APInt(Integer.BitWidth, ArrayRef(Integer.pVal, NumWords)), | ^ /usr/include/clang/AST/TemplateBase.h:322:24: error: expected primary-expression before '(' token 322 | return APSInt(APInt(Integer.BitWidth, ArrayRef(Integer.pVal, NumWords)), | ^ /usr/include/clang/AST/TemplateBase.h:322:51: error: missing template arguments before '(' token 322 | return APSInt(APInt(Integer.BitWidth, ArrayRef(Integer.pVal, NumWords)), | ^ /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::ArrayRef clang::TemplateArgument::pack_elements() const': /usr/include/clang/AST/TemplateBase.h:367:26: error: missing template arguments before '(' token 367 | return llvm::ArrayRef(pack_begin(), pack_end()); | ^ /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::ArrayRef clang::TemplateArgument::getPackAsArray() const': /usr/include/clang/AST/TemplateBase.h:380:26: error: missing template arguments before '(' token 380 | return llvm::ArrayRef(Args.Args, Args.NumArgs); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/TemplateBase.h:418:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/TemplateBase.h:418:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::ArrayRef clang::ASTTemplateArgumentListInfo::arguments() const': /usr/include/clang/AST/TemplateBase.h:645:26: error: missing template arguments before '(' token 645 | return llvm::ArrayRef(getTemplateArgs(), getNumTemplateArgs()); | ^ In file included from /usr/include/clang/AST/Expr.h:28: /usr/include/clang/Basic/SyncScope.h: In member function 'virtual llvm::ArrayRef clang::AtomicScopeOpenCLModel::getRuntimeValues() const': /usr/include/clang/Basic/SyncScope.h:148:26: error: missing template arguments before '(' token 148 | return llvm::ArrayRef(Scopes); | ^ /usr/include/clang/Basic/SyncScope.h: In member function 'virtual llvm::ArrayRef clang::AtomicScopeHIPModel::getRuntimeValues() const': /usr/include/clang/Basic/SyncScope.h:200:26: error: missing template arguments before '(' token 200 | return llvm::ArrayRef(Scopes); | ^ /usr/include/clang/AST/Expr.h: At global scope: /usr/include/clang/AST/Expr.h:543:8: error: 'optional' in namespace 'std' does not name a template type 543 | std::optional | ^~~~~~~~ /usr/include/clang/AST/Expr.h:543:3: note: 'std::optional' is only available from C++17 onwards 543 | std::optional | ^~~ /usr/include/clang/AST/Expr.h: In member function 'void clang::CallExpr::computeDependence()': /usr/include/clang/AST/Expr.h:3024:29: error: missing template arguments before '(' token 3024 | this, llvm::ArrayRef( | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::CallExpr::getRawSubExprs()': /usr/include/clang/AST/Expr.h:3071:26: error: missing template arguments before '(' token 3071 | return llvm::ArrayRef(getTrailingStmts(), | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Expr.h:4818:43: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Expr.h:4818:43: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::InitListExpr::inits()': /usr/include/clang/AST/Expr.h:4838:51: error: missing template arguments before '(' token 4838 | ArrayRef inits() { return llvm::ArrayRef(getInits(), getNumInits()); } | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::InitListExpr::inits() const': /usr/include/clang/AST/Expr.h:4841:26: error: missing template arguments before '(' token 4841 | return llvm::ArrayRef(getInits(), getNumInits()); | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::ParenListExpr::exprs()': /usr/include/clang/AST/Expr.h:5583:51: error: missing template arguments before '(' token 5583 | ArrayRef exprs() { return llvm::ArrayRef(getExprs(), getNumExprs()); } | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::RecoveryExpr::subExpressions()': /usr/include/clang/AST/Expr.h:6434:26: error: missing template arguments before '(' token 6434 | return llvm::ArrayRef(B, B + NumExprs); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion*>' /usr/include/c++/13/bits/stl_pair.h:194:11: required from 'struct std::pair*> >' /usr/include/llvm/Support/type_traits.h:75:7: required from 'union llvm::detail::copy_construction_triviality_helper*> > >' /usr/include/c++/13/type_traits:1040:25: required by substitution of 'template using std::__is_constructible_impl = std::__bool_constant<__is_constructible(_Tp, _Args ...)> [with _Tp = llvm::detail::copy_construction_triviality_helper*> > >; _Args = {const llvm::detail::copy_construction_triviality_helper*> > >&}]' /usr/include/c++/13/type_traits:1076:12: required from 'struct std::is_copy_constructible*> > > >' /usr/include/llvm/Support/type_traits.h:98:8: required from 'struct llvm::is_trivially_copy_constructible*> > >' /usr/include/llvm/ADT/SmallVector.h:329:74: required from 'class llvm::SmallVectorImpl*> > >' /usr/include/llvm/ADT/SmallVector.h:1199:22: required from 'class llvm::SmallVector*> >, 4>' /usr/include/clang/AST/ASTConcept.h:53:57: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion*>': /usr/include/c++/13/bits/stl_pair.h:194:11: required from 'struct std::pair*> >' /usr/include/llvm/Support/type_traits.h:75:7: required from 'union llvm::detail::copy_construction_triviality_helper*> > >' /usr/include/c++/13/type_traits:1040:25: required by substitution of 'template using std::__is_constructible_impl = std::__bool_constant<__is_constructible(_Tp, _Args ...)> [with _Tp = llvm::detail::copy_construction_triviality_helper*> > >; _Args = {const llvm::detail::copy_construction_triviality_helper*> > >&}]' /usr/include/c++/13/type_traits:1076:12: required from 'struct std::is_copy_constructible*> > > >' /usr/include/llvm/Support/type_traits.h:98:8: required from 'struct llvm::is_trivially_copy_constructible*> > >' /usr/include/llvm/ADT/SmallVector.h:329:74: required from 'class llvm::SmallVectorImpl*> > >' /usr/include/llvm/ADT/SmallVector.h:1199:22: required from 'class llvm::SmallVector*> >, 4>' /usr/include/clang/AST/ASTConcept.h:53:57: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/Attr.h:365, from /usr/include/clang/AST/RecursiveASTVisitor.h:17: /usr/include/clang/AST/Attrs.inc: At global scope: /usr/include/clang/AST/Attrs.inc:7459:17: error: 'optional' in namespace 'std' does not name a template type 7459 | static std::optional | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7459:12: note: 'std::optional' is only available from C++17 onwards 7459 | static std::optional | ^~~ /usr/include/clang/AST/Attrs.inc:7461:17: error: 'optional' in namespace 'std' does not name a template type 7461 | static std::optional getActiveAttr(const ValueDecl *VD); | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7461:12: note: 'std::optional' is only available from C++17 onwards 7461 | static std::optional getActiveAttr(const ValueDecl *VD); | ^~~ /usr/include/clang/AST/Attrs.inc:7462:17: error: 'optional' in namespace 'std' does not name a template type 7462 | static std::optional getDeviceType(const ValueDecl *VD); | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7462:12: note: 'std::optional' is only available from C++17 onwards 7462 | static std::optional getDeviceType(const ValueDecl *VD); | ^~~ /usr/include/clang/AST/Attrs.inc:7463:17: error: 'optional' in namespace 'std' does not name a template type 7463 | static std::optional getLocation(const ValueDecl *VD); | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7463:12: note: 'std::optional' is only available from C++17 onwards 7463 | static std::optional getLocation(const ValueDecl *VD); | ^~~ In file included from /usr/include/clang/AST/DeclCXX.h:29, from /usr/include/clang/AST/RecursiveASTVisitor.h:20: /usr/include/clang/AST/TypeLoc.h: In member function 'llvm::ArrayRef clang::ObjCTypeParamTypeLoc::getProtocolLocs() const': /usr/include/clang/AST/TypeLoc.h:817:26: error: missing template arguments before '(' token 817 | return llvm::ArrayRef(getProtocolLocArray(), getNumProtocols()); | ^ /usr/include/clang/AST/TypeLoc.h: In member function 'llvm::ArrayRef clang::ObjCObjectTypeLoc::getProtocolLocs() const': /usr/include/clang/AST/TypeLoc.h:1023:26: error: missing template arguments before '(' token 1023 | return llvm::ArrayRef(getProtocolLocArray(), getNumProtocols()); | ^ /usr/include/clang/AST/TypeLoc.h: In member function 'llvm::ArrayRef clang::FunctionTypeLoc::getParams() const': /usr/include/clang/AST/TypeLoc.h:1450:26: error: missing template arguments before '(' token 1450 | return llvm::ArrayRef(getParmArray(), getNumParams()); | ^ In file included from /usr/include/clang/AST/DeclCXX.h:42: /usr/include/llvm/ADT/TinyPtrVector.h: In member function 'llvm::TinyPtrVector::operator llvm::ArrayRef() const': /usr/include/llvm/ADT/TinyPtrVector.h:138:19: error: 'nullopt' is not a member of 'std' 138 | return std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/TinyPtrVector.h:138:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/TinyPtrVector.h: In member function 'llvm::TinyPtrVector::operator llvm::MutableArrayRef()': /usr/include/llvm/ADT/TinyPtrVector.h:147:19: error: 'nullopt' is not a member of 'std' 147 | return std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/TinyPtrVector.h:147:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion*>' /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:417:35: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion*>': /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:417:35: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclCXX.h:470:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclCXX.h:470:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::CXXRecordDecl::DefinitionData::bases() const': /usr/include/clang/AST/DeclCXX.h:360:28: error: missing template arguments before '(' token 360 | return llvm::ArrayRef(getBases(), NumBases); | ^ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::CXXRecordDecl::DefinitionData::vbases() const': /usr/include/clang/AST/DeclCXX.h:364:28: error: missing template arguments before '(' token 364 | return llvm::ArrayRef(getVBases(), NumVBases); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion*>' /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:2104:49: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion*>': /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:2104:49: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclCXX.h:2224:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclCXX.h:2224:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::UsingPackDecl::expansions() const': /usr/include/clang/AST/DeclCXX.h:3742:26: error: missing template arguments before '(' token 3742 | return llvm::ArrayRef(getTrailingObjects(), NumExpansions); | ^ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::DecompositionDecl::bindings() const': /usr/include/clang/AST/DeclCXX.h:4112:26: error: missing template arguments before '(' token 4112 | return llvm::ArrayRef(getTrailingObjects(), NumBindings); | ^ In file included from /usr/include/clang/AST/ASTContext.h:20, from /usr/include/clang/AST/DeclTemplate.h:18, from /usr/include/clang/AST/DeclFriend.h:20, from /usr/include/clang/AST/RecursiveASTVisitor.h:21: /usr/include/clang/AST/ComparisonCategories.h: At global scope: /usr/include/clang/AST/ComparisonCategories.h:62:6: error: 'optional' in namespace 'std' does not name a template type 62 | std::optional | ^~~~~~~~ /usr/include/clang/AST/ComparisonCategories.h:62:1: note: 'std::optional' is only available from C++17 onwards 62 | std::optional | ^~~ In file included from /usr/include/clang/AST/ASTContext.h:25: /usr/include/clang/AST/PrettyPrinter.h: In member function 'virtual std::string clang::PrintingCallbacks::remapPath(llvm::StringRef) const': /usr/include/clang/AST/PrettyPrinter.h:39:28: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 39 | return std::string(Path); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/AST/PrettyPrinter.h:39:28: note: candidate expects 3 arguments, 1 provided 39 | return std::string(Path); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/clang/AST/ASTContext.h:26: /usr/include/clang/AST/RawCommentList.h: In constructor 'clang::RawComment::CommentLine::CommentLine(llvm::StringRef, clang::PresumedLoc, clang::PresumedLoc)': /usr/include/clang/AST/RawCommentList.h:148:11: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 148 | : Text(Text), Begin(Begin), End(End) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/AST/RawCommentList.h:148:11: note: candidate expects 3 arguments, 1 provided 148 | : Text(Text), Begin(Begin), End(End) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/clang/Basic/CodeGenOptions.h:20, from /usr/include/clang/Basic/ProfileList.h:16, from /usr/include/clang/AST/ASTContext.h:33: /usr/include/llvm/Support/CodeGen.h: At global scope: /usr/include/llvm/Support/CodeGen.h:66:15: error: 'optional' in namespace 'std' does not name a template type 66 | inline std::optional getLevel(IDType ID) { | ^~~~~~~~ /usr/include/llvm/Support/CodeGen.h:66:10: note: 'std::optional' is only available from C++17 onwards 66 | inline std::optional getLevel(IDType ID) { | ^~~ /usr/include/llvm/Support/CodeGen.h:74:15: error: 'optional' in namespace 'std' does not name a template type 74 | inline std::optional parseLevel(char C) { | ^~~~~~~~ /usr/include/llvm/Support/CodeGen.h:74:10: note: 'std::optional' is only available from C++17 onwards 74 | inline std::optional parseLevel(char C) { | ^~~ /usr/include/clang/Basic/CodeGenOptions.h:443:8: error: 'optional' in namespace 'std' does not name a template type 443 | std::optional DiagnosticsHotnessThreshold = 0; | ^~~~~~~~ /usr/include/clang/Basic/CodeGenOptions.h:443:3: note: 'std::optional' is only available from C++17 onwards 443 | std::optional DiagnosticsHotnessThreshold = 0; | ^~~ /usr/include/clang/Basic/CodeGenOptions.h:447:8: error: 'optional' in namespace 'std' does not name a template type 447 | std::optional DiagnosticsMisExpectTolerance = 0; | ^~~~~~~~ /usr/include/clang/Basic/CodeGenOptions.h:447:3: note: 'std::optional' is only available from C++17 onwards 447 | std::optional DiagnosticsMisExpectTolerance = 0; | ^~~ /usr/include/clang/Basic/ProfileList.h:44:8: error: 'optional' in namespace 'std' does not name a template type 44 | std::optional inSection(StringRef Section, StringRef Prefix, | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:44:3: note: 'std::optional' is only available from C++17 onwards 44 | std::optional inSection(StringRef Section, StringRef Prefix, | ^~~ /usr/include/clang/Basic/ProfileList.h:54:8: error: 'optional' in namespace 'std' does not name a template type 54 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:54:3: note: 'std::optional' is only available from C++17 onwards 54 | std::optional | ^~~ /usr/include/clang/Basic/ProfileList.h:57:8: error: 'optional' in namespace 'std' does not name a template type 57 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:57:3: note: 'std::optional' is only available from C++17 onwards 57 | std::optional | ^~~ /usr/include/clang/Basic/ProfileList.h:60:8: error: 'optional' in namespace 'std' does not name a template type 60 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:60:3: note: 'std::optional' is only available from C++17 onwards 60 | std::optional | ^~~ In file included from /usr/include/clang/AST/ASTContext.h:40: /usr/include/llvm/ADT/MapVector.h:42:12: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'? 42 | std::is_integral_v, | ^~~~~~~~~~~~~ | is_integral /usr/include/llvm/ADT/MapVector.h:42:55: error: expected '(' before '>' token 42 | std::is_integral_v, | ^ | ( /usr/include/llvm/ADT/MapVector.h:42:56: error: expected primary-expression before ',' token 42 | std::is_integral_v, | ^ /usr/include/llvm/ADT/MapVector.h: In member function 'ValueT llvm::MapVector::lookup(const KeyT&) const': /usr/include/llvm/ADT/MapVector.h:112:24: error: 'is_copy_constructible_v' is not a member of 'std'; did you mean 'is_copy_constructible'? 112 | static_assert(std::is_copy_constructible_v, | ^~~~~~~~~~~~~~~~~~~~~~~ | is_copy_constructible /usr/include/llvm/ADT/MapVector.h:112:54: error: expected primary-expression before '>' token 112 | static_assert(std::is_copy_constructible_v, | ^ /usr/include/llvm/ADT/MapVector.h:112:55: error: expected primary-expression before ',' token 112 | static_assert(std::is_copy_constructible_v, | ^ /usr/include/clang/AST/ASTContext.h: At global scope: /usr/include/clang/AST/ASTContext.h:1593:37: error: 'std::optional' has not been declared 1593 | std::optional PackIndex) const; | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:1593:45: error: expected ',' or '...' before '<' token 1593 | std::optional PackIndex) const; | ^ /usr/include/clang/AST/ASTContext.h:1656:38: error: 'std::optional' has not been declared 1656 | std::optional NumExpansions, | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:1656:46: error: expected ',' or '...' before '<' token 1656 | std::optional NumExpansions, | ^ /usr/include/clang/AST/ASTContext.h:2178:37: error: 'std::optional' has not been declared 2178 | std::optional PackIndex) const; | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:2178:45: error: expected ',' or '...' before '<' token 2178 | std::optional PackIndex) const; | ^ /usr/include/clang/AST/ASTContext.h:2292:8: error: 'optional' in namespace 'std' does not name a template type 2292 | std::optional getTypeSizeInCharsIfKnown(QualType Ty) const { | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:2292:3: note: 'std::optional' is only available from C++17 onwards 2292 | std::optional getTypeSizeInCharsIfKnown(QualType Ty) const { | ^~~ /usr/include/clang/AST/ASTContext.h:2298:8: error: 'optional' in namespace 'std' does not name a template type 2298 | std::optional getTypeSizeInCharsIfKnown(const Type *Ty) const { | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:2298:3: note: 'std::optional' is only available from C++17 onwards 2298 | std::optional getTypeSizeInCharsIfKnown(const Type *Ty) const { | ^~~ /usr/include/clang/AST/ASTContext.h: In member function 'bool clang::ASTContext::hasSameNullabilityTypeQualifier(clang::QualType, clang::QualType, bool) const': /usr/include/clang/AST/ASTContext.h:2549:34: error: 'const class clang::Type' has no member named 'getNullability' 2549 | auto SubTnullability = SubT->getNullability(); | ^~~~~~~~~~~~~~ /usr/include/clang/AST/ASTContext.h:2550:38: error: 'const class clang::Type' has no member named 'getNullability' 2550 | auto SuperTnullability = SuperT->getNullability(); | ^~~~~~~~~~~~~~ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::TemplateParameterList::asArray()': /usr/include/clang/AST/DeclTemplate.h:133:58: error: missing template arguments before '(' token 133 | ArrayRef asArray() { return llvm::ArrayRef(begin(), end()); } | ^ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::TemplateParameterList::asArray() const': /usr/include/clang/AST/DeclTemplate.h:135:26: error: missing template arguments before '(' token 135 | return llvm::ArrayRef(begin(), size()); | ^ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::TemplateArgumentList::asArray() const': /usr/include/clang/AST/DeclTemplate.h:291:26: error: missing template arguments before '(' token 291 | return llvm::ArrayRef(data(), size()); | ^ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::DependentFunctionTemplateSpecializationInfo::arguments() const': /usr/include/clang/AST/DeclTemplate.h:743:26: error: missing template arguments before '(' token 743 | return llvm::ArrayRef(getTemplateArgs(), getNumTemplateArgs()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::Chain*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::Chain*>' /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1236:17: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::Chain*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::Chain*>': /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1236:17: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::Chain*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclTemplate.h: At global scope: /usr/include/clang/AST/DeclTemplate.h:1241:29: error: 'std::optional' has not been declared 1241 | std::optional NumExpanded) | ^~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:1241:37: error: expected ',' or '...' before '<' token 1241 | std::optional NumExpanded) | ^ /usr/include/clang/AST/DeclTemplate.h:1252:15: error: 'std::optional' has not been declared 1252 | std::optional NumExpanded = std::nullopt); | ^~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:1252:23: error: expected ',' or '...' before '<' token 1252 | std::optional NumExpanded = std::nullopt); | ^ /usr/include/clang/AST/DeclTemplate.h:1252:10: error: default argument missing for parameter 11 of 'static clang::TemplateTypeParmDecl* clang::TemplateTypeParmDecl::Create(const clang::ASTContext&, clang::DeclContext*, clang::SourceLocation, clang::SourceLocation, unsigned int, unsigned int, clang::IdentifierInfo*, bool, bool, bool, int)' 1252 | std::optional NumExpanded = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:1251:50: note: ...following parameter 10 which has a default argument 1251 | bool Typename, bool ParameterPack, bool HasTypeConstraint = false, | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/clang/AST/DeclTemplate.h: In constructor 'clang::TemplateTypeParmDecl::TemplateTypeParmDecl(clang::DeclContext*, clang::SourceLocation, clang::SourceLocation, clang::IdentifierInfo*, bool, bool, int)': /usr/include/clang/AST/DeclTemplate.h:1245:33: error: request for member 'value_or' in '((clang::TemplateTypeParmDecl*)this)->clang::TemplateTypeParmDecl::NumExpanded', which is of non-class type 'unsigned int' 1245 | NumExpanded(NumExpanded.value_or(0)) {} | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::Chain*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::Chain*>' /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1419:17: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::Chain*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::Chain*>': /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1419:17: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::Chain*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::Chain*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::Chain*>' /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1632:17: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::Chain*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::Chain*>': /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1632:17: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::Chain*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:1843:5: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:1843:5: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:1978:31: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:1978:31: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:2481:15: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:2481:15: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:2705:3: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:2705:3: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:2832:31: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:2832:31: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:3424:53: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:3424:53: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclTemplate.h: At global scope: /usr/include/clang/AST/DeclTemplate.h:3453:13: error: 'optional' in namespace 'std' does not name a template type 3453 | inline std::optional getExpandedPackSize(const NamedDecl *Param) { | ^~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:3453:8: note: 'std::optional' is only available from C++17 onwards 3453 | inline std::optional getExpandedPackSize(const NamedDecl *Param) { | ^~~ /usr/include/clang/AST/DeclFriend.h:113:69: error: 'nullopt' is not a member of 'std' 113 | ArrayRef FriendTypeTPLists = std::nullopt); | ^~~~~~~ /usr/include/clang/AST/DeclFriend.h:113:69: note: 'std::nullopt' is only available from C++17 onwards In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:22: /usr/include/clang/AST/DeclObjC.h:391:64: error: 'nullopt' is not a member of 'std' 391 | ArrayRef SelLocs = std::nullopt); | ^~~~~~~ /usr/include/clang/AST/DeclObjC.h:391:64: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/DeclObjC.h: In member function 'llvm::ArrayRef clang::ObjCMethodDecl::parameters() const': /usr/include/clang/AST/DeclObjC.h:376:26: error: missing template arguments before '(' token 376 | return llvm::ArrayRef(const_cast(getParams()), NumParams); | ^ /usr/include/clang/AST/DeclObjC.h: In member function 'std::string clang::ObjCImplementationDecl::getNameAsString() const': /usr/include/clang/AST/DeclObjC.h:2713:69: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef)' 2713 | std::string getNameAsString() const { return std::string(getName()); } | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/AST/DeclObjC.h:2713:69: note: candidate expects 3 arguments, 1 provided 2713 | std::string getNameAsString() const { return std::string(getName()); } | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/llvm/Frontend/OpenMP/OMPContext.h:19, from /usr/include/clang/AST/OpenMPClause.h:37, from /usr/include/clang/AST/DeclOpenMP.h:21, from /usr/include/clang/AST/RecursiveASTVisitor.h:23: /usr/include/llvm/ADT/BitVector.h: In member function 'llvm::BitVector::size_type llvm::BitVector::count() const': /usr/include/llvm/ADT/BitVector.h:158:24: error: 'popcount' is not a member of 'llvm'; did you mean 'count'? 158 | NumBits += llvm::popcount(Bit); | ^~~~~~~~ | count /usr/include/llvm/ADT/DenseMap.h: In instantiation of 'class llvm::SmallDenseMap': /usr/include/llvm/Frontend/OpenMP/OMPContext.h:151:39: required from here /usr/include/llvm/ADT/DenseMap.h:890:30: error: non-constant condition for static assertion 890 | static_assert(isPowerOf2_64(InlineBuckets), | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/llvm/ADT/DenseMap.h:890:30: in 'constexpr' expansion of 'llvm::isPowerOf2_64(4)' /usr/include/llvm/ADT/DenseMap.h:890:30: error: 'constexpr' call flows off the end of the function /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPVarListClause::getVarRefs() const': /usr/include/clang/AST/OpenMPClause.h:339:26: error: missing template arguments before '(' token 339 | return llvm::ArrayRef( | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPPrivateClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:2560:26: error: missing template arguments before '(' token 2560 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFirstprivateClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:2669:26: error: missing template arguments before '(' token 2669 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFirstprivateClause::getInits() const': /usr/include/clang/AST/OpenMPClause.h:2683:26: error: missing template arguments before '(' token 2683 | return llvm::ArrayRef(getPrivateCopies().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:2831:26: error: missing template arguments before '(' token 2831 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getSourceExprs() const': /usr/include/clang/AST/OpenMPClause.h:2845:26: error: missing template arguments before '(' token 2845 | return llvm::ArrayRef(getPrivateCopies().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getDestinationExprs() const': /usr/include/clang/AST/OpenMPClause.h:2859:26: error: missing template arguments before '(' token 2859 | return llvm::ArrayRef(getSourceExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getAssignmentOps() const': /usr/include/clang/AST/OpenMPClause.h:2872:26: error: missing template arguments before '(' token 2872 | return llvm::ArrayRef(getDestinationExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3160:26: error: missing template arguments before '(' token 3160 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getLHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3173:26: error: missing template arguments before '(' token 3173 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getRHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3188:26: error: missing template arguments before '(' token 3188 | return llvm::ArrayRef(getLHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getReductionOps() const': /usr/include/clang/AST/OpenMPClause.h:3202:26: error: missing template arguments before '(' token 3202 | return llvm::ArrayRef(getRHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getInscanCopyOps() const': /usr/include/clang/AST/OpenMPClause.h:3214:26: error: missing template arguments before '(' token 3214 | return llvm::ArrayRef(getReductionOps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getInscanCopyArrayTemps() const': /usr/include/clang/AST/OpenMPClause.h:3225:26: error: missing template arguments before '(' token 3225 | return llvm::ArrayRef(getInscanCopyOps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getInscanCopyArrayElems() const': /usr/include/clang/AST/OpenMPClause.h:3237:26: error: missing template arguments before '(' token 3237 | return llvm::ArrayRef(getInscanCopyArrayTemps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3479:26: error: missing template arguments before '(' token 3479 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getLHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3492:26: error: missing template arguments before '(' token 3492 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getRHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3506:26: error: missing template arguments before '(' token 3506 | return llvm::ArrayRef(getLHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getReductionOps() const': /usr/include/clang/AST/OpenMPClause.h:3520:26: error: missing template arguments before '(' token 3520 | return llvm::ArrayRef(getRHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3710:26: error: missing template arguments before '(' token 3710 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getLHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3723:26: error: missing template arguments before '(' token 3723 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getRHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3737:26: error: missing template arguments before '(' token 3737 | return llvm::ArrayRef(getLHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getReductionOps() const': /usr/include/clang/AST/OpenMPClause.h:3751:26: error: missing template arguments before '(' token 3751 | return llvm::ArrayRef(getRHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getTaskgroupDescriptors() const': /usr/include/clang/AST/OpenMPClause.h:3762:26: error: missing template arguments before '(' token 3762 | return llvm::ArrayRef(getReductionOps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3968:26: error: missing template arguments before '(' token 3968 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getInits() const': /usr/include/clang/AST/OpenMPClause.h:3975:26: error: missing template arguments before '(' token 3975 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getUpdates() const': /usr/include/clang/AST/OpenMPClause.h:3983:26: error: missing template arguments before '(' token 3983 | return llvm::ArrayRef(getInits().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getFinals() const': /usr/include/clang/AST/OpenMPClause.h:3991:26: error: missing template arguments before '(' token 3991 | return llvm::ArrayRef(getUpdates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getUsedExprs() const': /usr/include/clang/AST/OpenMPClause.h:3999:26: error: missing template arguments before '(' token 3999 | return llvm::ArrayRef(getFinals().end() + 2, varlist_size() + 1); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyinClause::getSourceExprs() const': /usr/include/clang/AST/OpenMPClause.h:4328:26: error: missing template arguments before '(' token 4328 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyinClause::getDestinationExprs() const': /usr/include/clang/AST/OpenMPClause.h:4341:26: error: missing template arguments before '(' token 4341 | return llvm::ArrayRef(getSourceExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyinClause::getAssignmentOps() const': /usr/include/clang/AST/OpenMPClause.h:4355:26: error: missing template arguments before '(' token 4355 | return llvm::ArrayRef(getDestinationExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyprivateClause::getSourceExprs() const': /usr/include/clang/AST/OpenMPClause.h:4493:26: error: missing template arguments before '(' token 4493 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyprivateClause::getDestinationExprs() const': /usr/include/clang/AST/OpenMPClause.h:4506:26: error: missing template arguments before '(' token 4506 | return llvm::ArrayRef(getSourceExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyprivateClause::getAssignmentOps() const': /usr/include/clang/AST/OpenMPClause.h:4520:26: error: missing template arguments before '(' token 4520 | return llvm::ArrayRef(getDestinationExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'clang::OMPMappableExprListClause::const_component_lists_iterator clang::OMPMappableExprListClause::component_lists_begin() const': /usr/include/clang/AST/OpenMPClause.h:5638:51: error: 'nullopt' is not a member of 'std' 5638 | SupportsMapper ? getUDMapperRefs() : std::nullopt); | ^~~~~~~ /usr/include/clang/AST/OpenMPClause.h:5638:51: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/OpenMPClause.h: In member function 'clang::OMPMappableExprListClause::const_component_lists_iterator clang::OMPMappableExprListClause::component_lists_end() const': /usr/include/clang/AST/OpenMPClause.h:5645:30: error: 'nullopt' is not a member of 'std' 5645 | SupportsMapper, std::nullopt); | ^~~~~~~ /usr/include/clang/AST/OpenMPClause.h:5645:30: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/OpenMPClause.h: In member function 'clang::OMPMappableExprListClause::const_component_lists_iterator clang::OMPMappableExprListClause::decl_component_lists_begin(const clang::ValueDecl*) const': /usr/include/clang/AST/OpenMPClause.h:5658:51: error: 'nullopt' is not a member of 'std' 5658 | SupportsMapper ? getUDMapperRefs() : std::nullopt); | ^~~~~~~ /usr/include/clang/AST/OpenMPClause.h:5658:51: note: 'std::nullopt' is only available from C++17 onwards In file included from /usr/include/c++/13/cassert:44, from /usr/include/clang/AST/OpenMPClause.h:41: /usr/include/clang/AST/OpenMPClause.h: In constructor 'clang::OMPMapClause::OMPMapClause(llvm::ArrayRef, llvm::ArrayRef, clang::NestedNameSpecifierLoc, clang::DeclarationNameInfo, clang::OpenMPMapClauseKind, bool, clang::SourceLocation, const clang::OMPVarListLocTy&, const clang::OMPMappableExprListSizeTy&)': /usr/include/clang/AST/OpenMPClause.h:5810:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 5810 | assert(std::size(MapTypeModifiers) == MapModifiers.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h:5814:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 5814 | assert(std::size(MapTypeModifiersLoc) == MapModifiersLoc.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPMapClause::getMapTypeModifiers() const': /usr/include/clang/AST/OpenMPClause.h:5948:26: error: missing template arguments before '(' token 5948 | return llvm::ArrayRef(MapTypeModifiers); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPMapClause::getMapTypeModifiersLoc() const': /usr/include/clang/AST/OpenMPClause.h:5953:26: error: missing template arguments before '(' token 5953 | return llvm::ArrayRef(MapTypeModifiersLoc); | ^ /usr/include/clang/AST/OpenMPClause.h: In constructor 'clang::OMPToClause::OMPToClause(llvm::ArrayRef, llvm::ArrayRef, clang::NestedNameSpecifierLoc, clang::DeclarationNameInfo, const clang::OMPVarListLocTy&, const clang::OMPMappableExprListSizeTy&)': /usr/include/clang/AST/OpenMPClause.h:6788:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6788 | assert(std::size(MotionModifiers) == TheMotionModifiers.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h:6792:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6792 | assert(std::size(MotionModifiersLoc) == TheMotionModifiersLoc.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPToClause::getMotionModifiers() const': /usr/include/clang/AST/OpenMPClause.h:6904:26: error: missing template arguments before '(' token 6904 | return llvm::ArrayRef(MotionModifiers); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPToClause::getMotionModifiersLoc() const': /usr/include/clang/AST/OpenMPClause.h:6909:26: error: missing template arguments before '(' token 6909 | return llvm::ArrayRef(MotionModifiersLoc); | ^ /usr/include/clang/AST/OpenMPClause.h: In constructor 'clang::OMPFromClause::OMPFromClause(llvm::ArrayRef, llvm::ArrayRef, clang::NestedNameSpecifierLoc, clang::DeclarationNameInfo, const clang::OMPVarListLocTy&, const clang::OMPMappableExprListSizeTy&)': /usr/include/clang/AST/OpenMPClause.h:6989:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6989 | assert(std::size(MotionModifiers) == TheMotionModifiers.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h:6993:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6993 | assert(std::size(MotionModifiersLoc) == TheMotionModifiersLoc.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFromClause::getMotionModifiers() const': /usr/include/clang/AST/OpenMPClause.h:7104:26: error: missing template arguments before '(' token 7104 | return llvm::ArrayRef(MotionModifiers); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFromClause::getMotionModifiersLoc() const': /usr/include/clang/AST/OpenMPClause.h:7109:26: error: missing template arguments before '(' token 7109 | return llvm::ArrayRef(MotionModifiersLoc); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPUseDevicePtrClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:7204:26: error: missing template arguments before '(' token 7204 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPUseDevicePtrClause::getInits() const': /usr/include/clang/AST/OpenMPClause.h:7218:26: error: missing template arguments before '(' token 7218 | return llvm::ArrayRef(getPrivateCopies().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPNontemporalClause::getPrivateRefs() const': /usr/include/clang/AST/OpenMPClause.h:7652:26: error: missing template arguments before '(' token 7652 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::MutableArrayRef clang::OMPChildren::getClauses()': /usr/include/clang/AST/OpenMPClause.h:8934:33: error: missing template arguments before '(' token 8934 | return llvm::MutableArrayRef(getTrailingObjects(), | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPDeclarativeDirective::getClauses()': /usr/include/clang/AST/DeclOpenMP.h:37:19: error: 'nullopt' is not a member of 'std' 37 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/DeclOpenMP.h:37:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::ArrayRef clang::OMPDeclarativeDirective::clauses() const': /usr/include/clang/AST/DeclOpenMP.h:93:19: error: 'nullopt' is not a member of 'std' 93 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/DeclOpenMP.h:93:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::ArrayRef clang::OMPThreadPrivateDecl::getVars() const': /usr/include/clang/AST/DeclOpenMP.h:121:26: error: missing template arguments before '(' token 121 | return llvm::ArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPThreadPrivateDecl::getVars()': /usr/include/clang/AST/DeclOpenMP.h:126:33: error: missing template arguments before '(' token 126 | return llvm::MutableArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::ArrayRef clang::OMPAllocateDecl::getVars() const': /usr/include/clang/AST/DeclOpenMP.h:484:26: error: missing template arguments before '(' token 484 | return llvm::ArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPAllocateDecl::getVars()': /usr/include/clang/AST/DeclOpenMP.h:489:33: error: missing template arguments before '(' token 489 | return llvm::MutableArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprCXX.h:849:48: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprCXX.h:849:48: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:27: /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:2265:45: error: 'std::optional' has not been declared 2265 | SourceRange TypeIdParens, std::optional ArraySize, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2265:53: error: expected ',' or '...' before '<' token 2265 | SourceRange TypeIdParens, std::optional ArraySize, | ^ /usr/include/clang/AST/ExprCXX.h:2280:41: error: 'std::optional' has not been declared 2280 | SourceRange TypeIdParens, std::optional ArraySize, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2280:49: error: expected ',' or '...' before '<' token 2280 | SourceRange TypeIdParens, std::optional ArraySize, | ^ /usr/include/clang/AST/ExprCXX.h:2325:8: error: 'optional' in namespace 'std' does not name a template type 2325 | std::optional getArraySize() { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2325:3: note: 'std::optional' is only available from C++17 onwards 2325 | std::optional getArraySize() { | ^~~ /usr/include/clang/AST/ExprCXX.h:2339:8: error: 'optional' in namespace 'std' does not name a template type 2339 | std::optional getArraySize() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2339:3: note: 'std::optional' is only available from C++17 onwards 2339 | std::optional getArraySize() const { | ^~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprCXX.h:2544:58: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprCXX.h:2544:58: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::TypeTraitExpr::getArgs() const': /usr/include/clang/AST/ExprCXX.h:2799:26: error: missing template arguments before '(' token 2799 | return llvm::ArrayRef(getTrailingObjects(), getNumArgs()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/llvm/Support/TrailingObjects.h:77:22: required from 'class llvm::trailing_objects_internal::AlignmentCalcHelper >' /usr/include/llvm/Support/TrailingObjects.h:212:7: required from 'class llvm::TrailingObjects >' /usr/include/clang/AST/ExprCXX.h:3418:21: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/llvm/Support/TrailingObjects.h:77:22: required from 'class llvm::trailing_objects_internal::AlignmentCalcHelper >' /usr/include/llvm/Support/TrailingObjects.h:212:7: required from 'class llvm::TrailingObjects >' /usr/include/clang/AST/ExprCXX.h:3418:21: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef > clang::ExprWithCleanups::getObjects() const': /usr/include/clang/AST/ExprCXX.h:3445:26: error: missing template arguments before '(' token 3445 | return llvm::ArrayRef(getTrailingObjects(), getNumObjects()); | ^ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4141:26: error: 'std::optional' has not been declared 4141 | std::optional NumExpansions) | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4141:34: error: expected ',' or '...' before '<' token 4141 | std::optional NumExpansions) | ^ /usr/include/clang/AST/ExprCXX.h:4164:8: error: 'optional' in namespace 'std' does not name a template type 4164 | std::optional getNumExpansions() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4164:3: note: 'std::optional' is only available from C++17 onwards 4164 | std::optional getNumExpansions() const { | ^~~ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::PackExpansionExpr::PackExpansionExpr(clang::QualType, clang::Expr*, clang::SourceLocation, int)': /usr/include/clang/AST/ExprCXX.h:4145:39: error: invalid type argument of unary '*' (have 'unsigned int') 4145 | NumExpansions(NumExpansions ? *NumExpansions + 1 : 0), | ^~~~~~~~~~~~~~ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4235:23: error: 'std::optional' has not been declared 4235 | std::optional Length, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4235:31: error: expected ',' or '...' before '<' token 4235 | std::optional Length, | ^ /usr/include/clang/AST/ExprCXX.h:4256:15: error: 'std::optional' has not been declared 4256 | std::optional Length = std::nullopt, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4256:23: error: expected ',' or '...' before '<' token 4256 | std::optional Length = std::nullopt, | ^ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::SizeOfPackExpr::SizeOfPackExpr(clang::QualType, clang::SourceLocation, clang::NamedDecl*, clang::SourceLocation, clang::SourceLocation, int)': /usr/include/clang/AST/ExprCXX.h:4239:25: error: invalid type argument of unary '*' (have 'unsigned int') 4239 | Length(Length ? *Length : PartialArgs.size()), Pack(Pack) { | ^~~~~~~ /usr/include/clang/AST/ExprCXX.h:4239:35: error: 'PartialArgs' was not declared in this scope 4239 | Length(Length ? *Length : PartialArgs.size()), Pack(Pack) { | ^~~~~~~~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::SizeOfPackExpr::getPartialArguments() const': /usr/include/clang/AST/ExprCXX.h:4296:26: error: missing template arguments before '(' token 4296 | return llvm::ArrayRef(Args, Args + Length); | ^ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4340:37: error: 'std::optional' has not been declared 4340 | std::optional PackIndex, bool RefParam) | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4340:45: error: expected ',' or '...' before '<' token 4340 | std::optional PackIndex, bool RefParam) | ^ /usr/include/clang/AST/ExprCXX.h:4366:8: error: 'optional' in namespace 'std' does not name a template type 4366 | std::optional getPackIndex() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4366:3: note: 'std::optional' is only available from C++17 onwards 4366 | std::optional getPackIndex() const { | ^~~ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::SubstNonTypeTemplateParmExpr::SubstNonTypeTemplateParmExpr(clang::QualType, clang::ExprValueKind, clang::SourceLocation, clang::Expr*, clang::Decl*, unsigned int, int)': /usr/include/clang/AST/ExprCXX.h:4343:46: error: 'RefParam' was not declared in this scope 4343 | AssociatedDeclAndRef(AssociatedDecl, RefParam), Index(Index), | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4344:31: error: invalid type argument of unary '*' (have 'unsigned int') 4344 | PackIndex(PackIndex ? *PackIndex + 1 : 0) { | ^~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprCXX.h:4567:63: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprCXX.h:4567:63: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4693:20: error: 'std::optional' has not been declared 4693 | std::optional NumExpansions) | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4693:28: error: expected ',' or '...' before '<' token 4693 | std::optional NumExpansions) | ^ /usr/include/clang/AST/ExprCXX.h:4730:8: error: 'optional' in namespace 'std' does not name a template type 4730 | std::optional getNumExpansions() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4730:3: note: 'std::optional' is only available from C++17 onwards 4730 | std::optional getNumExpansions() const { | ^~~ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::CXXFoldExpr::CXXFoldExpr(clang::QualType, clang::UnresolvedLookupExpr*, clang::SourceLocation, clang::Expr*, clang::BinaryOperatorKind, clang::SourceLocation, clang::Expr*, clang::SourceLocation, int)': /usr/include/clang/AST/ExprCXX.h:4696:39: error: invalid type argument of unary '*' (have 'unsigned int') 4696 | NumExpansions(NumExpansions ? *NumExpansions + 1 : 0), Opcode(Opcode) { | ^~~~~~~~~~~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::CXXParenListInitExpr::getInitExprs()': /usr/include/clang/AST/ExprCXX.h:4837:20: error: missing template arguments before '(' token 4837 | return ArrayRef(getTrailingObjects(), NumExprs); | ^ /usr/include/clang/AST/ExprCXX.h: In member function 'const llvm::ArrayRef clang::CXXParenListInitExpr::getInitExprs() const': /usr/include/clang/AST/ExprCXX.h:4841:20: error: missing template arguments before '(' token 4841 | return ArrayRef(getTrailingObjects(), NumExprs); | ^ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::CXXParenListInitExpr::getUserSpecifiedInitExprs()': /usr/include/clang/AST/ExprCXX.h:4845:20: error: missing template arguments before '(' token 4845 | return ArrayRef(getTrailingObjects(), NumUserSpecifiedExprs); | ^ /usr/include/clang/AST/ExprCXX.h: In member function 'const llvm::ArrayRef clang::CXXParenListInitExpr::getUserSpecifiedInitExprs() const': /usr/include/clang/AST/ExprCXX.h:4849:20: error: missing template arguments before '(' token 4849 | return ArrayRef(getTrailingObjects(), NumUserSpecifiedExprs); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprConcepts.h:216:66: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprConcepts.h:216:66: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprConcepts.h:336:56: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprConcepts.h:336:56: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprConcepts.h:283:33: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprConcepts.h:283:33: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:29: /usr/include/clang/AST/ExprObjC.h: At global scope: /usr/include/clang/AST/ExprObjC.h:274:8: error: 'optional' in namespace 'std' does not name a template type 274 | std::optional NumExpansions; | ^~~~~~~~ /usr/include/clang/AST/ExprObjC.h:274:3: note: 'std::optional' is only available from C++17 onwards 274 | std::optional NumExpansions; | ^~~ /usr/include/clang/AST/ExprObjC.h: In member function 'clang::ObjCDictionaryElement clang::ObjCDictionaryLiteral::getKeyValueElement(unsigned int) const': /usr/include/clang/AST/ExprObjC.h:365:42: error: 'nullopt' is not a member of 'std' 365 | std::nullopt}; | ^~~~~~~ /usr/include/clang/AST/ExprObjC.h:365:42: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/ExprObjC.h:365:49: error: too many initializers for 'clang::ObjCDictionaryElement' 365 | std::nullopt}; | ^ /usr/include/clang/AST/ExprObjC.h:371:16: error: 'struct clang::ObjCDictionaryElement' has no member named 'NumExpansions' 371 | Result.NumExpansions = Expansion.NumExpansionsPlusOne - 1; | ^~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprObjC.h:645:65: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprObjC.h:645:65: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprObjC.h: In member function 'clang::SourceLocation clang::ObjCMessageExpr::getSelectorLoc(unsigned int) const': /usr/include/clang/AST/ExprObjC.h:1420:25: error: missing template arguments before '(' token 1420 | llvm::ArrayRef(const_cast(getArgs()), getNumArgs()), | ^ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:30: /usr/include/clang/AST/ExprOpenMP.h: In member function 'llvm::ArrayRef clang::OMPArrayShapingExpr::getDimensions() const': /usr/include/clang/AST/ExprOpenMP.h:205:26: error: missing template arguments before '(' token 205 | return llvm::ArrayRef(getTrailingObjects(), NumDims); | ^ /usr/include/clang/AST/ExprOpenMP.h: In member function 'llvm::ArrayRef clang::OMPArrayShapingExpr::getBracketsRanges() const': /usr/include/clang/AST/ExprOpenMP.h:210:26: error: missing template arguments before '(' token 210 | return llvm::ArrayRef(getTrailingObjects(), NumDims); | ^ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:37: /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPExecutableDirective::getClauses()': /usr/include/clang/AST/StmtOpenMP.h:280:19: error: 'nullopt' is not a member of 'std' 280 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/StmtOpenMP.h:280:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/StmtOpenMP.h: In static member function 'static llvm::iterator_range clang::OMPExecutableDirective::used_clauses_children(llvm::ArrayRef)': /usr/include/clang/AST/StmtOpenMP.h:404:36: error: expected primary-expression before '(' token 404 | used_clauses_child_iterator(llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ /usr/include/clang/AST/StmtOpenMP.h:404:51: error: missing template arguments before '(' token 404 | used_clauses_child_iterator(llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ /usr/include/clang/AST/StmtOpenMP.h:404:78: error: could not convert '{clang::OMPExecutableDirective::used_clauses_child_iterator(Clauses), }' from '' to 'llvm::iterator_range' 404 | used_clauses_child_iterator(llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ | | | /usr/include/clang/AST/StmtOpenMP.h: In static member function 'static llvm::iterator_range > clang::OMPExecutableDirective::getClausesOfKind(llvm::ArrayRef)': /usr/include/clang/AST/StmtOpenMP.h:448:53: error: expected primary-expression before '(' token 448 | specific_clause_iterator( | ^ /usr/include/clang/AST/StmtOpenMP.h:449:31: error: missing template arguments before '(' token 449 | llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::ArrayRef clang::OMPExecutableDirective::clauses() const': /usr/include/clang/AST/StmtOpenMP.h:575:19: error: 'nullopt' is not a member of 'std' 575 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/StmtOpenMP.h:575:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getCounters()': /usr/include/clang/AST/StmtOpenMP.h:1070:33: error: missing template arguments before '(' token 1070 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getPrivateCounters()': /usr/include/clang/AST/StmtOpenMP.h:1078:33: error: missing template arguments before '(' token 1078 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getInits()': /usr/include/clang/AST/StmtOpenMP.h:1086:33: error: missing template arguments before '(' token 1086 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getUpdates()': /usr/include/clang/AST/StmtOpenMP.h:1094:33: error: missing template arguments before '(' token 1094 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getFinals()': /usr/include/clang/AST/StmtOpenMP.h:1102:33: error: missing template arguments before '(' token 1102 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getDependentCounters()': /usr/include/clang/AST/StmtOpenMP.h:1110:33: error: missing template arguments before '(' token 1110 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getDependentInits()': /usr/include/clang/AST/StmtOpenMP.h:1118:33: error: missing template arguments before '(' token 1118 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getFinalsConditions()': /usr/include/clang/AST/StmtOpenMP.h:1126:33: error: missing template arguments before '(' token 1126 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ In file included from /usr/include/clang/Basic/FileEntry.h:17, from /usr/include/clang/Basic/SourceManager.h:38, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/AggregateToScalar.cpp:21: /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:35:34: error: invalid use of '::' 35 | constexpr CustomizableOptional(std::nullopt_t) {} | ^~~ /usr/include/clang/Basic/CustomizableOptional.h:35:51: error: expected ';' at end of member declaration 35 | constexpr CustomizableOptional(std::nullopt_t) {} | ^ | ; /usr/include/clang/Basic/CustomizableOptional.h:45:49: error: expected ')' before ',' token 45 | constexpr CustomizableOptional(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/CustomizableOptional.h:49:45: error: 'optional' in namespace 'std' does not name a template type 49 | constexpr CustomizableOptional(const std::optional &y) | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:49:40: note: 'std::optional' is only available from C++17 onwards 49 | constexpr CustomizableOptional(const std::optional &y) | ^~~ /usr/include/clang/Basic/CustomizableOptional.h:49:53: error: expected ',' or '...' before '<' token 49 | constexpr CustomizableOptional(const std::optional &y) | ^ /usr/include/clang/Basic/CustomizableOptional.h:51:47: error: expected ')' before '<' token 51 | constexpr CustomizableOptional(std::optional &&y) | ~ ^ | ) /usr/include/clang/Basic/CustomizableOptional.h:102:26: error: 'optional' in namespace 'std' does not name a template type 102 | explicit operator std::optional &() const & { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:102:21: note: 'std::optional' is only available from C++17 onwards 102 | explicit operator std::optional &() const & { | ^~~ /usr/include/clang/Basic/CustomizableOptional.h:105:26: error: 'optional' in namespace 'std' does not name a template type 105 | explicit operator std::optional &&() const && { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:105:21: note: 'std::optional' is only available from C++17 onwards 105 | explicit operator std::optional &&() const && { | ^~~ /usr/include/clang/Basic/CustomizableOptional.h: In constructor 'constexpr clang::CustomizableOptional::CustomizableOptional(const T&)': /usr/include/clang/Basic/CustomizableOptional.h:37:61: error: 'in_place' is not a member of 'std' 37 | constexpr CustomizableOptional(const T &y) : Storage(std::in_place, y) {} | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:37:61: note: 'std::in_place' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: In constructor 'constexpr clang::CustomizableOptional::CustomizableOptional(T&&)': /usr/include/clang/Basic/CustomizableOptional.h:41:22: error: 'in_place' is not a member of 'std' 41 | : Storage(std::in_place, std::move(y)) {} | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:41:22: note: 'std::in_place' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: In constructor 'constexpr clang::CustomizableOptional::CustomizableOptional(int)': /usr/include/clang/Basic/CustomizableOptional.h:50:30: error: 'y' was not declared in this scope 50 | : CustomizableOptional(y ? *y : CustomizableOptional()) {} | ^ /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:111:59: error: expected constructor, destructor, or type conversion before ';' token 111 | CustomizableOptional(const T &) -> CustomizableOptional; | ^ /usr/include/clang/Basic/CustomizableOptional.h:159:66: error: 'std::nullopt_t' has not been declared 159 | constexpr bool operator==(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:164:16: error: declaration of 'operator==' as non-function 164 | constexpr bool operator==(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:164:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 164 | constexpr bool operator==(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:164:43: error: expected primary-expression before 'const' 164 | constexpr bool operator==(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:169:66: error: 'std::nullopt_t' has not been declared 169 | constexpr bool operator!=(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator!=(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:170:22: error: 'nullopt' is not a member of 'std' 170 | return !(X == std::nullopt); | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:170:22: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:174:16: error: declaration of 'operator!=' as non-function 174 | constexpr bool operator!=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:174:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 174 | constexpr bool operator!=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:174:43: error: expected primary-expression before 'const' 174 | constexpr bool operator!=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:179:64: error: 'std::nullopt_t' has not been declared 179 | constexpr bool operator<(const CustomizableOptional &, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:184:16: error: declaration of 'operator<' as non-function 184 | constexpr bool operator<(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:184:31: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 184 | constexpr bool operator<(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:184:42: error: expected primary-expression before 'const' 184 | constexpr bool operator<(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:189:66: error: 'std::nullopt_t' has not been declared 189 | constexpr bool operator<=(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator<=(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:190:17: error: 'nullopt' is not a member of 'std' 190 | return !(std::nullopt < X); | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:190:17: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:194:16: error: declaration of 'operator<=' as non-function 194 | constexpr bool operator<=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:194:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 194 | constexpr bool operator<=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:194:43: error: expected primary-expression before 'const' 194 | constexpr bool operator<=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:199:65: error: 'std::nullopt_t' has not been declared 199 | constexpr bool operator>(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator>(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:200:15: error: 'nullopt' is not a member of 'std' 200 | return std::nullopt < X; | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:200:15: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:204:16: error: declaration of 'operator>' as non-function 204 | constexpr bool operator>(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:204:31: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 204 | constexpr bool operator>(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:204:42: error: expected primary-expression before 'const' 204 | constexpr bool operator>(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:209:66: error: 'std::nullopt_t' has not been declared 209 | constexpr bool operator>=(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator>=(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:210:15: error: 'nullopt' is not a member of 'std' 210 | return std::nullopt <= X; | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:210:15: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:214:16: error: declaration of 'operator>=' as non-function 214 | constexpr bool operator>=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:214:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 214 | constexpr bool operator>=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:214:43: error: expected primary-expression before 'const' 214 | constexpr bool operator>=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ In file included from /usr/include/clang/Basic/FileEntry.h:18: /usr/include/clang/Basic/DirectoryEntry.h:134:51: error: expected ')' before ',' token 134 | explicit MapEntryOptionalStorage(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/DirectoryEntry.h:180:43: error: expected ')' before ',' token 180 | explicit OptionalStorage(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/DirectoryEntry.h:181:38: error: expected unqualified-id before ',' token 181 | : StorageImpl(std::in_place_t{}, std::forward(Args)...) {} | ^ /usr/include/clang/Basic/DirectoryEntry.h:269:56: error: invalid use of '::' 269 | OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr(std::nullopt_t) {} | ^~~ /usr/include/clang/Basic/DirectoryEntry.h:269:73: error: expected ';' at end of member declaration 269 | OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr(std::nullopt_t) {} | ^ | ; /usr/include/clang/Basic/DirectoryEntry.h:277:18: error: 'std::nullopt_t' has not been declared 277 | operator=(std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/DirectoryEntry.h: In member function 'clang::OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr& clang::OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr::operator=(int)': /usr/include/clang/Basic/DirectoryEntry.h:278:47: error: 'nullopt' is not a member of 'std' 278 | OptionalDirectoryEntryRef::operator=(std::nullopt); | ^~~~~~~ /usr/include/clang/Basic/DirectoryEntry.h:278:47: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/Basic/FileEntry.h:124:51: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/Basic/FileEntry.h:124:51: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/Basic/FileEntry.h: At global scope: /usr/include/clang/Basic/FileEntry.h:221:43: error: expected ')' before ',' token 221 | explicit OptionalStorage(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/FileEntry.h:222:38: error: expected unqualified-id before ',' token 222 | : StorageImpl(std::in_place_t{}, std::forward(Args)...) {} | ^ /usr/include/clang/Basic/FileEntry.h:305:46: error: invalid use of '::' 305 | OptionalFileEntryRefDegradesToFileEntryPtr(std::nullopt_t) {} | ^~~ /usr/include/clang/Basic/FileEntry.h:305:63: error: expected ';' at end of member declaration 305 | OptionalFileEntryRefDegradesToFileEntryPtr(std::nullopt_t) {} | ^ | ; /usr/include/clang/Basic/FileEntry.h:311:62: error: 'std::nullopt_t' has not been declared 311 | OptionalFileEntryRefDegradesToFileEntryPtr &operator=(std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/FileEntry.h: In member function 'clang::OptionalFileEntryRefDegradesToFileEntryPtr& clang::OptionalFileEntryRefDegradesToFileEntryPtr::operator=(int)': /usr/include/clang/Basic/FileEntry.h:312:42: error: 'nullopt' is not a member of 'std' 312 | OptionalFileEntryRef::operator=(std::nullopt); | ^~~~~~~ /usr/include/clang/Basic/FileEntry.h:312:42: note: 'std::nullopt' is only available from C++17 onwards In file included from /usr/include/llvm/Support/FormatProviders.h:21, from /usr/include/llvm/Support/Chrono.h:13, from /usr/include/llvm/Support/FileSystem.h:33, from /usr/include/clang/Basic/FileManager.h:29, from /usr/include/clang/Basic/SourceManager.h:39: /usr/include/llvm/Support/NativeFormatting.h: At global scope: /usr/include/llvm/Support/NativeFormatting.h:41:21: error: 'std::optional' has not been declared 41 | std::optional Width = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/NativeFormatting.h:41:29: error: expected ',' or '...' before '<' token 41 | std::optional Width = std::nullopt); | ^ /usr/include/llvm/Support/NativeFormatting.h:43:24: error: 'std::optional' has not been declared 43 | std::optional Precision = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/NativeFormatting.h:43:32: error: expected ',' or '...' before '<' token 43 | std::optional Precision = std::nullopt); | ^ /usr/include/llvm/Support/FormatProviders.h:32:17: error: 'is_one_of' was not declared in this scope; did you mean 'none_of'? 32 | bool, is_one_of::value> {}; | ^ /usr/include/c++/13/type_traits:62:12: note: provided for 'template struct std::integral_constant' 62 | struct integral_constant | ^~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:34:57: error: expected '{' before '::' token 34 | long long, unsigned long long>::value> {}; | ^~ /usr/include/llvm/Support/FormatProviders.h:43:37: error: 'is_one_of' was not declared in this scope; did you mean 'none_of'? 43 | is_one_of::value> { | ^~~~~~~~~ | none_of /usr/include/llvm/Support/FormatProviders.h:43:70: error: wrong number of template arguments (4, should be 2) 43 | is_one_of::value> { | ^ /usr/include/c++/13/type_traits:62:12: note: provided for 'template struct std::integral_constant' 62 | struct integral_constant | ^~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:43:71: error: expected '{' before '::' token 43 | is_one_of::value> { | ^~ /usr/include/llvm/Support/FormatProviders.h:62:15: error: 'optional' in namespace 'std' does not name a template type 62 | static std::optional parseNumericPrecision(StringRef Str) { | ^~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:62:10: note: 'std::optional' is only available from C++17 onwards 62 | static std::optional parseNumericPrecision(StringRef Str) { | ^~~ /usr/include/llvm/Support/FormatProviders.h: In instantiation of 'struct llvm::detail::use_pointer_formatter >': /usr/include/llvm/Support/FormatProviders.h:219:33: recursively required by substitution of 'template struct llvm::format_provider::value, void>::type> [with T = std::__cxx11::basic_string]' /usr/include/llvm/Support/FormatProviders.h:219:33: required from here /usr/include/llvm/Support/FormatProviders.h:54:63: error: incomplete type 'llvm::detail::is_cstring >' used in nested name specifier 54 | !is_cstring::value> {}; | ^~~~~ /usr/include/llvm/Support/FormatProviders.h: In instantiation of 'struct llvm::detail::use_pointer_formatter': /usr/include/llvm/Support/FormatProviders.h:241:27: recursively required by substitution of 'template struct llvm::format_provider::value, void>::type> [with T = int]' /usr/include/llvm/Support/FormatProviders.h:241:27: required from here /usr/include/llvm/Support/FormatProviders.h:54:63: error: incomplete type 'llvm::detail::is_cstring' used in nested name specifier /usr/include/llvm/Support/FormatProviders.h: In static member function 'static void llvm::format_provider::value, void>::type>::format(const char&, llvm::raw_ostream&, llvm::StringRef)': /usr/include/llvm/Support/FormatProviders.h:241:29: error: 'format' is not a member of 'llvm::format_provider' 241 | format_provider::format(X, Stream, Style); | ^~~~~~ /usr/include/llvm/Support/FormatProviders.h: In static member function 'static void llvm::format_provider::value, void>::type>::format(const T&, llvm::raw_ostream&, llvm::StringRef)': /usr/include/llvm/Support/FormatProviders.h:315:10: error: 'optional' is not a member of 'std' 315 | std::optional Precision = parseNumericPrecision(Style); | ^~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:315:10: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/FormatProviders.h:315:25: error: expected primary-expression before '>' token 315 | std::optional Precision = parseNumericPrecision(Style); | ^ /usr/include/llvm/Support/FormatProviders.h:315:27: error: 'Precision' was not declared in this scope 315 | std::optional Precision = parseNumericPrecision(Style); | ^~~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:315:39: error: there are no arguments to 'parseNumericPrecision' that depend on a template parameter, so a declaration of 'parseNumericPrecision' must be available [-fpermissive] 315 | std::optional Precision = parseNumericPrecision(Style); | ^~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/llvm/Support/Error.h:18, from /usr/include/llvm/Support/FileSystem.h:34: /usr/include/llvm/ADT/StringExtras.h: In function 'std::string llvm::toString(const APInt&, unsigned int, bool, bool)': /usr/include/llvm/ADT/StringExtras.h:322:29: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef)' 322 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/ADT/StringExtras.h:322:29: note: candidate expects 3 arguments, 1 provided 322 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/llvm/Support/Error.h:26: /usr/include/llvm/Support/Format.h: At global scope: /usr/include/llvm/Support/Format.h:83:22: error: 'is_scalar_v' is not a member of 'std'; did you mean 'is_scalar'? 83 | static_assert(std::is_scalar_v, | ^~~~~~~~~~~ | is_scalar /usr/include/llvm/Support/Format.h:83:37: error: expected primary-expression before '>' token 83 | static_assert(std::is_scalar_v, | ^ /usr/include/llvm/Support/Format.h:83:38: error: expected primary-expression before ',' token 83 | static_assert(std::is_scalar_v, | ^ /usr/include/llvm/Support/Format.h:219:8: error: 'optional' in namespace 'std' does not name a template type 219 | std::optional FirstByteOffset; | ^~~~~~~~ /usr/include/llvm/Support/Format.h:219:3: note: 'std::optional' is only available from C++17 onwards 219 | std::optional FirstByteOffset; | ^~~ /usr/include/llvm/Support/Format.h:228:57: error: 'std::optional' has not been declared 228 | FormattedBytes(ArrayRef B, uint32_t IL, std::optional O, | ^~~~~~~~ /usr/include/llvm/Support/Format.h:228:65: error: expected ',' or '...' before '<' token 228 | FormattedBytes(ArrayRef B, uint32_t IL, std::optional O, | ^ /usr/include/llvm/Support/Format.h: In constructor 'llvm::FormattedBytes::FormattedBytes(llvm::ArrayRef, uint32_t, int)': /usr/include/llvm/Support/Format.h:230:19: error: class 'llvm::FormattedBytes' does not have any field named 'FirstByteOffset' 230 | : Bytes(B), FirstByteOffset(O), IndentLevel(IL), NumPerLine(NPL), | ^~~~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:230:35: error: 'O' was not declared in this scope 230 | : Bytes(B), FirstByteOffset(O), IndentLevel(IL), NumPerLine(NPL), | ^ /usr/include/llvm/Support/Format.h:230:67: error: 'NPL' was not declared in this scope 230 | : Bytes(B), FirstByteOffset(O), IndentLevel(IL), NumPerLine(NPL), | ^~~ /usr/include/llvm/Support/Format.h:231:23: error: 'BGS' was not declared in this scope 231 | ByteGroupSize(BGS), Upper(U), ASCII(A) { | ^~~ /usr/include/llvm/Support/Format.h:231:35: error: 'U' was not declared in this scope 231 | ByteGroupSize(BGS), Upper(U), ASCII(A) { | ^ /usr/include/llvm/Support/Format.h:231:45: error: 'A' was not declared in this scope 231 | ByteGroupSize(BGS), Upper(U), ASCII(A) { | ^ /usr/include/llvm/Support/Format.h: At global scope: /usr/include/llvm/Support/Format.h:240:19: error: 'std::optional' has not been declared 240 | std::optional FirstByteOffset = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/Format.h:240:27: error: expected ',' or '...' before '<' token 240 | std::optional FirstByteOffset = std::nullopt, | ^ /usr/include/llvm/Support/Format.h: In function 'llvm::FormattedBytes llvm::format_bytes(ArrayRef, int)': /usr/include/llvm/Support/Format.h:243:32: error: 'IndentLevel' was not declared in this scope 243 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~ /usr/include/llvm/Support/Format.h:243:45: error: 'FirstByteOffset' was not declared in this scope 243 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:243:62: error: 'NumPerLine' was not declared in this scope 243 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~ /usr/include/llvm/Support/Format.h:244:25: error: 'ByteGroupSize' was not declared in this scope 244 | ByteGroupSize, Upper, false); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:244:40: error: 'Upper' was not declared in this scope; did you mean 'llvm::HexPrintStyle::Upper'? 244 | ByteGroupSize, Upper, false); | ^~~~~ | llvm::HexPrintStyle::Upper /usr/include/llvm/Support/NativeFormatting.h:22:28: note: 'llvm::HexPrintStyle::Upper' declared here 22 | enum class HexPrintStyle { Upper, Lower, PrefixUpper, PrefixLower }; | ^~~~~ /usr/include/llvm/Support/Format.h: At global scope: /usr/include/llvm/Support/Format.h:249:30: error: 'std::optional' has not been declared 249 | std::optional FirstByteOffset = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/Format.h:249:38: error: expected ',' or '...' before '<' token 249 | std::optional FirstByteOffset = std::nullopt, | ^ /usr/include/llvm/Support/Format.h: In function 'llvm::FormattedBytes llvm::format_bytes_with_ascii(ArrayRef, int)': /usr/include/llvm/Support/Format.h:252:32: error: 'IndentLevel' was not declared in this scope 252 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~ /usr/include/llvm/Support/Format.h:252:45: error: 'FirstByteOffset' was not declared in this scope 252 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:252:62: error: 'NumPerLine' was not declared in this scope 252 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~ /usr/include/llvm/Support/Format.h:253:25: error: 'ByteGroupSize' was not declared in this scope 253 | ByteGroupSize, Upper, true); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:253:40: error: 'Upper' was not declared in this scope; did you mean 'llvm::HexPrintStyle::Upper'? 253 | ByteGroupSize, Upper, true); | ^~~~~ | llvm::HexPrintStyle::Upper /usr/include/llvm/Support/NativeFormatting.h:22:28: note: 'llvm::HexPrintStyle::Upper' declared here 22 | enum class HexPrintStyle { Upper, Lower, PrefixUpper, PrefixLower }; | ^~~~~ /usr/include/llvm/Support/Error.h: At global scope: /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:59: error: template argument 1 is invalid 512 | std::enable_if_t> * = nullptr) | ^ /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:60: error: template argument 1 is invalid 512 | std::enable_if_t> * = nullptr) | ^~ /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:60: error: template argument 1 is invalid 512 | std::enable_if_t> * = nullptr) | ^~ /usr/include/llvm/Support/Error.h:512:17: error: 'std::enable_if_t' is not a type 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~ /usr/include/llvm/Support/Error.h:512:28: error: expected ',' or '...' before '<' token 512 | std::enable_if_t> * = nullptr) | ^ /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:59: error: template argument 1 is invalid 530 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:60: error: template argument 1 is invalid 530 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:60: error: template argument 1 is invalid 530 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:530:17: error: 'std::enable_if_t' is not a type 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~ /usr/include/llvm/Support/Error.h:530:28: error: expected ',' or '...' before '<' token 530 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:539:30: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:539:55: error: template argument 1 is invalid 539 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:539:30: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:539:56: error: template argument 1 is invalid 539 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:539:30: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:539:56: error: template argument 1 is invalid 539 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:539:12: error: 'std::enable_if_t' is not a type 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~ /usr/include/llvm/Support/Error.h:539:23: error: expected ',' or '...' before '<' token 539 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:537:12: error: 'template template llvm::Expected::Expected(llvm::Expected&&, int)' cannot be overloaded with 'template template llvm::Expected::Expected(llvm::Expected&&, int)' 537 | explicit Expected( | ^~~~~~~~ /usr/include/llvm/Support/Error.h:529:3: note: previous declaration 'template template llvm::Expected::Expected(llvm::Expected&&, int)' 529 | Expected(Expected &&Other, | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1054:28: error: 'optional' in namespace 'std' does not name a template type 1054 | template std::optional expectedToOptional(Expected &&E) { | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1054:23: note: 'std::optional' is only available from C++17 onwards 1054 | template std::optional expectedToOptional(Expected &&E) { | ^~~ /usr/include/llvm/Support/Error.h:1061:28: error: 'optional' in namespace 'std' does not name a template type 1061 | template std::optional expectedToStdOptional(Expected &&E) { | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1061:23: note: 'std::optional' is only available from C++17 onwards 1061 | template std::optional expectedToStdOptional(Expected &&E) { | ^~~ /usr/include/llvm/Support/Error.h:1301:34: error: 'std::optional' has not been declared 1301 | FileError(const Twine &F, std::optional LineNum, | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1301:42: error: expected ',' or '...' before '<' token 1301 | FileError(const Twine &F, std::optional LineNum, | ^ /usr/include/llvm/Support/Error.h:1309:43: error: 'std::optional' has not been declared 1309 | static Error build(const Twine &F, std::optional Line, Error E) { | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1309:51: error: expected ',' or '...' before '<' token 1309 | static Error build(const Twine &F, std::optional Line, Error E) { | ^ /usr/include/llvm/Support/Error.h:1321:8: error: 'optional' in namespace 'std' does not name a template type 1321 | std::optional Line; | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1321:3: note: 'std::optional' is only available from C++17 onwards 1321 | std::optional Line; | ^~~ /usr/include/llvm/Support/Error.h: In member function 'virtual void llvm::FileError::log(llvm::raw_ostream&) const': /usr/include/llvm/Support/Error.h:1279:9: error: 'Line' was not declared in this scope 1279 | if (Line) | ^~~~ In file included from /usr/include/c++/13/cassert:44, from /usr/include/llvm/Support/Error.h:28: /usr/include/llvm/Support/Error.h: In constructor 'llvm::FileError::FileError(const llvm::Twine&, int)': /usr/include/llvm/Support/Error.h:1303:5: error: 'E' was not declared in this scope 1303 | assert(E && "Cannot create FileError from Error success value."); | ^~~~~~ /usr/include/llvm/Support/Error.h:1306:5: error: 'Line' was not declared in this scope 1306 | Line = std::move(LineNum); | ^~~~ /usr/include/llvm/Support/Error.h:1306:22: error: 'LineNum' was not declared in this scope 1306 | Line = std::move(LineNum); | ^~~~~~~ /usr/include/llvm/Support/Error.h: In static member function 'static llvm::Error llvm::FileError::build(const llvm::Twine&, int)': /usr/include/llvm/Support/Error.h:1311:31: error: 'E' was not declared in this scope 1311 | handleAllErrors(std::move(E), | ^ /usr/include/llvm/Support/Error.h:1317:53: error: 'Line' was not declared in this scope 1317 | std::unique_ptr(new FileError(F, Line, std::move(Payload)))); | ^~~~ /usr/include/llvm/Support/Error.h: In function 'llvm::Error llvm::createFileError(const Twine&, Error)': /usr/include/llvm/Support/Error.h:1328:35: error: 'optional' is not a member of 'std' 1328 | return FileError::build(F, std::optional(), std::move(E)); | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1328:35: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Error.h:1328:50: error: expected primary-expression before '>' token 1328 | return FileError::build(F, std::optional(), std::move(E)); | ^ /usr/include/llvm/Support/Error.h:1328:52: error: expected primary-expression before ')' token 1328 | return FileError::build(F, std::optional(), std::move(E)); | ^ /usr/include/llvm/Support/Error.h: In function 'llvm::Error llvm::createFileError(const Twine&, size_t, Error)': /usr/include/llvm/Support/Error.h:1334:35: error: 'optional' is not a member of 'std' 1334 | return FileError::build(F, std::optional(Line), std::move(E)); | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1334:35: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Error.h:1334:50: error: expected primary-expression before '>' token 1334 | return FileError::build(F, std::optional(Line), std::move(E)); | ^ In file included from /usr/include/llvm/Support/SourceMgr.h:19, from /usr/include/llvm/Support/VirtualFileSystem.h:26, from /usr/include/clang/Basic/FileManager.h:30: /usr/include/llvm/Support/MemoryBuffer.h: At global scope: /usr/include/llvm/Support/MemoryBuffer.h:100:16: error: 'std::optional' has not been declared 100 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:100:24: error: expected ',' or '...' before '<' token 100 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:114:25: error: 'std::optional' has not been declared 114 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:114:33: error: expected ',' or '...' before '<' token 114 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:128:20: error: 'std::optional' has not been declared 128 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:128:28: error: expected ',' or '...' before '<' token 128 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:152:23: error: 'std::optional' has not been declared 152 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:152:31: error: expected ',' or '...' before '<' token 152 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:158:21: error: 'std::optional' has not been declared 158 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:158:29: error: expected ',' or '...' before '<' token 158 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:100:11: error: default argument missing for parameter 5 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getFile(const llvm::Twine&, bool, bool, bool, int)' 100 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:98:39: note: ...following parameter 2 which has a default argument 98 | getFile(const Twine &Filename, bool IsText = false, | ~~~~~^~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:114:20: error: default argument missing for parameter 6 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getOpenFileSlice(llvm::sys::fs::file_t, const llvm::Twine&, uint64_t, int64_t, bool, int)' 114 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:113:41: note: ...following parameter 5 which has a default argument 113 | int64_t Offset, bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:128:15: error: default argument missing for parameter 6 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getOpenFile(llvm::sys::fs::file_t, const llvm::Twine&, uint64_t, bool, bool, int)' 128 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:127:20: note: ...following parameter 4 which has a default argument 127 | bool RequiresNullTerminator = true, bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:152:18: error: default argument missing for parameter 4 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getFileOrSTDIN(const llvm::Twine&, bool, bool, int)' 152 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:150:46: note: ...following parameter 2 which has a default argument 150 | getFileOrSTDIN(const Twine &Filename, bool IsText = false, | ~~~~~^~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:158:16: error: default argument missing for parameter 5 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getFileSlice(const llvm::Twine&, uint64_t, uint64_t, bool, int)' 158 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:157:21: note: ...following parameter 4 which has a default argument 157 | bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:204:16: error: 'std::optional' has not been declared 204 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:204:24: error: expected ',' or '...' before '<' token 204 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:210:21: error: 'std::optional' has not been declared 210 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:210:29: error: expected ',' or '...' before '<' token 210 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:220:30: error: 'std::optional' has not been declared 220 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:220:38: error: expected ',' or '...' before '<' token 220 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:204:11: error: default argument missing for parameter 3 of 'static llvm::ErrorOr > llvm::WritableMemoryBuffer::getFile(const llvm::Twine&, bool, int)' 204 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:203:39: note: ...following parameter 2 which has a default argument 203 | getFile(const Twine &Filename, bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:210:16: error: default argument missing for parameter 5 of 'static llvm::ErrorOr > llvm::WritableMemoryBuffer::getFileSlice(const llvm::Twine&, uint64_t, uint64_t, bool, int)' 210 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:209:21: note: ...following parameter 4 which has a default argument 209 | bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:220:25: error: default argument missing for parameter 3 of 'static std::unique_ptr llvm::WritableMemoryBuffer::getNewUninitMemBuffer(size_t, const llvm::Twine&, int)' 220 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:219:51: note: ...following parameter 2 which has a default argument 219 | getNewUninitMemBuffer(size_t Size, const Twine &BufferName = "", | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ In file included from /usr/include/llvm/Support/SourceMgr.h:20: /usr/include/llvm/Support/SMLoc.h:53:11: error: invalid use of '::' 53 | SMRange(std::nullopt_t) {} | ^~~ /usr/include/llvm/Support/SMLoc.h:53:28: error: expected ';' at end of member declaration 53 | SMRange(std::nullopt_t) {} | ^ | ; /usr/include/llvm/Support/SourceMgr.h: In constructor 'llvm::SMDiagnostic::SMDiagnostic(llvm::StringRef, llvm::SourceMgr::DiagKind, llvm::StringRef)': /usr/include/llvm/Support/SourceMgr.h:297:9: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/SourceMgr.h:297:9: note: candidate expects 3 arguments, 1 provided 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/SourceMgr.h:297:66: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/SourceMgr.h:297:66: note: candidate expects 3 arguments, 1 provided 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_smake[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' tring<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/VirtualFileSystem.h: At global scope: /usr/include/llvm/Support/VirtualFileSystem.h:512:21: error: 'std::optional' has not been declared 512 | std::optional User, std::optional Group, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:512:29: error: expected ',' or '...' before '<' token 512 | std::optional User, std::optional Group, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:536:21: error: 'std::optional' has not been declared 536 | std::optional User = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:536:29: error: expected ',' or '...' before '<' token 536 | std::optional User = std::nullopt, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:534:8: error: 'bool llvm::vfs::InMemoryFileSystem::addFile(const llvm::Twine&, time_t, std::unique_ptr, int)' cannot be overloaded with 'bool llvm::vfs::InMemoryFileSystem::addFile(const llvm::Twine&, time_t, std::unique_ptr, int)' 534 | bool addFile(const Twine &Path, time_t ModificationTime, | ^~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:510:8: note: previous declaration 'bool llvm::vfs::InMemoryFileSystem::addFile(const llvm::Twine&, time_t, std::unique_ptr, int)' 510 | bool addFile(const Twine &Path, time_t ModificationTime, | ^~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:567:24: error: 'std::optional' has not been declared 567 | std::optional User = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:567:32: error: expected ',' or '...' before '<' token 567 | std::optional User = std::nullopt, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:579:26: error: 'std::optional' has not been declared 579 | std::optional User = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:579:34: error: expected ',' or '...' before '<' token 579 | std::optional User = std::nullopt, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:882:10: error: 'optional' in namespace 'std' does not name a template type 882 | std::optional ExternalRedirect; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:882:5: note: 'std::optional' is only available from C++17 onwards 882 | std::optional ExternalRedirect; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h:891:10: error: 'optional' in namespace 'std' does not name a template type 891 | std::optional getExternalRedirect() const { | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:891:5: note: 'std::optional' is only available from C++17 onwards 891 | std::optional getExternalRedirect() const { | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h: In constructor 'llvm::vfs::RedirectingFileSystem::Entry::Entry(llvm::vfs::RedirectingFileSystem::EntryKind, llvm::StringRef)': /usr/include/llvm/Support/VirtualFileSystem.h:776:51: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 776 | Entry(EntryKind K, StringRef Name) : Kind(K), Name(Name) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/VirtualFileSystem.h:776:51: note: candidate expects 3 arguments, 1 provided 776 | Entry(EntryKind K, StringRef Name) : Kind(K), Name(Name) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/VirtualFileSystem.h: In constructor 'llvm::vfs::RedirectingFileSystem::RemapEntry::RemapEntry(llvm::vfs::RedirectingFileSystem::EntryKind, llvm::StringRef, llvm::StringRef, llvm::vfs::RedirectingFileSystem::NameKind)': /usr/include/llvm/Support/VirtualFileSystem.h:824:27: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 824 | : Entry(K, Name), ExternalContentsPath(ExternalContentsPath), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/VirtualFileSystem.h:824:27: note: candidate expects 3 arguments, 1 provided 824 | : Entry(K, Name), ExternalContentsPath(ExternalContentsPath), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/VirtualFileSystem.h: At global scope: /usr/include/llvm/Support/VirtualFileSystem.h:1060:8: error: 'optional' in namespace 'std' does not name a template type 1060 | std::optional IsCaseSensitive; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:1060:3: note: 'std::optional' is only available from C++17 onwards 1060 | std::optional IsCaseSensitive; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h:1061:8: error: 'optional' in namespace 'std' does not name a template type 1061 | std::optional IsOverlayRelative; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:1061:3: note: 'std::optional' is only available from C++17 onwards 1061 | std::optional IsOverlayRelative; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h:1062:8: error: 'optional' in namespace 'std' does not name a template type 1062 | std::optional UseExternalNames; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:1062:3: note: 'std::optional' is only available from C++17 onwards 1062 | std::optional UseExternalNames; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h: In member function 'void llvm::vfs::YAMLVFSWriter::setCaseSensitivity(bool)': /usr/include/llvm/Support/VirtualFileSystem.h:1074:5: error: 'IsCaseSensitive' was not declared in this scope; did you mean 'CaseSensitive'? 1074 | IsCaseSensitive = CaseSensitive; | ^~~~~~~~~~~~~~~ | CaseSensitive /usr/include/llvm/Support/VirtualFileSystem.h: In member function 'void llvm::vfs::YAMLVFSWriter::setUseExternalNames(bool)': /usr/include/llvm/Support/VirtualFileSystem.h:1077:48: error: 'UseExternalNames' was not declared in this scope; did you mean 'setUseExternalNames'? 1077 | void setUseExternalNames(bool UseExtNames) { UseExternalNames = UseExtNames; } | ^~~~~~~~~~~~~~~~ | setUseExternalNames /usr/include/llvm/Support/VirtualFileSystem.h: In member function 'void llvm::vfs::YAMLVFSWriter::setOverlayDir(llvm::StringRef)': /usr/include/llvm/Support/VirtualFileSystem.h:1080:5: error: 'IsOverlayRelative' was not declared in this scope 1080 | IsOverlayRelative = true; | ^~~~~~~~~~~~~~~~~ /usr/include/clang/Basic/FileManager.h: In member function 'clang::OptionalDirectoryEntryRef clang::FileManager::getOptionalDirectoryRef(llvm::StringRef, bool)': /usr/include/clang/Basic/FileManager.h:171:18: error: 'expectedToOptional' is not a member of 'llvm' 171 | return llvm::expectedToOptional(getDirectoryRef(DirName, CacheFailure)); | ^~~~~~~~~~~~~~~~~~ /usr/include/clang/Basic/FileManager.h: In member function 'clang::OptionalFileEntryRef clang::FileManager::getOptionalFileRef(llvm::StringRef, bool, bool)': /usr/include/clang/Basic/FileManager.h:237:18: error: 'expectedToOptional' is not a member of 'llvm' 237 | return llvm::expectedToOptional( | ^~~~~~~~~~~~~~~~~~ /usr/include/clang/Basic/SourceManager.h: At global scope: /usr/include/clang/Basic/SourceManager.h:215:8: error: 'optional' in namespace 'std' does not name a template type 215 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:215:3: note: 'std::optional' is only available from C++17 onwards 215 | std::optional | ^~~ /usr/include/clang/Basic/SourceManager.h:238:8: error: 'optional' in namespace 'std' does not name a template type 238 | std::optional getBufferIfLoaded() const { | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:238:3: note: 'std::optional' is only available from C++17 onwards 238 | std::optional getBufferIfLoaded() const { | ^~~ /usr/include/clang/Basic/SourceManager.h:246:8: error: 'optional' in namespace 'std' does not name a template type 246 | std::optional getBufferDataIfLoaded() const { | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:246:3: note: 'std::optional' is only available from C++17 onwards 246 | std::optional getBufferDataIfLoaded() const { | ^~~ /usr/include/clang/Basic/SourceManager.h:261:30: error: 'std::optional' has not been declared 261 | void setUnownedBuffer(std::optional B) { | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:261:38: error: expected ',' or '...' before '<' token 261 | void setUnownedBuffer(std::optional B) { | ^ /usr/include/clang/Basic/SourceManager.h: In constructor 'clang::SrcMgr::ContentCache::ContentCache()': /usr/include/clang/Basic/SourceManager.h:183:24: error: 'nullopt' is not a member of 'std' 183 | : OrigEntry(std::nullopt), ContentsEntry(nullptr), | ^~~~~~~ /usr/include/clang/Basic/SourceManager.h:183:24: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/SourceManager.h: In member function 'void clang::SrcMgr::ContentCache::setUnownedBuffer(int)': /usr/include/clang/Basic/SourceManager.h:263:9: error: 'B' was not declared in this scope 263 | if (B) | ^ /usr/include/clang/Basic/SourceManager.h: At global scope: /usr/include/clang/Basic/SourceManager.h:944:8: error: 'optional' in namespace 'std' does not name a template type 944 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:944:3: note: 'std::optional' is only available from C++17 onwards 944 | std::optional | ^~~ /usr/include/clang/Basic/SourceManager.h:1026:8: error: 'optional' in namespace 'std' does not name a template type 1026 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1026:3: note: 'std::optional' is only available from C++17 onwards 1026 | std::optional | ^~~ /usr/include/clang/Basic/SourceManager.h:1063:8: error: 'optional' in namespace 'std' does not name a template type 1063 | std::optional getNonBuiltinFilenameForID(FileID FID) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1063:3: note: 'std::optional' is only available from C++17 onwards 1063 | std::optional getNonBuiltinFilenameForID(FileID FID) const; | ^~~ /usr/include/clang/Basic/SourceManager.h:1082:8: error: 'optional' in namespace 'std' does not name a template type 1082 | std::optional getBufferDataOrNone(FileID FID) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1082:3: note: 'std::optional' is only available from C++17 onwards 1082 | std::optional getBufferDataOrNone(FileID FID) const; | ^~~ /usr/include/clang/Basic/SourceManager.h:1088:8: error: 'optional' in namespace 'std' does not name a template type 1088 | std::optional getBufferDataIfLoaded(FileID FID) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1088:3: note: 'std::optional' is only available from C++17 onwards 1088 | std::optional getBufferDataIfLoaded(FileID FID) const; | ^~~ /usr/include/clang/Basic/SourceManager.h:1699:39: error: 'std::optional' has not been declared 1699 | std::optional MaxNotes = 32) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1699:47: error: expected ',' or '...' before '<' token 1699 | std::optional MaxNotes = 32) const; | ^ /usr/include/clang/Basic/SourceManager.h: In member function 'llvm::MemoryBufferRef clang::SourceManager::getMemoryBufferForFileOrFake(const clang::FileEntry*)': /usr/include/clang/Basic/SourceManager.h:951:18: error: 'getMemoryBufferForFileOrNone' was not declared in this scope; did you mean 'getMemoryBufferForFileOrFake'? 951 | if (auto B = getMemoryBufferForFileOrNone(File)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ | getMemoryBufferForFileOrFake /usr/include/clang/Basic/SourceManager.h: In member function 'llvm::MemoryBufferRef clang::SourceManager::getBufferOrFake(clang::FileID, clang::SourceLocation) const': /usr/include/clang/Basic/SourceManager.h:1040:18: error: 'getBufferOrNone' was not declared in this scope; did you mean 'getBufferOrFake'? 1040 | if (auto B = getBufferOrNone(FID, Loc)) | ^~~~~~~~~~~~~~~ | getBufferOrFake /usr/include/clang/Basic/SourceManager.h: In member function 'clang::OptionalFileEntryRef clang::SourceManager::getFileEntryRefForID(clang::FileID) const': /usr/include/clang/Basic/SourceManager.h:1056:17: error: 'nullopt' is not a member of 'std' 1056 | return std::nullopt; | ^~~~~~~ /usr/include/clang/Basic/SourceManager.h:1056:17: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/Support/MathExtras.h: In instantiation of 'constexpr size_t llvm::CTLog2() [with long unsigned int kValue = 8; size_t = long unsigned int]': /usr/include/llvm/Support/Alignment.h:97:56: required from 'static constexpr llvm::Align llvm::Align::Constant() [with long unsigned int kValue = 8]' /usr/include/llvm/Support/Alignment.h:103:49: required from 'static constexpr llvm::Align llvm::Align::Of() [with T = const clang::Expr*]' /usr/include/llvm/Support/TrailingObjects.h:168:73: required from 'static NextTy* llvm::trailing_objects_internal::TrailingObjectsImpl::getTrailingObjectsImpl(BaseTy*, llvm::trailing_objects_internal::TrailingObjectsBase::OverloadToken) [with int Align = 8; BaseTy = clang::ConstantArrayType; TopTrailingObj = llvm::TrailingObjects; PrevTy = clang::ConstantArrayType; NextTy = const clang::Expr*; MoreTys = {}]' /usr/include/llvm/Support/TrailingObjects.h:301:40: required from 'T* llvm::TrailingObjects::getTrailingObjects() [with T = const clang::Expr*; BaseTy = clang::ConstantArrayType; TrailingTys = {const clang::Expr*}]' /usr/include/clang/AST/Type.h:3077:39: required from here /usr/include/llvm/Support/MathExtras.h:399:28: error: non-constant condition for static assertion 399 | static_assert(kValue > 0 && llvm::isPowerOf2_64(kValue), | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MathExtras.h:399:50: in 'constexpr' expansion of 'llvm::isPowerOf2_64(8)' /usr/include/llvm/Support/MathExtras.h:399:28: error: 'constexpr' call flows off the end of the function /usr/include/llvm/Support/MathExtras.h: In instantiation of 'constexpr size_t llvm::CTLog2() [with long unsigned int kValue = 4; size_t = long unsigned int]': /usr/include/llvm/Support/MathExtras.h:401:32: required from 'static const NextTy* llvm::trailing_objects_internal::TrailingObjectsImpl::getTrailingObjectsImpl(const BaseTy*, llvm::trailing_objects_internal::TrailingObjectsBase::OverloadToken) [with int Align = 8; BaseTy = clang::ConstantArrayType; TopTrailingObj = llvm::TrailingObjects; PrevTy = clang::ConstantArrayType; NextTy = const clang::Expr*; MoreTys = {}]' /usr/include/llvm/Support/TrailingObjects.h:289:40: required from 'const T* llvm::TrailingObjects::getTrailingObjects() const [with T = const clang::Expr*; BaseTy = clang::ConstantArrayType; TrailingTys = {const clang::Expr*}]' /usr/include/clang/AST/Type.h:3089:51: required from here /usr/include/llvm/Support/TrailingObjects.h:154:43: in 'constexpr' expansion of 'llvm::Align::Of()' /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:399:28: error: non-constant condition for static assertion /usr/include/llvm/Support/TrailingObjects.h:154:43: in 'constexpr' expansion of 'llvm::Align::Of()' /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:399:50: in 'constexpr' expansion of 'llvm::isPowerOf2_64(4)' /usr/include/llvm/Support/MathExtras.h:399:28: error: 'constexpr' call flows off the end of the function /usr/include/llvm/Support/MathExtras.h: In instantiation of 'constexpr size_t llvm::CTLog2() [with long unsigned int kValue = 2; size_t = long unsigned int]': /usr/include/llvm/Support/MathExtras.h:401:32: required from 'static constexpr llvm::Align llvm::Align::Of() [with T = clang::FunctionType::FunctionTypeExtraBitfields]' /usr/include/llvm/Support/TrailingObjects.h:154:43: required from 'static const NextTy* llvm::trailing_objects_internal::TrailingObjectsImpl::getTrailingObjectsImpl(const BaseTy*, llvm::trailing_objects_internal::TrailingObjectsBase::OverloadToken) [with int Align = 8; BaseTy = clang::FunctionProtoType; TopTrailingObj = llvm::TrailingObjects; PrevTy = clang::SourceLocation; NextTy = clang::FunctionType::FunctionTypeExtraBitfields; MoreTys = {clang::FunctionType::ExceptionType, clang::Expr*, clang::FunctionDecl*, clang::FunctionType::ExtParameterInfo, clang::Qualifiers}]' /usr/include/llvm/Support/TrailingObjects.h:289:40: required from 'const T* llvm::TrailingObjects::getTrailingObjects() const [with T = clang::FunctionType::FunctionTypeExtraBitfields; BaseTy = clang::FunctionProtoType; TrailingTys = {clang::QualType, clang::SourceLocation, clang::FunctionType::FunctionTypeExtraBitfields, clang::FunctionType::ExceptionType, clang::Expr*, clang::FunctionDecl*, clang::FunctionType::ExtParameterInfo, clang::Qualifiers}]' /usr/include/clang/AST/Type.h:4302:64: required from here /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:401:32: in 'constexpr' expansion of 'llvm::CTLog2<4>()' /usr/include/llvm/Support/MathExtras.h:399:28: error: non-constant condition for static assertion /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:401:32: in 'constexpr' expansion of 'llvm::CTLog2<4>()' /usr/include/llvm/Support/MathExtras.h:399:50: in 'constexpr' expansion of 'llvm::isPowerOf2_64(2)' /usr/include/llvm/Support/MathExtras.h:399:28: error: 'constexpr' call flows off the end of the function /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'llvm::mapped_iterator::mapped_iterator(ItTy, FuncTy) [with ItTy = const clang::ParmVarDecl* const*; FuncTy = clang::ObjCMethodDecl::GetTypeFn; ReferenceTy = clang::QualType]': /usr/include/llvm/ADT/STLExtras.h:430:10: required from 'llvm::mapped_iterator llvm::map_iterator(ItTy, FuncTy) [with ItTy = const clang::ParmVarDecl* const*; FuncTy = clang::ObjCMethodDecl::GetTypeFn; decltype (declval()((* declval()))) = clang::QualType]' /usr/include/clang/AST/DeclObjC.h:402:30: required from here /usr/include/llvm/ADT/STLExtras.h:414:61: error: cannot convert 'std::remove_reference::type' {aka 'clang::ObjCMethodDecl::GetTypeFn'} to 'int' in initialization 414 | : mapped_iterator::iterator_adaptor_base(std::move(U)), F(std::move(F)) {} | ^~~~~~~~~~~~~~~ make[2]: *** [clang_delta/CMakeFiles/clang_delta.dir/build.make:79: clang_delta/CMakeFiles/clang_delta.dir/AggregateToScalar.cpp.o] Error 1 make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 16%] Building CXX object clang_delta/CMakeFiles/clang_delta.dir/CallExprToValue.cpp.o cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clang_delta && /usr/bin/g++ -DHAVE_CONFIG_H -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu -I/builddir/build/BUILD/cvise-2.4.0/clang_delta -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -std=c++14 -fno-rtti -fno-strict-aliasing -Wall -Wextra -Wno-unused-parameter -fvisibility-inlines-hidden -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -MD -MT clang_delta/CMakeFiles/clang_delta.dir/CallExprToValue.cpp.o -MF CMakeFiles/clang_delta.dir/CallExprToValue.cpp.o.d -o CMakeFiles/clang_delta.dir/CallExprToValue.cpp.o -c /builddir/build/BUILD/cvise-2.4.0/clang_delta/CallExprToValue.cpp In file included from /usr/include/clang/Basic/LLVM.h:21, from /usr/include/clang/Rewrite/Core/Rewriter.h:17, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/Transformation.h:19, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/CallExprToValue.h:15, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/CallExprToValue.cpp:15: /usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std' 266 | struct CastIsPossible> { | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:266:41: error: template argument 2 is invalid 266 | struct CastIsPossible> { | ^~~~ /usr/include/llvm/Support/Casting.h:266:45: error: expected unqualified-id before '>' token 266 | struct CastIsPossible> { | ^~ /usr/include/llvm/Support/Casting.h:369:16: error: 'optional' is not a member of 'std' 369 | std::optional, From, | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:369:16: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:369:16: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:369:16: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:369:27: error: wrong number of template arguments (1, should be 3) 369 | std::optional, From, | ^ /usr/include/llvm/Support/Casting.h:310:8: note: provided for 'template struct llvm::DefaultDoCastIfPossible' 310 | struct DefaultDoCastIfPossible { | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/Casting.h:370:65: error: expected '{' before '>' token 370 | detail::SelfType>> { | ^ /usr/include/llvm/Support/Casting.h:540:26: error: 'optional' is not a member of 'std' 540 | struct CastInfo> : public OptionalValueCast { | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:540:26: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:540:26: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:540:26: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:540:35: error: template argument 2 is invalid 540 | struct CastInfo> : public OptionalValueCast { | ^~~~ /usr/include/llvm/Support/Casting.h:540:39: error: expected unqualified-id before '>' token 540 | struct CastInfo> : public OptionalValueCast { | ^~ /usr/include/llvm/Support/Casting.h:595:10: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'? 595 | std::is_pointer_v || std::is_constructible_v; | ^~~~~~~~~~~~ | is_pointer /usr/include/llvm/Support/Casting.h:595:24: error: expected primary-expression before '>' token 595 | std::is_pointer_v || std::is_constructible_v; | ^ /usr/include/llvm/Support/Casting.h:595:26: error: expected primary-expression before '||' token 595 | std::is_pointer_v || std::is_constructible_v; | ^~ /usr/include/llvm/Support/Casting.h:595:34: error: 'is_constructible_v' is not a member of 'std'; did you mean 'is_constructible'? 595 | std::is_pointer_v || std::is_constructible_v; | ^~~~~~~~~~~~~~~~~~ | is_constructible /usr/include/llvm/Support/Casting.h:595:54: error: expected primary-expression before ',' token 595 | std::is_pointer_v || std::is_constructible_v; | ^ /usr/include/llvm/Support/Casting.h:610:50: error: 'optional' is not a member of 'std' 610 | template struct ValueIsPresent> { | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:610:50: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:610:50: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:610:50: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:610:59: error: template argument 1 is invalid 610 | template struct ValueIsPresent> { | ^ /usr/include/llvm/Support/Casting.h:610:60: error: expected unqualified-id before '>' token 610 | template struct ValueIsPresent> { | ^~ In file included from /usr/include/clang/Basic/LLVM.h:24: /usr/include/llvm/ADT/None.h:26:14: error: 'nullopt_t' in namespace 'std' does not name a type; did you mean 'nullptr_t'? 26 | typedef std::nullopt_t NoneType; | ^~~~~~~~~ | nullptr_t /usr/include/llvm/ADT/None.h:28:23: error: 'nullopt_t' in namespace 'std' does not name a type; did you mean 'nullptr_t'? 28 | inline constexpr std::nullopt_t None = std::nullopt; | ^~~~~~~~~ | nullptr_t In file included from /usr/include/clang/Basic/LLVM.h:27: /usr/include/llvm/ADT/SmallVector.h: In static member function 'static void llvm::SmallVectorTemplateBase >::uninitialized_move(It1, It1, It2)': /usr/include/llvm/ADT/SmallVector.h:352:10: error: 'uninitialized_move' is not a member of 'std'; did you mean 'uninitialized_copy'? 352 | std::uninitialized_move(I, E, Dest); | ^~~~~~~~~~~~~~~~~~ | uninitialized_copy /usr/include/clang/Basic/LLVM.h: At global scope: /usr/include/clang/Basic/LLVM.h:40:47: error: 'optional' in namespace 'std' does not name a template type 40 | template using Optional = std::optional; | ^~~~~~~~ /usr/include/clang/Basic/LLVM.h:40:42: note: 'std::optional' is only available from C++17 onwards 40 | template using Optional = std::optional; | ^~~ /usr/include/clang/Basic/LLVM.h:72:15: error: 'Optional' has not been declared in 'llvm' 72 | using llvm::Optional; | ^~~~~~~~ In file included from /usr/include/llvm/ADT/StringRef.h:12, from /usr/include/clang/Basic/SourceLocation.h:18, from /usr/include/clang/Rewrite/Core/Rewriter.h:18: /usr/include/llvm/ADT/DenseMapInfo.h:294:52: error: 'variant' is not a member of 'std' 294 | template struct DenseMapInfo> { | ^~~~~~~ /usr/include/llvm/ADT/DenseMapInfo.h:294:52: note: 'std::variant' is only available from C++17 onwards /usr/include/llvm/ADT/DenseMapInfo.h:294:52: error: 'variant' is not a member of 'std' /usr/include/llvm/ADT/DenseMapInfo.h:294:52: note: 'std::variant' is only available from C++17 onwards /usr/include/llvm/ADT/DenseMapInfo.h:294:62: error: expected parameter pack before '...' 294 | template struct DenseMapInfo> { | ^~~ /usr/include/llvm/ADT/DenseMapInfo.h:294:62: error: template argument 1 is invalid /usr/include/llvm/ADT/DenseMapInfo.h:294:65: error: expected unqualified-id before '>' token 294 | template struct DenseMapInfo> { | ^~ In file included from /usr/include/llvm/ADT/STLFunctionalExtras.h:18, from /usr/include/llvm/ADT/StringRef.h:13: /usr/include/llvm/ADT/STLForwardCompat.h:46:35: error: 'optional' in namespace 'std' does not name a template type 46 | auto transformOptional(const std::optional &O, const Function &F) | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:46:30: note: 'std::optional' is only available from C++17 onwards 46 | auto transformOptional(const std::optional &O, const Function &F) | ^~~ /usr/include/llvm/ADT/STLForwardCompat.h:46:43: error: expected ',' or '...' before '<' token 46 | auto transformOptional(const std::optional &O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:47:13: error: 'optional' in namespace 'std' does not name a template type 47 | -> std::optional { | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:47:8: note: 'std::optional' is only available from C++17 onwards 47 | -> std::optional { | ^~~ /usr/include/llvm/ADT/STLForwardCompat.h:47:21: error: expected initializer before '<' token 47 | -> std::optional { | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:29: error: 'optional' is not a member of 'std' 56 | auto transformOptional(std::optional &&O, const Function &F) | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:56:29: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/ADT/STLForwardCompat.h:56:39: error: expected primary-expression before '>' token 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:43: error: label 'O' referenced outside of any function 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:46: error: expected primary-expression before 'const' 56 | auto transformOptional(std::optional &&O, const Function &F) | ^~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:56:63: error: expression list treated as compound expression in initializer [-fpermissive] 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:64: error: expected ';' before '->' token 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ | ; 57 | -> std::optional { | ~~ /usr/include/llvm/ADT/StringRef.h:104:54: error: expected ')' before 'Str' 104 | /*implicit*/ constexpr StringRef(std::string_view Str) | ~ ^~~~ | ) /usr/include/llvm/ADT/StringRef.h:248:14: error: expected type-specifier 248 | operator std::string_view() const { | ^~~ /usr/include/llvm/ADT/StringRef.h: In member function 'size_t llvm::StringRef::find(char, size_t) const': /usr/include/llvm/ADT/StringRef.h:296:19: error: 'string_view' is not a member of 'std' 296 | return std::string_view(*this).find(C, From); | ^~~~~~~~~~~ /usr/include/llvm/ADT/StringRef.h:296:19: note: 'std::string_view' is only available from C++17 onwards In file included from /usr/include/llvm/Support/MathExtras.h:16, from /usr/include/llvm/ADT/BitmaskEnum.h:16, from /usr/include/clang/Basic/BitmaskEnum.h:18, from /usr/include/clang/AST/DependenceFlags.h:11, from /usr/include/clang/AST/NestedNameSpecifier.h:17, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/RewriteUtils.h:16, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/Transformation.h:20: /usr/include/llvm/ADT/bit.h: At global scope: /usr/include/llvm/ADT/bit.h:64:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'? 64 | template >> | ^~~~~~~~~~~~~ | is_integral /usr/include/llvm/ADT/bit.h:64:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'? 64 | template >> | ^~~~~~~~~~~~~ | is_integral /usr/include/llvm/ADT/bit.h:64:70: error: template argument 1 is invalid 64 | template >> | ^ /usr/include/llvm/ADT/bit.h:64:73: error: expected unqualified-id before '>' token 64 | template >> | ^ /usr/include/llvm/ADT/bit.h:109:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 109 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:109:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 109 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:109:70: error: template argument 1 is invalid 109 | template >> | ^ /usr/include/llvm/ADT/bit.h:109:73: error: expected unqualified-id before '>' token 109 | template >> | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_zero(T)': /usr/include/llvm/ADT/bit.h:180:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 180 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:180:37: error: expected primary-expression before '>' token 180 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:180:38: error: expected primary-expression before ',' token 180 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_zero(T)': /usr/include/llvm/ADT/bit.h:246:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 246 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:246:37: error: expected primary-expression before '>' token 246 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:246:38: error: expected primary-expression before ',' token 246 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_one(T)': /usr/include/llvm/ADT/bit.h:259:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 259 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:259:37: error: expected primary-expression before '>' token 259 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:259:38: error: expected primary-expression before ',' token 259 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_one(T)': /usr/include/llvm/ADT/bit.h:272:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 272 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:272:37: error: expected primary-expression before '>' token 272 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:272:38: error: expected primary-expression before ',' token 272 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::bit_width(T)': /usr/include/llvm/ADT/bit.h:282:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 282 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:282:37: error: expected primary-expression before '>' token 282 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:282:38: error: expected primary-expression before ',' token 282 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_floor(T)': /usr/include/llvm/ADT/bit.h:292:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 292 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:292:37: error: expected primary-expression before '>' token 292 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:292:38: error: expected primary-expression before ',' token 292 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_ceil(T)': /usr/include/llvm/ADT/bit.h:307:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 307 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:307:37: error: expected primary-expression before '>' token 307 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:307:38: error: expected primary-expression before ',' token 307 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: At global scope: /usr/include/llvm/ADT/bit.h:348:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 348 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:348:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 348 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:348:70: error: template argument 1 is invalid 348 | template >> | ^ /usr/include/llvm/ADT/bit.h:348:73: error: expected unqualified-id before '>' token 348 | template >> | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countTrailingZeros(T)': /usr/include/llvm/Support/MathExtras.h:78:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 78 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:78:37: error: expected primary-expression before '>' token 78 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:78:38: error: expected primary-expression before ',' token 78 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countLeadingZeros(T)': /usr/include/llvm/Support/MathExtras.h:90:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 90 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:90:37: error: expected primary-expression before '>' token 90 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:90:38: error: expected primary-expression before ',' token 90 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_32(uint32_t)': /usr/include/llvm/Support/MathExtras.h:325:16: error: 'has_single_bit' is not a member of 'llvm' 325 | return llvm::has_single_bit(Value); | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_64(uint64_t)': /usr/include/llvm/Support/MathExtras.h:330:16: error: 'has_single_bit' is not a member of 'llvm' 330 | return llvm::has_single_bit(Value); | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countLeadingOnes(T)': /usr/include/llvm/Support/MathExtras.h:341:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 341 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:341:37: error: expected primary-expression before '>' token 341 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:341:38: error: expected primary-expression before ',' token 341 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countTrailingOnes(T)': /usr/include/llvm/Support/MathExtras.h:354:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 354 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:354:37: error: expected primary-expression before '>' token 354 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:354:38: error: expected primary-expression before ',' token 354 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countPopulation(T)': /usr/include/llvm/Support/MathExtras.h:364:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 364 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:364:37: error: expected primary-expression before '>' token 364 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:364:38: error: expected primary-expression before ',' token 364 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:366:26: error: 'popcount' is not a member of 'llvm' 366 | return (unsigned)llvm::popcount(Value); | ^~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_32(uint32_t, unsigned int&, unsigned int&)': /usr/include/llvm/Support/MathExtras.h:379:19: error: 'popcount' is not a member of 'llvm' 379 | MaskLen = llvm::popcount(Value); | ^~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_64(uint64_t, unsigned int&, unsigned int&)': /usr/include/llvm/Support/MathExtras.h:392:19: error: 'popcount' is not a member of 'llvm' 392 | MaskLen = llvm::popcount(Value); | ^~~~~~~~ /usr/include/llvm/Support/MathExtras.h: At global scope: /usr/include/llvm/Support/MathExtras.h:620:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:620:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:620:38: error: template argument 1 is invalid 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^ /usr/include/llvm/Support/MathExtras.h:620:39: error: expected unqualified-id before ',' token 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^ In file included from /usr/include/clang/Basic/Diagnostic.h:17, from /usr/include/clang/AST/NestedNameSpecifier.h:18: /usr/include/clang/Basic/DiagnosticIDs.h:241:15: error: 'optional' in namespace 'std' does not name a template type 241 | static std::optional getGroupForWarningOption(StringRef); | ^~~~~~~~ /usr/include/clang/Basic/DiagnosticIDs.h:241:10: note: 'std::optional' is only available from C++17 onwards 241 | static std::optional getGroupForWarningOption(StringRef); | ^~~ /usr/include/clang/Basic/DiagnosticIDs.h:244:15: error: 'optional' in namespace 'std' does not name a template type 244 | static std::optional getGroupForDiag(unsigned DiagID); | ^~~~~~~~ /usr/include/clang/Basic/DiagnosticIDs.h:244:10: note: 'std::optional' is only available from C++17 onwards 244 | static std::optional getGroupForDiag(unsigned DiagID); | ^~~ In file included from /usr/include/llvm/ADT/Hashing.h:49, from /usr/include/llvm/ADT/ArrayRef.h:12, from /usr/include/clang/Basic/Diagnostic.h:21: /usr/include/llvm/Support/SwapByteOrder.h: In function 'uint16_t llvm::ByteSwap_16(uint16_t)': /usr/include/llvm/Support/SwapByteOrder.h:51:60: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_16'? 51 | inline uint16_t ByteSwap_16(uint16_t value) { return llvm::byteswap(value); } | ^~~~~~~~ | ByteSwap_16 /usr/include/llvm/Support/SwapByteOrder.h: In function 'uint32_t llvm::ByteSwap_32(uint32_t)': /usr/include/llvm/Support/SwapByteOrder.h:54:60: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_32'? 54 | inline uint32_t ByteSwap_32(uint32_t value) { return llvm::byteswap(value); } | ^~~~~~~~ | ByteSwap_32 /usr/include/llvm/Support/SwapByteOrder.h: In function 'uint64_t llvm::ByteSwap_64(uint64_t)': /usr/include/llvm/Support/SwapByteOrder.h:57:60: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 57 | inline uint64_t ByteSwap_64(uint64_t value) { return llvm::byteswap(value); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned char llvm::sys::getSwappedBytes(unsigned char)': /usr/include/llvm/Support/SwapByteOrder.h:69:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 69 | inline unsigned char getSwappedBytes(unsigned char C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'signed char llvm::sys::getSwappedBytes(signed char)': /usr/include/llvm/Support/SwapByteOrder.h:70:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 70 | inline signed char getSwappedBytes( signed char C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'char llvm::sys::getSwappedBytes(char)': /usr/include/llvm/Support/SwapByteOrder.h:71:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 71 | inline char getSwappedBytes( char C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'short unsigned int llvm::sys::getSwappedBytes(short unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:73:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 73 | inline unsigned short getSwappedBytes(unsigned short C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'short int llvm::sys::getSwappedBytes(short int)': /usr/include/llvm/Support/SwapByteOrder.h:74:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 74 | inline signed short getSwappedBytes( signed short C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned int llvm::sys::getSwappedBytes(unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:76:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 76 | inline unsigned int getSwappedBytes(unsigned int C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'int llvm::sys::getSwappedBytes(int)': /usr/include/llvm/Support/SwapByteOrder.h:77:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 77 | inline signed int getSwappedBytes( signed int C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long unsigned int llvm::sys::getSwappedBytes(long unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:79:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 79 | inline unsigned long getSwappedBytes(unsigned long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long int llvm::sys::getSwappedBytes(long int)': /usr/include/llvm/Support/SwapByteOrder.h:80:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 80 | inline signed long getSwappedBytes( signed long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long long unsigned int llvm::sys::getSwappedBytes(long long unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:82:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 82 | inline unsigned long long getSwappedBytes(unsigned long long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long long int llvm::sys::getSwappedBytes(long long int)': /usr/include/llvm/Support/SwapByteOrder.h:83:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 83 | inline signed long long getSwappedBytes( signed long long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'float llvm::sys::getSwappedBytes(float)': /usr/include/llvm/Support/SwapByteOrder.h:91:17: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 91 | out.i = llvm::byteswap(in.i); | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'double llvm::sys::getSwappedBytes(double)': /usr/include/llvm/Support/SwapByteOrder.h:101:17: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 101 | out.i = llvm::byteswap(in.i); | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'std::enable_if_t::value, T> llvm::sys::getSwappedBytes(T)': /usr/include/llvm/Support/SwapByteOrder.h:108:13: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 108 | llvm::byteswap(static_cast>(C))); | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/ADT/Hashing.h: At global scope: /usr/include/llvm/ADT/Hashing.h:127:55: error: 'optional' in namespace 'std' does not name a template type 127 | template hash_code hash_value(const std::optional &arg); | ^~~~~~~~ /usr/include/llvm/ADT/Hashing.h:127:50: note: 'std::optional' is only available from C++17 onwards 127 | template hash_code hash_value(const std::optional &arg); | ^~~ /usr/include/llvm/ADT/Hashing.h:127:63: error: expected ',' or '...' before '<' token 127 | template hash_code hash_value(const std::optional &arg); | ^ /usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(const std::tuple<_Args1 ...>&)': /usr/include/llvm/ADT/Hashing.h:658:15: error: 'apply' is not a member of 'std' 658 | return std::apply([](const auto &...xs) { return hash_combine(xs...); }, arg); | ^~~~~ /usr/include/llvm/ADT/Hashing.h:658:15: note: 'std::apply' is only available from C++17 onwards /usr/include/llvm/ADT/Hashing.h: At global scope: /usr/include/llvm/ADT/Hashing.h:668:55: error: 'optional' in namespace 'std' does not name a template type 668 | template hash_code hash_value(const std::optional &arg) { | ^~~~~~~~ /usr/include/llvm/ADT/Hashing.h:668:50: note: 'std::optional' is only available from C++17 onwards 668 | template hash_code hash_value(const std::optional &arg) { | ^~~ /usr/include/llvm/ADT/Hashing.h:668:63: error: expected ',' or '...' before '<' token 668 | template hash_code hash_value(const std::optional &arg) { | ^ /usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(int)': /usr/include/llvm/ADT/Hashing.h:669:10: error: 'arg' was not declared in this scope 669 | return arg ? hash_combine(true, *arg) : hash_value(false); | ^~~ In file included from /usr/include/llvm/ADT/ArrayRef.h:14: /usr/include/llvm/ADT/STLExtras.h: At global scope: /usr/include/llvm/ADT/STLExtras.h:81:22: error: 'void_t' is not a member of 'std' 81 | struct detector>, Op, Args...> { | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:81:22: note: 'std::void_t' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h:81:22: error: 'void_t' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:81:22: note: 'std::void_t' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h:81:39: error: wrong number of template arguments (1, should be at least 2) 81 | struct detector>, Op, Args...> { | ^~ /usr/include/llvm/ADT/STLExtras.h:77:70: note: provided for 'template class Op, class ... Args> struct llvm::detail::detector' 77 | template class Op, class... Args> struct detector { | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:144:24: error: 'disjunction' in namespace 'std' does not name a template type 144 | using is_one_of = std::disjunction...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:144:19: note: 'std::disjunction' is only available from C++17 onwards 144 | using is_one_of = std::disjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:149:26: error: 'conjunction' in namespace 'std' does not name a template type 149 | using are_base_of = std::conjunction...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:149:21: note: 'std::conjunction' is only available from C++17 onwards 149 | using are_base_of = std::conjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:155:37: error: 'is_one_of' was not declared in this scope 155 | : std::integral_constant::value && | ^~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:155:55: error: template argument 2 is invalid 155 | : std::integral_constant::value && | ^ /usr/include/llvm/ADT/STLExtras.h:155:56: error: expected '{' before '::' token 155 | : std::integral_constant::value && | ^~ /usr/include/llvm/ADT/STLExtras.h:224:23: error: 'is_function_v' is not a member of 'std'; did you mean 'is_function'? 224 | bool = std::is_function_v>>> | ^~~~~~~~~~~~~ | is_function /usr/include/llvm/ADT/STLExtras.h:224:77: error: expected primary-expression before '>>' token 224 | bool = std::is_function_v>>> | ^~ /usr/include/llvm/ADT/STLExtras.h:224:77: error: expected '>' before '>>' token /usr/include/llvm/ADT/STLExtras.h:230:8: error: 'optional' in namespace 'std' does not name a template type 230 | std::optional Obj; | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:230:3: note: 'std::optional' is only available from C++17 onwards 230 | std::optional Obj; | ^~~ /usr/include/llvm/ADT/STLExtras.h:232:23: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'? 232 | static_assert(!std::is_pointer_v, | ^~~~~~~~~~~~ | is_pointer /usr/include/llvm/ADT/STLExtras.h:232:46: error: expected primary-expression before '>' token 232 | static_assert(!std::is_pointer_v, | ^ /usr/include/llvm/ADT/STLExtras.h:232:47: error: expected primary-expression before ',' token 232 | static_assert(!std::is_pointer_v, | ^ /usr/include/llvm/ADT/STLExtras.h:257:35: error: 'is_invocable_v' is not a member of 'std' 257 | std::enable_if_t, int> = 0> | ^~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:257:35: error: 'is_invocable_v' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:257:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template using std::enable_if_t = typename std::enable_if::type' 257 | std::enable_if_t, int> = 0> | ^ In file included from /usr/include/c++/13/bits/char_traits.h:50, from /usr/include/c++/13/string:42, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/CallExprToValue.h:14: /usr/include/c++/13/type_traits:2609:24: note: declared here 2609 | template | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:257:66: error: expected unqualified-id before '=' token 257 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h:263:35: error: 'is_invocable_v' is not a member of 'std' 263 | std::enable_if_t, int> = 0> | ^~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:263:35: error: 'is_invocable_v' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:263:64: error: template argument 1 is invalid 263 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h:263:72: error: expected unqualified-id before '=' token 263 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h: In constructor 'llvm::callable_detail::Callable >::Callable(const T&)': /usr/include/llvm/ADT/STLExtras.h:237:26: error: class 'llvm::callable_detail::Callable >' does not have any field named 'Obj' 237 | Callable(T const &O) : Obj(std::in_place, O) {} | ^~~ /usr/include/llvm/ADT/STLExtras.h:237:35: error: 'in_place' is not a member of 'std' 237 | Callable(T const &O) : Obj(std::in_place, O) {} | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:237:35: note: 'std::in_place' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >& llvm::callable_detail::Callable >::operator=(const llvm::callable_detail::Callable >&)': /usr/include/llvm/ADT/STLExtras.h:243:5: error: 'Obj' was not declared in this scope 243 | Obj = std::nullopt; | ^~~ /usr/include/llvm/ADT/STLExtras.h:243:16: error: 'nullopt' is not a member of 'std' 243 | Obj = std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:243:16: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >& llvm::callable_detail::Callable >::operator=(llvm::callable_detail::Callable >&&)': /usr/include/llvm/ADT/STLExtras.h:250:5: error: 'Obj' was not declared in this scope 250 | Obj = std::nullopt; | ^~~ /usr/include/llvm/ADT/STLExtras.h:250:16: error: 'nullopt' is not a member of 'std' 250 | Obj = std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:250:16: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable >::valid() const': /usr/include/llvm/ADT/STLExtras.h:268:31: error: 'Obj' was not declared in this scope 268 | bool valid() const { return Obj != std::nullopt; } | ^~~ /usr/include/llvm/ADT/STLExtras.h:268:43: error: 'nullopt' is not a member of 'std' 268 | bool valid() const { return Obj != std::nullopt; } | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:268:43: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable >::reset()': /usr/include/llvm/ADT/STLExtras.h:269:25: error: 'Obj' was not declared in this scope 269 | bool reset() { return Obj = std::nullopt; } | ^~~ /usr/include/llvm/ADT/STLExtras.h:269:36: error: 'nullopt' is not a member of 'std' 269 | bool reset() { return Obj = std::nullopt; } | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:269:36: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >::operator reference()': /usr/include/llvm/ADT/STLExtras.h:271:34: error: 'Obj' was not declared in this scope 271 | operator reference() { return *Obj; } | ^~~ /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >::operator const_reference() const': /usr/include/llvm/ADT/STLExtras.h:272:46: error: 'Obj' was not declared in this scope 272 | operator const_reference() const { return *Obj; } | ^~~ /usr/include/llvm/ADT/STLExtras.h: At global scope: /usr/include/llvm/ADT/STLExtras.h:278:38: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'? 278 | static constexpr bool IsPtr = std::is_pointer_v>; | ^~~~~~~~~~~~ | is_pointer /usr/include/llvm/ADT/STLExtras.h:278:67: error: expected primary-expression before '>' token 278 | static constexpr bool IsPtr = std::is_pointer_v>; | ^~ /usr/include/llvm/ADT/STLExtras.h:278:69: error: expected primary-expression before ';' token 278 | static constexpr bool IsPtr = std::is_pointer_v>; | ^ /usr/include/llvm/ADT/STLExtras.h:284:3: error: 'StorageT' does not name a type 284 | StorageT Func = nullptr; | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:307:13: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'? 307 | !std::is_same_v, Callable>, int | ^~~~~~~~~ | is_same /usr/include/llvm/ADT/STLExtras.h:307:59: error: template argument 1 is invalid 307 | !std::is_same_v, Callable>, int | ^ /usr/include/llvm/ADT/STLExtras.h:308:7: error: expected unqualified-id before '=' token 308 | > = 0 | ^ /usr/include/llvm/ADT/STLExtras.h:313:35: error: 'is_invocable_v' is not a member of 'std' 313 | std::enable_if_t, int> = 0> | ^~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:313:35: error: 'is_invocable_v' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:313:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template using std::enable_if_t = typename std::enable_if::type' 313 | std::enable_if_t, int> = 0> | ^ /usr/include/c++/13/type_traits:2609:24: note: declared here 2609 | template | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:313:66: error: expected unqualified-id before '=' token 313 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable::valid() const': /usr/include/llvm/ADT/STLExtras.h:318:31: error: 'Func' was not declared in this scope 318 | bool valid() const { return Func != nullptr; } | ^~~~ /usr/include/llvm/ADT/STLExtras.h: In member function 'void llvm::callable_detail::Callable::reset()': /usr/include/llvm/ADT/STLExtras.h:319:18: error: 'Func' was not declared in this scope 319 | void reset() { Func = nullptr; } | ^~~~ /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable::operator const T&() const': /usr/include/llvm/ADT/STLExtras.h:324:14: error: 'Func' was not declared in this scope 324 | return Func; | ^~~~ /usr/include/llvm/ADT/STLExtras.h:326:26: error: 'is_reference_v' is not a member of 'std'; did you mean 'is_reference'? 326 | static_assert(std::is_reference_v, | ^~~~~~~~~~~~~~ | is_reference /usr/include/llvm/ADT/STLExtras.h:326:42: error: expected primary-expression before '>' token 326 | static_assert(std::is_reference_v, | ^ /usr/include/llvm/ADT/STLExtras.h:326:43: error: expected primary-expression before ',' token 326 | static_assert(std::is_reference_v, | ^ /usr/include/llvm/ADT/STLExtras.h:329:15: error: 'Func' was not declared in this scope 329 | return *Func; | ^~~~ /usr/include/llvm/ADT/STLExtras.h: At global scope: /usr/include/llvm/ADT/STLExtras.h:423:35: error: template argument 2 is invalid 423 | callable_detail::Callable F{}; | ^ /usr/include/llvm/ADT/STLExtras.h:927:60: error: 'optional' in namespace 'std' does not name a template type 927 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional< | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:927:55: note: 'std::optional' is only available from C++17 onwards 927 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional< | ^~~ /usr/include/llvm/ADT/STLExtras.h:927:68: error: expected initializer before '<' token 927 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional< | ^ /usr/include/llvm/ADT/STLExtras.h:935:21: error: 'optional' in namespace 'std' does not name a template type 935 | using type = std::optional...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1511:19: note: 'std::disjunction' is only available from C++17 onwards 1511 | using is_one_of = std::disjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:1516:26: error: 'conjunction' in namespace 'std' does not name a template type 1516 | using are_base_of = std::conjunction...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1516:21: note: 'std::conjunction' is only available from C++17 onwards 1516 | using are_base_of = std::conjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:1675:38: error: 'conjunction' in namespace 'std' does not name a template type 1675 | using sort_trivially_copyable = std::conjunction< | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1675:33: note: 'std::conjunction' is only available from C++17 onwards 1675 | using sort_trivially_copyable = std::conjunction< | ^~~ /usr/include/llvm/ADT/STLExtras.h: In function 'void llvm::sort(IteratorTy, IteratorTy)': /usr/include/llvm/ADT/STLExtras.h:1684:25: error: 'sort_trivially_copyable' is not a member of 'llvm::detail' 1684 | if constexpr (detail::sort_trivially_copyable::value) { | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1684:59: error: expected primary-expression before '>' token 1684 | if constexpr (detail::sort_trivially_copyable::value) { | ^ /usr/include/llvm/ADT/STLExtras.h:1684:62: error: '::value' has not been declared 1684 | if constexpr (detail::sort_trivially_copyable::value) { | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In function 'bool llvm::detail::all_of_zip_predicate_first(Predicate&&, Args&& ...)': /usr/include/llvm/ADT/STLExtras.h:2276:15: error: 'apply' is not a member of 'std' 2276 | if (!std::apply([&](auto &&...args) { return P(args...); }, *it)) | ^~~~~ /usr/include/llvm/ADT/STLExtras.h:2276:15: note: 'std::apply' is only available from C++17 onwards /usr/include/llvm/ADT/ArrayRef.h: At global scope: /usr/include/llvm/ADT/ArrayRef.h:70:27: error: invalid use of '::' 70 | /*implicit*/ ArrayRef(std::nullopt_t) {} | ^~~ /usr/include/llvm/ADT/ArrayRef.h:70:44: error: expected ';' at end of member declaration 70 | /*implicit*/ ArrayRef(std::nullopt_t) {} | ^ | ; /usr/include/llvm/ADT/ArrayRef.h:323:34: error: invalid use of '::' 323 | /*implicit*/ MutableArrayRef(std::nullopt_t) : ArrayRef() {} | ^~~ /usr/include/llvm/ADT/ArrayRef.h:472:65: error: expected constructor, destructor, or type conversion before ';' token 472 | template ArrayRef(const T &OneElt) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:475:78: error: expected constructor, destructor, or type conversion before ';' token 475 | template ArrayRef(const T *data, size_t length) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:478:77: error: expected constructor, destructor, or type conversion before ';' token 478 | template ArrayRef(const T *data, const T *end) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:481:79: error: expected constructor, destructor, or type conversion before ';' token 481 | template ArrayRef(const SmallVectorImpl &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:485:56: error: expected constructor, destructor, or type conversion before ';' token 485 | ArrayRef(const SmallVector &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:488:75: error: expected constructor, destructor, or type conversion before ';' token 488 | template ArrayRef(const std::vector &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:492:55: error: expected constructor, destructor, or type conversion before ';' token 492 | ArrayRef(const std::array &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:495:72: error: expected constructor, destructor, or type conversion before ';' token 495 | template ArrayRef(const ArrayRef &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:498:66: error: expected constructor, destructor, or type conversion before ';' token 498 | template ArrayRef(ArrayRef &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:501:77: error: expected constructor, destructor, or type conversion before ';' token 501 | template ArrayRef(const T (&Arr)[N]) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:580:70: error: expected constructor, destructor, or type conversion before ';' token 580 | template MutableArrayRef(T &OneElt) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:585:64: error: expected constructor, destructor, or type conversion before ';' token 585 | MutableArrayRef(T *data, size_t length) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:589:65: error: expected constructor, destructor, or type conversion before ';' token 589 | MutableArrayRef(SmallVectorImpl &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:592:64: error: expected constructor, destructor, or type conversion before ';' token 592 | MutableArrayRef(SmallVector &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:595:80: error: expected constructor, destructor, or type conversion before ';' token 595 | template MutableArrayRef(std::vector &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:599:63: error: expected constructor, destructor, or type conversion before ';' token 599 | MutableArrayRef(std::array &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:603:53: error: expected constructor, destructor, or type conversion before ';' token 603 | MutableArrayRef(T (&Arr)[N]) -> MutableArrayRef; | ^ /usr/include/clang/Basic/Diagnostic.h: In static member function 'static clang::FixItHint clang::FixItHint::CreateInsertion(clang::SourceLocation, llvm::StringRef, bool)': /usr/include/clang/Basic/Diagnostic.h:103:41: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 103 | Hint.CodeToInsert = std::string(Code); | ^ In file included from /usr/include/c++/13/string:54: /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:103:41: note: candidate expects 3 arguments, 1 provided 103 | Hint.CodeToInsert = std::string(Code); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: In static member function 'static clang::FixItHint clang::FixItHint::CreateReplacement(clang::CharSourceRange, llvm::StringRef)': /usr/include/clang/Basic/Diagnostic.h:138:41: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 138 | Hint.CodeToInsert = std::string(Code); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:138:41: note: candidate expects 3 arguments, 1 provided 138 | Hint.CodeToInsert = std::string(Code); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: In member function 'void clang::StreamingDiagnostic::AddString(llvm::StringRef) const': /usr/include/clang/Basic/Diagnostic.h:1202:78: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 1202 | DiagStorage->DiagArgumentsStr[DiagStorage->NumDiagArgs++] = std::string(V); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:1202:78: note: candidate expects 3 arguments, 1 provided 1202 | DiagStorage->DiagArgumentsStr[DiagStorage->NumDiagArgs++] = std::string(V); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: In member function 'void clang::DiagnosticBuilder::addFlagValue(llvm::StringRef) const': /usr/include/clang/Basic/Diagnostic.h:1369:76: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 1369 | void addFlagValue(StringRef V) const { DiagObj->FlagValue = std::string(V); } | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:1369:76: note: candidate expects 3 arguments, 1 provided 1369 | void addFlagValue(StringRef V) const { DiagObj->FlagValue = std::string(V); } | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: At global scope: /usr/include/clang/Basic/Diagnostic.h:1514:23: error: 'optional' in namespace 'std' does not name a template type 1514 | const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1514:18: note: 'std::optional' is only available from C++17 onwards 1514 | const std::optional &Opt) { | ^~~ /usr/include/clang/Basic/Diagnostic.h:1514:31: error: expected ',' or '...' before '<' token 1514 | const std::optional &Opt) { | ^ /usr/include/clang/Basic/Diagnostic.h:1513:1: error: redefinition of 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' 1513 | operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1401:35: note: 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' previously defined here 1401 | inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h: In function 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)': /usr/include/clang/Basic/Diagnostic.h:1515:7: error: 'Opt' was not declared in this scope 1515 | if (Opt) | ^~~ /usr/include/clang/Basic/Diagnostic.h: At global scope: /usr/include/clang/Basic/Diagnostic.h:1522:23: error: 'optional' in namespace 'std' does not name a template type 1522 | const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1522:18: note: 'std::optional' is only available from C++17 onwards 1522 | const std::optional &Opt) { | ^~~ /usr/include/clang/Basic/Diagnostic.h:1522:31: error: expected ',' or '...' before '<' token 1522 | const std::optional &Opt) { | ^ /usr/include/clang/Basic/Diagnostic.h:1521:1: error: redefinition of 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' 1521 | operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1401:35: note: 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' previously defined here 1401 | inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h: In function 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)': /usr/include/clang/Basic/Diagnostic.h:1523:7: error: 'Opt' was not declared in this scope 1523 | if (Opt) | ^~~ /usr/include/clang/Basic/Diagnostic.h: At global scope: /usr/include/clang/Basic/Diagnostic.h:1529:54: error: 'optional' in namespace 'std' does not name a template type 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1529:49: note: 'std::optional' is only available from C++17 onwards 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^~~ /usr/include/clang/Basic/Diagnostic.h:1529:62: error: expected ',' or '...' before '<' token 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^ /usr/include/clang/Basic/Diagnostic.h:1529:1: error: redefinition of 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1401:35: note: 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' previously defined here 1401 | inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h: In function 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)': /usr/include/clang/Basic/Diagnostic.h:1530:7: error: 'Opt' was not declared in this scope 1530 | if (Opt) | ^~~ /usr/include/clang/Basic/Diagnostic.h: In member function 'llvm::ArrayRef clang::StoredDiagnostic::getRanges() const': /usr/include/clang/Basic/Diagnostic.h:1724:70: error: missing template arguments before '(' token 1724 | ArrayRef getRanges() const { return llvm::ArrayRef(Ranges); } | ^ /usr/include/clang/Basic/Diagnostic.h: In member function 'llvm::ArrayRef clang::StoredDiagnostic::getFixIts() const': /usr/include/clang/Basic/Diagnostic.h:1732:64: error: missing template arguments before '(' token 1732 | ArrayRef getFixIts() const { return llvm::ArrayRef(FixIts); } | ^ In file included from /usr/include/llvm/Support/Allocator.h:21, from /usr/include/llvm/ADT/FoldingSet.h:22, from /usr/include/clang/AST/NestedNameSpecifier.h:21: /usr/include/llvm/Support/Alignment.h: At global scope: /usr/include/llvm/Support/Alignment.h:117:41: error: expected template-name before '<' token 117 | struct MaybeAlign : public std::optional { | ^ /usr/include/llvm/Support/Alignment.h:117:41: error: expected '{' before '<' token /usr/include/llvm/Support/Alignment.h:117:41: error: expected unqualified-id before '<' token /usr/include/llvm/Support/Alignment.h:217:35: error: 'A' has incomplete type 217 | inline unsigned encode(MaybeAlign A) { return A ? A->ShiftValue + 1 : 0; } | ~~~~~~~~~~~^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:220:50: error: return type 'struct llvm::MaybeAlign' is incomplete 220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) { | ^ /usr/include/llvm/Support/Alignment.h:220:19: error: ambiguating new declaration of 'void llvm::decodeMaybeAlign(unsigned int)' 220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) { | ^~~~~~~~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:53:28: note: old declaration 'llvm::MaybeAlign llvm::decodeMaybeAlign(unsigned int)' 53 | friend struct MaybeAlign decodeMaybeAlign(unsigned Value); | ^~~~~~~~~~~~~~~~ /usr/include/llvm/Support/Alignment.h: In function 'void llvm::decodeMaybeAlign(unsigned int)': /usr/include/llvm/Support/Alignment.h:222:23: error: invalid use of incomplete type 'struct llvm::MaybeAlign' 222 | return MaybeAlign(); | ^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:224:7: error: 'uint8_t llvm::Align::ShiftValue' is private within this context 224 | Out.ShiftValue = Value - 1; | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:41:11: note: declared private here 41 | uint8_t ShiftValue = 0; /// The log2 of the required alignment. | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h: In function 'unsigned int llvm::encode(Align)': /usr/include/llvm/Support/Alignment.h:230:61: error: invalid use of incomplete type 'struct llvm::MaybeAlign' 230 | inline unsigned encode(Align A) { return encode(MaybeAlign(A)); } | ^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h: At global scope: /usr/include/llvm/Support/Alignment.h:295:35: error: 'Lhs' has incomplete type 295 | inline bool operator==(MaybeAlign Lhs, Align Rhs) { return Lhs && *Lhs == Rhs; } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:296:35: error: 'Lhs' has incomplete type 296 | inline bool operator!=(MaybeAlign Lhs, Align Rhs) { return !(Lhs == Rhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:297:46: error: 'Rhs' has incomplete type 297 | inline bool operator==(Align Lhs, MaybeAlign Rhs) { return Rhs == Lhs; } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:298:46: error: 'Rhs' has incomplete type 298 | inline bool operator!=(Align Lhs, MaybeAlign Rhs) { return !(Rhs == Lhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:300:35: error: 'Lhs' has incomplete type 300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) { | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:300:51: error: 'Rhs' has incomplete type 300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) { | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:303:35: error: 'Lhs' has incomplete type 303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:303:51: error: 'Rhs' has incomplete type 303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:305:45: error: 'std::nullopt_t' has not been declared 305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); } | ^~~~~~~~~ /usr/include/llvm/Support/Alignment.h:305:35: error: 'Lhs' has incomplete type 305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:306:45: error: 'std::nullopt_t' has not been declared 306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); } | ^~~~~~~~~ /usr/include/llvm/Support/Alignment.h:306:35: error: 'Lhs' has incomplete type 306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:307:13: error: declaration of 'operator==' as non-function 307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); } | ^~~~~~~~ /usr/include/llvm/Support/Alignment.h:307:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); } | ^~~~~~~~~ | nullptr_t /usr/include/llvm/Support/Alignment.h:307:51: error: expected primary-expression before 'Rhs' 307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); } | ^~~ /usr/include/llvm/Support/Alignment.h:308:13: error: declaration of 'operator!=' as non-function 308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); } | ^~~~~~~~ /usr/include/llvm/Support/Alignment.h:308:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); } | ^~~~~~~~~ | nullptr_t /usr/include/llvm/Support/Alignment.h:308:51: error: expected primary-expression before 'Rhs' 308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); } | ^~~ /usr/include/llvm/Support/Alignment.h: In function 'std::string llvm::DebugStr(const MaybeAlign&)': /usr/include/llvm/Support/Alignment.h:317:7: error: could not convert 'MA' from 'const llvm::MaybeAlign' to 'bool' 317 | if (MA) | ^~ | | | const llvm::MaybeAlign /usr/include/llvm/Support/Alignment.h:318:29: error: base operand of '->' has non-pointer type 'const llvm::MaybeAlign' 318 | return std::to_string(MA->value()); | ^~ /usr/include/llvm/Support/Allocator.h: At global scope: /usr/include/llvm/Support/Allocator.h:232:8: error: 'optional' in namespace 'std' does not name a template type 232 | std::optional identifyObject(const void *Ptr) { | ^~~~~~~~ /usr/include/llvm/Support/Allocator.h:232:3: note: 'std::optional' is only available from C++17 onwards 232 | std::optional identifyObject(const void *Ptr) { | ^~~ /usr/include/llvm/Support/Allocator.h: In member function 'int64_t llvm::BumpPtrAllocatorImpl::identifyKnownObject(const void*)': /usr/include/llvm/Support/Allocator.h:259:10: error: 'optional' is not a member of 'std' 259 | std::optional Out = identifyObject(Ptr); | ^~~~~~~~ /usr/include/llvm/Support/Allocator.h:259:10: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Allocator.h:259:26: error: expected primary-expression before '>' token 259 | std::optional Out = identifyObject(Ptr); | ^ /usr/include/llvm/Support/Allocator.h:259:28: error: 'Out' was not declared in this scope 259 | std::optional Out = identifyObject(Ptr); | ^~~ /usr/include/llvm/Support/Allocator.h:259:34: error: there are no arguments to 'identifyObject' that depend on a template parameter, so a declaration of 'identifyObject' must be available [-fpermissive] 259 | std::optional Out = identifyObject(Ptr); | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/Allocator.h:259:34: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated) In file included from /usr/include/llvm/ADT/APSInt.h:18, from /usr/include/llvm/ADT/APFixedPoint.h:19, from /usr/include/clang/AST/APValue.h:17, from /usr/include/clang/AST/Expr.h:16, from /usr/include/clang/AST/ASTConcept.h:17, from /usr/include/clang/AST/RecursiveASTVisitor.h:16, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/CallExprToValue.cpp:17: /usr/include/llvm/ADT/APInt.h: At global scope: /usr/include/llvm/ADT/APInt.h:1506:8: error: 'optional' in namespace 'std' does not name a template type 1506 | std::optional tryZExtValue() const { | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:1506:3: note: 'std::optional' is only available from C++17 onwards 1506 | std::optional tryZExtValue() const { | ^~~ /usr/include/llvm/ADT/APInt.h:1528:8: error: 'optional' in namespace 'std' does not name a template type 1528 | std::optional trySExtValue() const { | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:1528:3: note: 'std::optional' is only available from C++17 onwards 1528 | std::optional trySExtValue() const { | ^~~ /usr/include/llvm/ADT/APInt.h: In member function 'unsigned int llvm::APInt::countPopulation() const': /usr/include/llvm/ADT/APInt.h:1621:20: error: 'popcount' is not a member of 'llvm'; did you mean 'count'? 1621 | return llvm::popcount(U.VAL); | ^~~~~~~~ | count /usr/include/llvm/ADT/APInt.h: At global scope: /usr/include/llvm/ADT/APInt.h:2279:6: error: 'optional' in namespace 'std' does not name a template type 2279 | std::optional SolveQuadraticEquationWrap(APInt A, APInt B, APInt C, | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:2279:1: note: 'std::optional' is only available from C++17 onwards 2279 | std::optional SolveQuadraticEquationWrap(APInt A, APInt B, APInt C, | ^~~ /usr/include/llvm/ADT/APInt.h:2284:6: error: 'optional' in namespace 'std' does not name a template type 2284 | std::optional GetMostSignificantDifferentBit(const APInt &A, | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:2284:1: note: 'std::optional' is only available from C++17 onwards 2284 | std::optional GetMostSignificantDifferentBit(const APInt &A, | ^~~ /usr/include/llvm/ADT/APSInt.h:103:8: error: 'optional' in namespace 'std' does not name a template type 103 | std::optional tryExtValue() const { | ^~~~~~~~ /usr/include/llvm/ADT/APSInt.h:103:3: note: 'std::optional' is only available from C++17 onwards 103 | std::optional tryExtValue() const { | ^~~ In file included from /usr/include/llvm/ADT/APFixedPoint.h:23: /usr/include/llvm/Support/raw_ostream.h:252:38: error: 'string_view' in namespace 'std' does not name a type 252 | raw_ostream &operator<<(const std::string_view &Str) { | ^~~~~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:252:33: note: 'std::string_view' is only available from C++17 onwards 252 | raw_ostream &operator<<(const std::string_view &Str) { | ^~~ /usr/include/llvm/Support/raw_ostream.h: In member function 'llvm::raw_ostream& llvm::raw_ostream::operator<<(const int&)': /usr/include/llvm/Support/raw_ostream.h:253:22: error: request for member 'data' in 'Str', which is of non-class type 'const int' 253 | return write(Str.data(), Str.length()); | ^~~~ /usr/include/llvm/Support/raw_ostream.h:253:34: error: request for member 'length' in 'Str', which is of non-class type 'const int' 253 | return write(Str.data(), Str.length()); | ^~~~~~ /usr/include/llvm/Support/raw_ostream.h: At global scope: /usr/include/llvm/Support/raw_ostream.h:459:16: error: 'optional' in namespace 'std' does not name a template type 459 | mutable std::optional HasColors; | ^~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:459:11: note: 'std::optional' is only available from C++17 onwards 459 | mutable std::optional HasColors; | ^~~ /usr/include/llvm/Support/raw_ostream.h:757:47: error: 'std::nullopt_t' has not been declared 757 | raw_ostream &operator<<(raw_ostream &OS, std::nullopt_t); | ^~~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:761:53: error: 'optional' in namespace 'std' does not name a template type 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:761:48: note: 'std::optional' is only available from C++17 onwards 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^~~ /usr/include/llvm/Support/raw_ostream.h:761:61: error: expected ',' or '...' before '<' token 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^ /usr/include/llvm/Support/raw_ostream.h: In function 'llvm::raw_ostream& llvm::operator<<(raw_ostream&, int)': /usr/include/llvm/Support/raw_ostream.h:762:7: error: 'O' was not declared in this scope; did you mean 'OS'? 762 | if (O) | ^ | OS /usr/include/llvm/Support/raw_ostream.h:765:16: error: 'nullopt' is not a member of 'std' 765 | OS << std::nullopt; | ^~~~~~~ /usr/include/llvm/Support/raw_ostream.h:765:16: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/APFixedPoint.h: In member function 'std::string llvm::APFixedPoint::toString() const': /usr/include/llvm/ADT/APFixedPoint.h:238:31: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef)' 238 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/ADT/APFixedPoint.h:238:31: note: candidate expects 3 arguments, 1 provided 238 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/llvm/ADT/FloatingPointMode.h:18, from /usr/include/llvm/ADT/APFloat.h:20, from /usr/include/clang/AST/APValue.h:18: /usr/include/llvm/ADT/StringSwitch.h: At global scope: /usr/include/llvm/ADT/StringSwitch.h:50:8: error: 'optional' in namespace 'std' does not name a template type 50 | std::optional Result; | ^~~~~~~~ /usr/include/llvm/ADT/StringSwitch.h:50:3: note: 'std::optional' is only available from C++17 onwards 50 | std::optional Result; | ^~~ /usr/include/llvm/ADT/StringSwitch.h: In constructor 'llvm::StringSwitch::StringSwitch(llvm::StringRef)': /usr/include/llvm/ADT/StringSwitch.h:54:13: error: class 'llvm::StringSwitch' does not have any field named 'Result' 54 | : Str(S), Result() { } | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In constructor 'llvm::StringSwitch::StringSwitch(llvm::StringSwitch&&)': /usr/include/llvm/ADT/StringSwitch.h:64:23: error: class 'llvm::StringSwitch' does not have any field named 'Result' 64 | : Str(other.Str), Result(std::move(other.Result)) { } | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::Case(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:70:10: error: 'Result' was not declared in this scope 70 | if (!Result && Str == S) { | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::EndsWith(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:77:10: error: 'Result' was not declared in this scope 77 | if (!Result && Str.endswith(S)) { | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::StartsWith(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:84:10: error: 'Result' was not declared in this scope 84 | if (!Result && Str.startswith(S)) { | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::CaseLower(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:143:10: error: 'Result' was not declared in this scope 143 | if (!Result && Str.equals_insensitive(S)) | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::EndsWithLower(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:150:10: error: 'Result' was not declared in this scope 150 | if (!Result && Str.endswith_insensitive(S)) | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::StartsWithLower(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:157:10: error: 'Result' was not declared in this scope 157 | if (!Result && Str.startswith_insensitive(S)) | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'R llvm::StringSwitch::Default(T)': /usr/include/llvm/ADT/StringSwitch.h:183:9: error: 'Result' was not declared in this scope 183 | if (Result) | ^~~~~~ In file included from /usr/include/c++/13/cassert:44, from /usr/include/llvm/ADT/StringSwitch.h:18: /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch::operator R()': /usr/include/llvm/ADT/StringSwitch.h:189:5: error: 'Result' was not declared in this scope 189 | assert(Result && "Fell off the end of a string-switch"); | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/APValue.h:190:11: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ In file included from /usr/include/clang/AST/APValue.h:22: /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/APValue.h:190:11: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/Type.h:22, from /usr/include/clang/AST/DeclarationName.h:16, from /usr/include/clang/AST/DeclBase.h:18, from /usr/include/clang/AST/Decl.h:19, from /usr/include/clang/AST/Expr.h:19: /usr/include/clang/AST/TemplateName.h: In member function 'llvm::ArrayRef clang::OverloadedTemplateStorage::decls() const': /usr/include/clang/AST/TemplateName.h:130:26: error: missing template arguments before '(' token 130 | return llvm::ArrayRef(begin(), end()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/TemplateName.h:211:15: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/TemplateName.h:211:15: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/TemplateName.h: At global scope: /usr/include/clang/AST/TemplateName.h:383:41: error: 'std::optional' has not been declared 383 | std::optional PackIndex) | ^~~~~~~~ /usr/include/clang/AST/TemplateName.h:383:49: error: expected ',' or '...' before '<' token 383 | std::optional PackIndex) | ^ /usr/include/clang/AST/TemplateName.h:399:8: error: 'optional' in namespace 'std' does not name a template type 399 | std::optional getPackIndex() const { | ^~~~~~~~ /usr/include/clang/AST/TemplateName.h:399:3: note: 'std::optional' is only available from C++17 onwards 399 | std::optional getPackIndex() const { | ^~~ /usr/include/clang/AST/TemplateName.h:412:28: error: 'std::optional' has not been declared 412 | std::optional PackIndex); | ^~~~~~~~ /usr/include/clang/AST/TemplateName.h:412:36: error: expected ',' or '...' before '<' token 412 | std::optional PackIndex); | ^ /usr/include/clang/AST/TemplateName.h: In constructor 'clang::SubstTemplateTemplateParmStorage::SubstTemplateTemplateParmStorage(clang::TemplateName, clang::Decl*, unsigned int, int)': /usr/include/clang/AST/TemplateName.h:385:37: error: 'PackIndex' was not declared in this scope 385 | PackIndex ? *PackIndex + 1 : 0), | ^~~~~~~~~ In file included from /usr/include/clang/AST/Type.h:40: /usr/include/llvm/ADT/Twine.h: At global scope: /usr/include/llvm/ADT/Twine.h:292:35: error: 'string_view' in namespace 'std' does not name a type 292 | /*implicit*/ Twine(const std::string_view &Str) | ^~~~~~~~~~~ /usr/include/llvm/ADT/Twine.h:292:30: note: 'std::string_view' is only available from C++17 onwards 292 | /*implicit*/ Twine(const std::string_view &Str) | ^~~ /usr/include/llvm/ADT/Twine.h: In constructor 'llvm::Twine::Twine(const int&)': /usr/include/llvm/ADT/Twine.h:294:34: error: request for member 'data' in 'Str', which is of non-class type 'const int' 294 | LHS.ptrAndLength.ptr = Str.data(); | ^~~~ /usr/include/llvm/ADT/Twine.h:295:37: error: request for member 'length' in 'Str', which is of non-class type 'const int' 295 | LHS.ptrAndLength.length = Str.length(); | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Type.h:744:28: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Type.h:744:28: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Type.h: At global scope: /usr/include/clang/AST/Type.h:2555:8: error: 'optional' in namespace 'std' does not name a template type 2555 | std::optional getNullability() const; | ^~~~~~~~ /usr/include/clang/AST/Type.h:2555:3: note: 'std::optional' is only available from C++17 onwards 2555 | std::optional getNullability() const; | ^~~ /usr/include/clang/AST/Type.h:2579:8: error: 'optional' in namespace 'std' does not name a template type 2579 | std::optional> | ^~~~~~~~ /usr/include/clang/AST/Type.h:2579:3: note: 'std::optional' is only available from C++17 onwards 2579 | std::optional> | ^~~ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::FunctionProtoType::getParamTypes() const': /usr/include/clang/AST/Type.h:4240:26: error: missing template arguments before '(' token 4240 | return llvm::ArrayRef(param_type_begin(), param_type_end()); | ^ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::FunctionProtoType::param_types() const': /usr/include/clang/AST/Type.h:4387:26: error: missing template arguments before '(' token 4387 | return llvm::ArrayRef(param_type_begin(), param_type_end()); | ^ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::FunctionProtoType::exceptions() const': /usr/include/clang/AST/Type.h:4401:26: error: missing template arguments before '(' token 4401 | return llvm::ArrayRef(exception_begin(), exception_end()); | ^ /usr/include/clang/AST/Type.h: At global scope: /usr/include/clang/AST/Type.h:4925:8: error: 'optional' in namespace 'std' does not name a template type 4925 | std::optional getImmediateNullability() const; | ^~~~~~~~ /usr/include/clang/AST/Type.h:4925:3: note: 'std::optional' is only available from C++17 onwards 4925 | std::optional getImmediateNullability() const; | ^~~ /usr/include/clang/AST/Type.h:4955:15: error: 'optional' in namespace 'std' does not name a template type 4955 | static std::optional stripOuterNullability(QualType &T); | ^~~~~~~~ /usr/include/clang/AST/Type.h:4955:10: note: 'std::optional' is only available from C++17 onwards 4955 | static std::optional stripOuterNullability(QualType &T); | ^~~ /usr/include/clang/AST/Type.h:5096:50: error: 'std::optional' has not been declared 5096 | unsigned Index, std::optional PackIndex); | ^~~~~~~~ /usr/include/clang/AST/Type.h:5096:58: error: expected ',' or '...' before '<' token 5096 | unsigned Index, std::optional PackIndex); | ^ /usr/include/clang/AST/Type.h:5119:8: error: 'optional' in namespace 'std' does not name a template type 5119 | std::optional getPackIndex() const { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5119:3: note: 'std::optional' is only available from C++17 onwards 5119 | std::optional getPackIndex() const { | ^~~ /usr/include/clang/AST/Type.h:5135:28: error: 'std::optional' has not been declared 5135 | std::optional PackIndex) { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5135:36: error: expected ',' or '...' before '<' token 5135 | std::optional PackIndex) { | ^ /usr/include/clang/AST/Type.h: In member function 'void clang::SubstTemplateTypeParmType::Profile(llvm::FoldingSetNodeID&)': /usr/include/clang/AST/Type.h:5130:13: error: 'getPackIndex' was not declared in this scope; did you mean 'getIndex'? 5130 | getPackIndex()); | ^~~~~~~~~~~~ | getIndex /usr/include/clang/AST/Type.h: In static member function 'static void clang::SubstTemplateTypeParmType::Profile(llvm::FoldingSetNodeID&, clang::QualType, const clang::Decl*, unsigned int, int)': /usr/include/clang/AST/Type.h:5139:19: error: 'PackIndex' was not declared in this scope 5139 | ID.AddInteger(PackIndex ? *PackIndex - 1 : 0); | ^~~~~~~~~ /usr/include/clang/AST/Type.h: At global scope: /usr/include/clang/AST/Type.h:5849:26: error: 'std::optional' has not been declared 5849 | std::optional NumExpansions) | ^~~~~~~~ /usr/include/clang/AST/Type.h:5849:34: error: expected ',' or '...' before '<' token 5849 | std::optional NumExpansions) | ^ /usr/include/clang/AST/Type.h:5867:8: error: 'optional' in namespace 'std' does not name a template type 5867 | std::optional getNumExpansions() const { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5867:3: note: 'std::optional' is only available from C++17 onwards 5867 | std::optional getNumExpansions() const { | ^~~ /usr/include/clang/AST/Type.h:5881:28: error: 'std::optional' has not been declared 5881 | std::optional NumExpansions) { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5881:36: error: expected ',' or '...' before '<' token 5881 | std::optional NumExpansions) { | ^ /usr/include/clang/AST/Type.h: In constructor 'clang::PackExpansionType::PackExpansionType(clang::QualType, clang::QualType, int)': /usr/include/clang/AST/Type.h:5856:9: error: 'NumExpansions' was not declared in this scope 5856 | NumExpansions ? *NumExpansions + 1 : 0; | ^~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In member function 'void clang::PackExpansionType::Profile(llvm::FoldingSetNodeID&)': /usr/include/clang/AST/Type.h:5877:31: error: 'getNumExpansions' was not declared in this scope 5877 | Profile(ID, getPattern(), getNumExpansions()); | ^~~~~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In static member function 'static void clang::PackExpansionType::Profile(llvm::FoldingSetNodeID&, clang::QualType, int)': /usr/include/clang/AST/Type.h:5883:19: error: 'NumExpansions' was not declared in this scope 5883 | ID.AddBoolean(NumExpansions.has_value()); | ^~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::ObjCObjectType::getTypeArgsAsWritten() const': /usr/include/clang/AST/Type.h:6138:26: error: missing template arguments before '(' token 6138 | return llvm::ArrayRef(getTypeArgStorage(), ObjCObjectTypeBits.NumTypeArgs); | ^ /usr/include/clang/AST/Type.h: In constructor 'clang::DecayedType::DecayedType(clang::QualType, clang::QualType, clang::QualType)': /usr/include/clang/AST/Type.h:7484:25: error: 'stripOuterNullability' is not a member of 'clang::AttributedType' 7484 | (void)AttributedType::stripOuterNullability(Adjusted); | ^~~~~~~~~~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In member function 'clang::QualType clang::DecayedType::getPointeeType() const': /usr/include/clang/AST/Type.h:7491:25: error: 'stripOuterNullability' is not a member of 'clang::AttributedType' 7491 | (void)AttributedType::stripOuterNullability(Decayed); | ^~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/llvm/ADT/StringMap.h:17, from /usr/include/clang/Basic/IdentifierTable.h:23, from /usr/include/clang/AST/DeclarationName.h:18: /usr/include/llvm/ADT/StringMapEntry.h: At global scope: /usr/include/llvm/ADT/StringMapEntry.h:88:34: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 88 | class StringMapEntryStorage : public StringMapEntryBase { | ^~~~~~~~~ | nullptr_t /usr/include/llvm/ADT/StringMapEntry.h:88:34: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 88 | class StringMapEntryStorage : public StringMapEntryBase { | ^~~~~~~~~ | nullptr_t /usr/include/llvm/ADT/StringMapEntry.h:88:43: error: template argument 1 is invalid 88 | class StringMapEntryStorage : public StringMapEntryBase { | ^ In file included from /usr/include/clang/AST/DeclBase.h:31: /usr/include/llvm/Support/VersionTuple.h:76:8: error: 'optional' in namespace 'std' does not name a template type 76 | std::optional getMinor() const { | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:76:3: note: 'std::optional' is only available from C++17 onwards 76 | std::optional getMinor() const { | ^~~ /usr/include/llvm/Support/VersionTuple.h:83:8: error: 'optional' in namespace 'std' does not name a template type 83 | std::optional getSubminor() const { | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:83:3: note: 'std::optional' is only available from C++17 onwards 83 | std::optional getSubminor() const { | ^~~ /usr/include/llvm/Support/VersionTuple.h:90:8: error: 'optional' in namespace 'std' does not name a template type 90 | std::optional getBuild() const { | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:90:3: note: 'std::optional' is only available from C++17 onwards 90 | std::optional getBuild() const { | ^~~ /usr/include/llvm/Support/VersionTuple.h: In static member function 'static unsigned int llvm::DenseMapInfo::getHashValue(const llvm::VersionTuple&)': /usr/include/llvm/Support/VersionTuple.h:203:28: error: 'const class llvm::VersionTuple' has no member named 'getMinor'; did you mean 'getMajor'? 203 | if (auto Minor = Value.getMinor()) | ^~~~~~~~ | getMajor /usr/include/llvm/Support/VersionTuple.h:205:31: error: 'const class llvm::VersionTuple' has no member named 'getSubminor'; did you mean 'unsigned int:31 llvm::VersionTuple::Subminor'? (not accessible from this context) 205 | if (auto Subminor = Value.getSubminor()) | ^~~~~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:37:12: note: declared private here 37 | unsigned Subminor : 31; | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:207:28: error: 'const class llvm::VersionTuple' has no member named 'getBuild'; did you mean 'unsigned int:31 llvm::VersionTuple::Build'? (not accessible from this context) 207 | if (auto Build = Value.getBuild()) | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:40:12: note: declared private here 40 | unsigned Build : 31; | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclBase.h:269:49: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclBase.h:269:49: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclBase.h:1290:11: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclBase.h:1290:11: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/ExternalASTSource.h:17, from /usr/include/clang/AST/Decl.h:21: /usr/include/clang/AST/CharUnits.h: At global scope: /usr/include/clang/AST/CharUnits.h:194:48: error: return type 'struct llvm::MaybeAlign' is incomplete 194 | llvm::MaybeAlign getAsMaybeAlign() const { | ^ /usr/include/clang/AST/CharUnits.h: In member function 'void clang::CharUnits::getAsMaybeAlign() const': /usr/include/clang/AST/CharUnits.h:195:41: error: invalid use of incomplete type 'struct llvm::MaybeAlign' 195 | return llvm::MaybeAlign(Quantity); | ^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/clang/AST/ExternalASTSource.h: At global scope: /usr/include/clang/AST/ExternalASTSource.h:163:16: error: 'optional' in namespace 'std' does not name a template type 163 | virtual std::optional getSourceDescriptor(unsigned ID); | ^~~~~~~~ /usr/include/clang/AST/ExternalASTSource.h:163:11: note: 'std::optional' is only available from C++17 onwards 163 | virtual std::optional getSourceDescriptor(unsigned ID); | ^~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct, clang::LazyGenerationalUpdatePtr >': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion, clang::LazyGenerationalUpdatePtr >' /usr/include/clang/AST/Redeclarable.h:105:61: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct, clang::LazyGenerationalUpdatePtr >' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion, clang::LazyGenerationalUpdatePtr >': /usr/include/clang/AST/Redeclarable.h:105:61: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct, clang::LazyGenerationalUpdatePtr >' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Redeclarable.h:119:40: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Redeclarable.h:119:40: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::LazyData*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::LazyData*>' /usr/include/clang/AST/ExternalASTSource.h:402:13: required from 'struct clang::LazyGenerationalUpdatePtr' /usr/include/clang/AST/Redeclarable.h:134:61: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::LazyData*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::LazyData*>': /usr/include/clang/AST/ExternalASTSource.h:402:13: required from 'struct clang::LazyGenerationalUpdatePtr' /usr/include/clang/AST/Redeclarable.h:134:61: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::LazyData*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Decl.h:440:8: error: 'optional' in namespace 'std' does not name a template type 440 | std::optional | ^~~~~~~~ /usr/include/clang/AST/Decl.h:440:3: note: 'std::optional' is only available from C++17 onwards 440 | std::optional | ^~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:776:51: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:776:51: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:961:20: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:961:20: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:2006:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:2006:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Decl.h:2477:12: error: 'std::optional' has not been declared 2477 | std::optional *AlignmentParam = nullptr, | ^~~~~~~~ /usr/include/clang/AST/Decl.h:2477:20: error: expected ',' or '...' before '<' token 2477 | std::optional *AlignmentParam = nullptr, | ^ /usr/include/clang/AST/Decl.h: In member function 'llvm::ArrayRef clang::IndirectFieldDecl::chain() const': /usr/include/clang/AST/Decl.h:3220:26: error: missing template arguments before '(' token 3220 | return llvm::ArrayRef(Chaining, ChainingSize); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:3307:9: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:3307:9: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:3460:52: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:3460:52: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:3736:54: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:3736:54: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/Basic/ObjCRuntime.h:21, from /usr/include/clang/Basic/LangOptions.h:20, from /usr/include/clang/AST/Stmt.h:22, from /usr/include/clang/AST/Expr.h:23: /usr/include/llvm/Support/HashBuilder.h: At global scope: /usr/include/llvm/Support/HashBuilder.h:84:8: error: 'optional' in namespace 'std' does not name a template type 84 | std::optional OptionalHasher; | ^~~~~~~~ /usr/include/llvm/Support/HashBuilder.h:84:3: note: 'std::optional' is only available from C++17 onwards 84 | std::optional OptionalHasher; | ^~~ /usr/include/llvm/Support/HashBuilder.h: In member function 'void llvm::HashBuilderBase::update(llvm::StringRef)': /usr/include/llvm/Support/HashBuilder.h:62:17: error: missing template arguments before '(' token 62 | ArrayRef(reinterpret_cast(Data.data()), Data.size())); | ^ /usr/include/llvm/Support/HashBuilder.h: In constructor 'llvm::HashBuilderBase::HashBuilderBase(ArgTypes&& ...)': /usr/include/llvm/Support/HashBuilder.h:80:9: error: class 'llvm::HashBuilderBase' does not have any field named 'OptionalHasher' 80 | : OptionalHasher(std::in_place, std::forward(Args)...), | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/HashBuilder.h:80:29: error: 'in_place' is not a member of 'std' 80 | : OptionalHasher(std::in_place, std::forward(Args)...), | ^~~~~~~~ /usr/include/llvm/Support/HashBuilder.h:80:29: note: 'std::in_place' is only available from C++17 onwards /usr/include/llvm/Support/HashBuilder.h:81:17: error: 'OptionalHasher' was not declared in this scope 81 | Hasher(*OptionalHasher) {} | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/HashBuilder.h: In member function 'llvm::HashBuilderImpl& llvm::HashBuilderImpl::add(llvm::ArrayRef)': /usr/include/llvm/Support/HashBuilder.h:134:28: error: missing template arguments before '(' token 134 | this->update(ArrayRef(reinterpret_cast(Value.begin()), | ^ /usr/include/llvm/Support/HashBuilder.h: In member function 'llvm::HashBuilderImpl& llvm::HashBuilderImpl::add(llvm::StringRef)': /usr/include/llvm/Support/HashBuilder.h:162:26: error: missing template arguments before '(' token 162 | this->update(ArrayRef(reinterpret_cast(Value.begin()), | ^ /usr/include/llvm/Support/HashBuilder.h: In member function 'llvm::HashBuilderImpl& llvm::HashBuilderImpl::add(const std::tuple<_Args1 ...>&)': /usr/include/llvm/Support/HashBuilder.h:268:10: error: 'apply' is not a member of 'std' 268 | std::apply([this](const auto &...Args) { this->add(Args...); }, Arg); | ^~~~~ /usr/include/llvm/Support/HashBuilder.h:268:10: note: 'std::apply' is only available from C++17 onwards /usr/include/llvm/Support/HashBuilder.h: In member function 'std::enable_if_t::HasByteSwapT, T>::value_t::value, llvm::HashBuilderImpl&> llvm::HashBuilderImpl::adjustForEndiannessAndAdd(const T&)': /usr/include/llvm/Support/HashBuilder.h:319:26: error: missing template arguments before '(' token 319 | this->update(ArrayRef(reinterpret_cast(&SwappedValue), | ^ /usr/include/llvm/Support/HashBuilder.h: In member function 'std::enable_if_t<(llvm::hashbuilder_detail::IsHashableData::value && (Endianness == llvm::support::endian::system_endianness())), llvm::HashBuilderImpl&> llvm::HashBuilderImpl::addRangeElementsImpl(T*, T*, std::forward_iterator_tag)': /usr/include/llvm/Support/HashBuilder.h:341:26: error: missing template arguments before '(' token 341 | this->update(ArrayRef(reinterpret_cast(First), | ^ /usr/include/clang/Basic/LangOptions.h: At global scope: /usr/include/clang/Basic/LangOptions.h:470:8: error: 'optional' in namespace 'std' does not name a template type 470 | std::optional CXXABI; | ^~~~~~~~ /usr/include/clang/Basic/LangOptions.h:470:3: note: 'std::optional' is only available from C++17 onwards 470 | std::optional CXXABI; | ^~~ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::AttributedStmt::getAttrs() const': /usr/include/clang/AST/Stmt.h:1927:26: error: missing template arguments before '(' token 1927 | return llvm::ArrayRef(getAttrArrayPtr(), AttributedStmtBits.NumAttrs); | ^ /usr/include/clang/AST/Stmt.h: At global scope: /usr/include/clang/AST/Stmt.h:2152:8: error: 'optional' in namespace 'std' does not name a template type 2152 | std::optional getNondiscardedCase(const ASTContext &Ctx) const; | ^~~~~~~~ /usr/include/clang/AST/Stmt.h:2152:3: note: 'std::optional' is only available from C++17 onwards 2152 | std::optional getNondiscardedCase(const ASTContext &Ctx) const; | ^~~ /usr/include/clang/AST/Stmt.h:2153:8: error: 'optional' in namespace 'std' does not name a template type 2153 | std::optional getNondiscardedCase(const ASTContext &Ctx); | ^~~~~~~~ /usr/include/clang/AST/Stmt.h:2153:3: note: 'std::optional' is only available from C++17 onwards 2153 | std::optional getNondiscardedCase(const ASTContext &Ctx); | ^~~ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::MSAsmStmt::getAllConstraints() const': /usr/include/clang/AST/Stmt.h:3338:26: error: missing template arguments before '(' token 3338 | return llvm::ArrayRef(Constraints, NumInputs + NumOutputs); | ^ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::MSAsmStmt::getClobbers() const': /usr/include/clang/AST/Stmt.h:3342:26: error: missing template arguments before '(' token 3342 | return llvm::ArrayRef(Clobbers, NumClobbers); | ^ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::MSAsmStmt::getAllExprs() const': /usr/include/clang/AST/Stmt.h:3346:26: error: missing template arguments before '(' token 3346 | return llvm::ArrayRef(reinterpret_cast(Exprs), | ^ In file included from /usr/include/clang/AST/Expr.h:24: /usr/include/clang/AST/TemplateBase.h: At global scope: /usr/include/clang/AST/TemplateBase.h:204:44: error: 'std::optional' has not been declared 204 | TemplateArgument(TemplateName Name, std::optional NumExpansions) { | ^~~~~~~~ /usr/include/clang/AST/TemplateBase.h:204:52: error: expected ',' or '...' before '<' token 204 | TemplateArgument(TemplateName Name, std::optional NumExpansions) { | ^ /usr/include/clang/AST/TemplateBase.h:309:8: error: 'optional' in namespace 'std' does not name a template type 309 | std::optional getNumTemplateExpansions() const; | ^~~~~~~~ /usr/include/clang/AST/TemplateBase.h:309:3: note: 'std::optional' is only available from C++17 onwards 309 | std::optional getNumTemplateExpansions() const; | ^~~ /usr/include/clang/AST/TemplateBase.h: In constructor 'clang::TemplateArgument::TemplateArgument(clang::TemplateName, int)': /usr/include/clang/AST/TemplateBase.h:207:9: error: 'NumExpansions' was not declared in this scope 207 | if (NumExpansions) | ^~~~~~~~~~~~~ /usr/include/clang/AST/TemplateBase.h: In static member function 'static clang::TemplateArgument clang::TemplateArgument::getEmptyPack()': /usr/include/clang/AST/TemplateBase.h:236:34: error: 'nullopt' is not a member of 'std' 236 | return TemplateArgument(std::nullopt); | ^~~~~~~ /usr/include/clang/AST/TemplateBase.h:236:34: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::APSInt clang::TemplateArgument::getAsIntegral() const': /usr/include/clang/AST/TemplateBase.h:322:18: error: expected primary-expression before '(' token 322 | return APSInt(APInt(Integer.BitWidth, ArrayRef(Integer.pVal, NumWords)), | ^ /usr/include/clang/AST/TemplateBase.h:322:24: error: expected primary-expression before '(' token 322 | return APSInt(APInt(Integer.BitWidth, ArrayRef(Integer.pVal, NumWords)), | ^ /usr/include/clang/AST/TemplateBase.h:322:51: error: missing template arguments before '(' token 322 | return APSInt(APInt(Integer.BitWidth, ArrayRef(Integer.pVal, NumWords)), | ^ /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::ArrayRef clang::TemplateArgument::pack_elements() const': /usr/include/clang/AST/TemplateBase.h:367:26: error: missing template arguments before '(' token 367 | return llvm::ArrayRef(pack_begin(), pack_end()); | ^ /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::ArrayRef clang::TemplateArgument::getPackAsArray() const': /usr/include/clang/AST/TemplateBase.h:380:26: error: missing template arguments before '(' token 380 | return llvm::ArrayRef(Args.Args, Args.NumArgs); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/TemplateBase.h:418:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/TemplateBase.h:418:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::ArrayRef clang::ASTTemplateArgumentListInfo::arguments() const': /usr/include/clang/AST/TemplateBase.h:645:26: error: missing template arguments before '(' token 645 | return llvm::ArrayRef(getTemplateArgs(), getNumTemplateArgs()); | ^ In file included from /usr/include/clang/AST/Expr.h:28: /usr/include/clang/Basic/SyncScope.h: In member function 'virtual llvm::ArrayRef clang::AtomicScopeOpenCLModel::getRuntimeValues() const': /usr/include/clang/Basic/SyncScope.h:148:26: error: missing template arguments before '(' token 148 | return llvm::ArrayRef(Scopes); | ^ /usr/include/clang/Basic/SyncScope.h: In member function 'virtual llvm::ArrayRef clang::AtomicScopeHIPModel::getRuntimeValues() const': /usr/include/clang/Basic/SyncScope.h:200:26: error: missing template arguments before '(' token 200 | return llvm::ArrayRef(Scopes); | ^ /usr/include/clang/AST/Expr.h: At global scope: /usr/include/clang/AST/Expr.h:543:8: error: 'optional' in namespace 'std' does not name a template type 543 | std::optional | ^~~~~~~~ /usr/include/clang/AST/Expr.h:543:3: note: 'std::optional' is only available from C++17 onwards 543 | std::optional | ^~~ /usr/include/clang/AST/Expr.h: In member function 'void clang::CallExpr::computeDependence()': /usr/include/clang/AST/Expr.h:3024:29: error: missing template arguments before '(' token 3024 | this, llvm::ArrayRef( | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::CallExpr::getRawSubExprs()': /usr/include/clang/AST/Expr.h:3071:26: error: missing template arguments before '(' token 3071 | return llvm::ArrayRef(getTrailingStmts(), | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Expr.h:4818:43: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Expr.h:4818:43: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::InitListExpr::inits()': /usr/include/clang/AST/Expr.h:4838:51: error: missing template arguments before '(' token 4838 | ArrayRef inits() { return llvm::ArrayRef(getInits(), getNumInits()); } | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::InitListExpr::inits() const': /usr/include/clang/AST/Expr.h:4841:26: error: missing template arguments before '(' token 4841 | return llvm::ArrayRef(getInits(), getNumInits()); | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::ParenListExpr::exprs()': /usr/include/clang/AST/Expr.h:5583:51: error: missing template arguments before '(' token 5583 | ArrayRef exprs() { return llvm::ArrayRef(getExprs(), getNumExprs()); } | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::RecoveryExpr::subExpressions()': /usr/include/clang/AST/Expr.h:6434:26: error: missing template arguments before '(' token 6434 | return llvm::ArrayRef(B, B + NumExprs); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion*>' /usr/include/c++/13/bits/stl_pair.h:194:11: required from 'struct std::pair*> >' /usr/include/llvm/Support/type_traits.h:75:7: required from 'union llvm::detail::copy_construction_triviality_helper*> > >' /usr/include/c++/13/type_traits:1040:25: required by substitution of 'template using std::__is_constructible_impl = std::__bool_constant<__is_constructible(_Tp, _Args ...)> [with _Tp = llvm::detail::copy_construction_triviality_helper*> > >; _Args = {const llvm::detail::copy_construction_triviality_helper*> > >&}]' /usr/include/c++/13/type_traits:1076:12: required from 'struct std::is_copy_constructible*> > > >' /usr/include/llvm/Support/type_traits.h:98:8: required from 'struct llvm::is_trivially_copy_constructible*> > >' /usr/include/llvm/ADT/SmallVector.h:329:74: required from 'class llvm::SmallVectorImpl*> > >' /usr/include/llvm/ADT/SmallVector.h:1199:22: required from 'class llvm::SmallVector*> >, 4>' /usr/include/clang/AST/ASTConcept.h:53:57: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion*>': /usr/include/c++/13/bits/stl_pair.h:194:11: required from 'struct std::pair*> >' /usr/include/llvm/Support/type_traits.h:75:7: required from 'union llvm::detail::copy_construction_triviality_helper*> > >' /usr/include/c++/13/type_traits:1040:25: required by substitution of 'template using std::__is_constructible_impl = std::__bool_constant<__is_constructible(_Tp, _Args ...)> [with _Tp = llvm::detail::copy_construction_triviality_helper*> > >; _Args = {const llvm::detail::copy_construction_triviality_helper*> > >&}]' /usr/include/c++/13/type_traits:1076:12: required from 'struct std::is_copy_constructible*> > > >' /usr/include/llvm/Support/type_traits.h:98:8: required from 'struct llvm::is_trivially_copy_constructible*> > >' /usr/include/llvm/ADT/SmallVector.h:329:74: required from 'class llvm::SmallVectorImpl*> > >' /usr/include/llvm/ADT/SmallVector.h:1199:22: required from 'class llvm::SmallVector*> >, 4>' /usr/include/clang/AST/ASTConcept.h:53:57: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/Attr.h:365, from /usr/include/clang/AST/RecursiveASTVisitor.h:17: /usr/include/clang/AST/Attrs.inc: At global scope: /usr/include/clang/AST/Attrs.inc:7459:17: error: 'optional' in namespace 'std' does not name a template type 7459 | static std::optional | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7459:12: note: 'std::optional' is only available from C++17 onwards 7459 | static std::optional | ^~~ /usr/include/clang/AST/Attrs.inc:7461:17: error: 'optional' in namespace 'std' does not name a template type 7461 | static std::optional getActiveAttr(const ValueDecl *VD); | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7461:12: note: 'std::optional' is only available from C++17 onwards 7461 | static std::optional getActiveAttr(const ValueDecl *VD); | ^~~ /usr/include/clang/AST/Attrs.inc:7462:17: error: 'optional' in namespace 'std' does not name a template type 7462 | static std::optional getDeviceType(const ValueDecl *VD); | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7462:12: note: 'std::optional' is only available from C++17 onwards 7462 | static std::optional getDeviceType(const ValueDecl *VD); | ^~~ /usr/include/clang/AST/Attrs.inc:7463:17: error: 'optional' in namespace 'std' does not name a template type 7463 | static std::optional getLocation(const ValueDecl *VD); | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7463:12: note: 'std::optional' is only available from C++17 onwards 7463 | static std::optional getLocation(const ValueDecl *VD); | ^~~ In file included from /usr/include/clang/AST/DeclCXX.h:29, from /usr/include/clang/AST/RecursiveASTVisitor.h:20: /usr/include/clang/AST/TypeLoc.h: In member function 'llvm::ArrayRef clang::ObjCTypeParamTypeLoc::getProtocolLocs() const': /usr/include/clang/AST/TypeLoc.h:817:26: error: missing template arguments before '(' token 817 | return llvm::ArrayRef(getProtocolLocArray(), getNumProtocols()); | ^ /usr/include/clang/AST/TypeLoc.h: In member function 'llvm::ArrayRef clang::ObjCObjectTypeLoc::getProtocolLocs() const': /usr/include/clang/AST/TypeLoc.h:1023:26: error: missing template arguments before '(' token 1023 | return llvm::ArrayRef(getProtocolLocArray(), getNumProtocols()); | ^ /usr/include/clang/AST/TypeLoc.h: In member function 'llvm::ArrayRef clang::FunctionTypeLoc::getParams() const': /usr/include/clang/AST/TypeLoc.h:1450:26: error: missing template arguments before '(' token 1450 | return llvm::ArrayRef(getParmArray(), getNumParams()); | ^ In file included from /usr/include/clang/AST/DeclCXX.h:42: /usr/include/llvm/ADT/TinyPtrVector.h: In member function 'llvm::TinyPtrVector::operator llvm::ArrayRef() const': /usr/include/llvm/ADT/TinyPtrVector.h:138:19: error: 'nullopt' is not a member of 'std' 138 | return std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/TinyPtrVector.h:138:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/TinyPtrVector.h: In member function 'llvm::TinyPtrVector::operator llvm::MutableArrayRef()': /usr/include/llvm/ADT/TinyPtrVector.h:147:19: error: 'nullopt' is not a member of 'std' 147 | return std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/TinyPtrVector.h:147:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion*>' /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:417:35: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion*>': /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:417:35: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclCXX.h:470:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclCXX.h:470:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::CXXRecordDecl::DefinitionData::bases() const': /usr/include/clang/AST/DeclCXX.h:360:28: error: missing template arguments before '(' token 360 | return llvm::ArrayRef(getBases(), NumBases); | ^ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::CXXRecordDecl::DefinitionData::vbases() const': /usr/include/clang/AST/DeclCXX.h:364:28: error: missing template arguments before '(' token 364 | return llvm::ArrayRef(getVBases(), NumVBases); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion*>' /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:2104:49: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion*>': /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:2104:49: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclCXX.h:2224:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclCXX.h:2224:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::UsingPackDecl::expansions() const': /usr/include/clang/AST/DeclCXX.h:3742:26: error: missing template arguments before '(' token 3742 | return llvm::ArrayRef(getTrailingObjects(), NumExpansions); | ^ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::DecompositionDecl::bindings() const': /usr/include/clang/AST/DeclCXX.h:4112:26: error: missing template arguments before '(' token 4112 | return llvm::ArrayRef(getTrailingObjects(), NumBindings); | ^ In file included from /usr/include/clang/AST/ASTContext.h:20, from /usr/include/clang/AST/DeclTemplate.h:18, from /usr/include/clang/AST/DeclFriend.h:20, from /usr/include/clang/AST/RecursiveASTVisitor.h:21: /usr/include/clang/AST/ComparisonCategories.h: At global scope: /usr/include/clang/AST/ComparisonCategories.h:62:6: error: 'optional' in namespace 'std' does not name a template type 62 | std::optional | ^~~~~~~~ /usr/include/clang/AST/ComparisonCategories.h:62:1: note: 'std::optional' is only available from C++17 onwards 62 | std::optional | ^~~ In file included from /usr/include/clang/AST/ASTContext.h:25: /usr/include/clang/AST/PrettyPrinter.h: In member function 'virtual std::string clang::PrintingCallbacks::remapPath(llvm::StringRef) const': /usr/include/clang/AST/PrettyPrinter.h:39:28: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 39 | return std::string(Path); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/AST/PrettyPrinter.h:39:28: note: candidate expects 3 arguments, 1 provided 39 | return std::string(Path); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/clang/AST/ASTContext.h:26: /usr/include/clang/AST/RawCommentList.h: In constructor 'clang::RawComment::CommentLine::CommentLine(llvm::StringRef, clang::PresumedLoc, clang::PresumedLoc)': /usr/include/clang/AST/RawCommentList.h:148:11: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 148 | : Text(Text), Begin(Begin), End(End) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/AST/RawCommentList.h:148:11: note: candidate expects 3 arguments, 1 provided 148 | : Text(Text), Begin(Begin), End(End) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/clang/Basic/CodeGenOptions.h:20, from /usr/include/clang/Basic/ProfileList.h:16, from /usr/include/clang/AST/ASTContext.h:33: /usr/include/llvm/Support/CodeGen.h: At global scope: /usr/include/llvm/Support/CodeGen.h:66:15: error: 'optional' in namespace 'std' does not name a template type 66 | inline std::optional getLevel(IDType ID) { | ^~~~~~~~ /usr/include/llvm/Support/CodeGen.h:66:10: note: 'std::optional' is only available from C++17 onwards 66 | inline std::optional getLevel(IDType ID) { | ^~~ /usr/include/llvm/Support/CodeGen.h:74:15: error: 'optional' in namespace 'std' does not name a template type 74 | inline std::optional parseLevel(char C) { | ^~~~~~~~ /usr/include/llvm/Support/CodeGen.h:74:10: note: 'std::optional' is only available from C++17 onwards 74 | inline std::optional parseLevel(char C) { | ^~~ /usr/include/clang/Basic/CodeGenOptions.h:443:8: error: 'optional' in namespace 'std' does not name a template type 443 | std::optional DiagnosticsHotnessThreshold = 0; | ^~~~~~~~ /usr/include/clang/Basic/CodeGenOptions.h:443:3: note: 'std::optional' is only available from C++17 onwards 443 | std::optional DiagnosticsHotnessThreshold = 0; | ^~~ /usr/include/clang/Basic/CodeGenOptions.h:447:8: error: 'optional' in namespace 'std' does not name a template type 447 | std::optional DiagnosticsMisExpectTolerance = 0; | ^~~~~~~~ /usr/include/clang/Basic/CodeGenOptions.h:447:3: note: 'std::optional' is only available from C++17 onwards 447 | std::optional DiagnosticsMisExpectTolerance = 0; | ^~~ /usr/include/clang/Basic/ProfileList.h:44:8: error: 'optional' in namespace 'std' does not name a template type 44 | std::optional inSection(StringRef Section, StringRef Prefix, | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:44:3: note: 'std::optional' is only available from C++17 onwards 44 | std::optional inSection(StringRef Section, StringRef Prefix, | ^~~ /usr/include/clang/Basic/ProfileList.h:54:8: error: 'optional' in namespace 'std' does not name a template type 54 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:54:3: note: 'std::optional' is only available from C++17 onwards 54 | std::optional | ^~~ /usr/include/clang/Basic/ProfileList.h:57:8: error: 'optional' in namespace 'std' does not name a template type 57 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:57:3: note: 'std::optional' is only available from C++17 onwards 57 | std::optional | ^~~ /usr/include/clang/Basic/ProfileList.h:60:8: error: 'optional' in namespace 'std' does not name a template type 60 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:60:3: note: 'std::optional' is only available from C++17 onwards 60 | std::optional | ^~~ In file included from /usr/include/clang/AST/ASTContext.h:40: /usr/include/llvm/ADT/MapVector.h:42:12: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'? 42 | std::is_integral_v, | ^~~~~~~~~~~~~ | is_integral /usr/include/llvm/ADT/MapVector.h:42:55: error: expected '(' before '>' token 42 | std::is_integral_v, | ^ | ( /usr/include/llvm/ADT/MapVector.h:42:56: error: expected primary-expression before ',' token 42 | std::is_integral_v, | ^ /usr/include/llvm/ADT/MapVector.h: In member function 'ValueT llvm::MapVector::lookup(const KeyT&) const': /usr/include/llvm/ADT/MapVector.h:112:24: error: 'is_copy_constructible_v' is not a member of 'std'; did you mean 'is_copy_constructible'? 112 | static_assert(std::is_copy_constructible_v, | ^~~~~~~~~~~~~~~~~~~~~~~ | is_copy_constructible /usr/include/llvm/ADT/MapVector.h:112:54: error: expected primary-expression before '>' token 112 | static_assert(std::is_copy_constructible_v, | ^ /usr/include/llvm/ADT/MapVector.h:112:55: error: expected primary-expression before ',' token 112 | static_assert(std::is_copy_constructible_v, | ^ /usr/include/clang/AST/ASTContext.h: At global scope: /usr/include/clang/AST/ASTContext.h:1593:37: error: 'std::optional' has not been declared 1593 | std::optional PackIndex) const; | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:1593:45: error: expected ',' or '...' before '<' token 1593 | std::optional PackIndex) const; | ^ /usr/include/clang/AST/ASTContext.h:1656:38: error: 'std::optional' has not been declared 1656 | std::optional NumExpansions, | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:1656:46: error: expected ',' or '...' before '<' token 1656 | std::optional NumExpansions, | ^ /usr/include/clang/AST/ASTContext.h:2178:37: error: 'std::optional' has not been declared 2178 | std::optional PackIndex) const; | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:2178:45: error: expected ',' or '...' before '<' token 2178 | std::optional PackIndex) const; | ^ /usr/include/clang/AST/ASTContext.h:2292:8: error: 'optional' in namespace 'std' does not name a template type 2292 | std::optional getTypeSizeInCharsIfKnown(QualType Ty) const { | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:2292:3: note: 'std::optional' is only available from C++17 onwards 2292 | std::optional getTypeSizeInCharsIfKnown(QualType Ty) const { | ^~~ /usr/include/clang/AST/ASTContext.h:2298:8: error: 'optional' in namespace 'std' does not name a template type 2298 | std::optional getTypeSizeInCharsIfKnown(const Type *Ty) const { | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:2298:3: note: 'std::optional' is only available from C++17 onwards 2298 | std::optional getTypeSizeInCharsIfKnown(const Type *Ty) const { | ^~~ /usr/include/clang/AST/ASTContext.h: In member function 'bool clang::ASTContext::hasSameNullabilityTypeQualifier(clang::QualType, clang::QualType, bool) const': /usr/include/clang/AST/ASTContext.h:2549:34: error: 'const class clang::Type' has no member named 'getNullability' 2549 | auto SubTnullability = SubT->getNullability(); | ^~~~~~~~~~~~~~ /usr/include/clang/AST/ASTContext.h:2550:38: error: 'const class clang::Type' has no member named 'getNullability' 2550 | auto SuperTnullability = SuperT->getNullability(); | ^~~~~~~~~~~~~~ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::TemplateParameterList::asArray()': /usr/include/clang/AST/DeclTemplate.h:133:58: error: missing template arguments before '(' token 133 | ArrayRef asArray() { return llvm::ArrayRef(begin(), end()); } | ^ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::TemplateParameterList::asArray() const': /usr/include/clang/AST/DeclTemplate.h:135:26: error: missing template arguments before '(' token 135 | return llvm::ArrayRef(begin(), size()); | ^ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::TemplateArgumentList::asArray() const': /usr/include/clang/AST/DeclTemplate.h:291:26: error: missing template arguments before '(' token 291 | return llvm::ArrayRef(data(), size()); | ^ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::DependentFunctionTemplateSpecializationInfo::arguments() const': /usr/include/clang/AST/DeclTemplate.h:743:26: error: missing template arguments before '(' token 743 | return llvm::ArrayRef(getTemplateArgs(), getNumTemplateArgs()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::Chain*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::Chain*>' /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1236:17: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::Chain*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::Chain*>': /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1236:17: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::Chain*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclTemplate.h: At global scope: /usr/include/clang/AST/DeclTemplate.h:1241:29: error: 'std::optional' has not been declared 1241 | std::optional NumExpanded) | ^~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:1241:37: error: expected ',' or '...' before '<' token 1241 | std::optional NumExpanded) | ^ /usr/include/clang/AST/DeclTemplate.h:1252:15: error: 'std::optional' has not been declared 1252 | std::optional NumExpanded = std::nullopt); | ^~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:1252:23: error: expected ',' or '...' before '<' token 1252 | std::optional NumExpanded = std::nullopt); | ^ /usr/include/clang/AST/DeclTemplate.h:1252:10: error: default argument missing for parameter 11 of 'static clang::TemplateTypeParmDecl* clang::TemplateTypeParmDecl::Create(const clang::ASTContext&, clang::DeclContext*, clang::SourceLocation, clang::SourceLocation, unsigned int, unsigned int, clang::IdentifierInfo*, bool, bool, bool, int)' 1252 | std::optional NumExpanded = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:1251:50: note: ...following parameter 10 which has a default argument 1251 | bool Typename, bool ParameterPack, bool HasTypeConstraint = false, | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/clang/AST/DeclTemplate.h: In constructor 'clang::TemplateTypeParmDecl::TemplateTypeParmDecl(clang::DeclContext*, clang::SourceLocation, clang::SourceLocation, clang::IdentifierInfo*, bool, bool, int)': /usr/include/clang/AST/DeclTemplate.h:1245:33: error: request for member 'value_or' in '((clang::TemplateTypeParmDecl*)this)->clang::TemplateTypeParmDecl::NumExpanded', which is of non-class type 'unsigned int' 1245 | NumExpanded(NumExpanded.value_or(0)) {} | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::Chain*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::Chain*>' /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1419:17: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::Chain*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::Chain*>': /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1419:17: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::Chain*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::Chain*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::Chain*>' /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1632:17: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::Chain*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::Chain*>': /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1632:17: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::Chain*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:1843:5: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:1843:5: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:1978:31: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:1978:31: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:2481:15: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:2481:15: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:2705:3: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:2705:3: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:2832:31: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:2832:31: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:3424:53: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:3424:53: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclTemplate.h: At global scope: /usr/include/clang/AST/DeclTemplate.h:3453:13: error: 'optional' in namespace 'std' does not name a template type 3453 | inline std::optional getExpandedPackSize(const NamedDecl *Param) { | ^~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:3453:8: note: 'std::optional' is only available from C++17 onwards 3453 | inline std::optional getExpandedPackSize(const NamedDecl *Param) { | ^~~ /usr/include/clang/AST/DeclFriend.h:113:69: error: 'nullopt' is not a member of 'std' 113 | ArrayRef FriendTypeTPLists = std::nullopt); | ^~~~~~~ /usr/include/clang/AST/DeclFriend.h:113:69: note: 'std::nullopt' is only available from C++17 onwards In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:22: /usr/include/clang/AST/DeclObjC.h:391:64: error: 'nullopt' is not a member of 'std' 391 | ArrayRef SelLocs = std::nullopt); | ^~~~~~~ /usr/include/clang/AST/DeclObjC.h:391:64: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/DeclObjC.h: In member function 'llvm::ArrayRef clang::ObjCMethodDecl::parameters() const': /usr/include/clang/AST/DeclObjC.h:376:26: error: missing template arguments before '(' token 376 | return llvm::ArrayRef(const_cast(getParams()), NumParams); | ^ /usr/include/clang/AST/DeclObjC.h: In member function 'std::string clang::ObjCImplementationDecl::getNameAsString() const': /usr/include/clang/AST/DeclObjC.h:2713:69: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef)' 2713 | std::string getNameAsString() const { return std::string(getName()); } | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/AST/DeclObjC.h:2713:69: note: candidate expects 3 arguments, 1 provided 2713 | std::string getNameAsString() const { return std::string(getName()); } | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/llvm/Frontend/OpenMP/OMPContext.h:19, from /usr/include/clang/AST/OpenMPClause.h:37, from /usr/include/clang/AST/DeclOpenMP.h:21, from /usr/include/clang/AST/RecursiveASTVisitor.h:23: /usr/include/llvm/ADT/BitVector.h: In member function 'llvm::BitVector::size_type llvm::BitVector::count() const': /usr/include/llvm/ADT/BitVector.h:158:24: error: 'popcount' is not a member of 'llvm'; did you mean 'count'? 158 | NumBits += llvm::popcount(Bit); | ^~~~~~~~ | count In file included from /usr/include/clang/Basic/Diagnostic.h:22: /usr/include/llvm/ADT/DenseMap.h: In instantiation of 'class llvm::SmallDenseMap': /usr/include/llvm/Frontend/OpenMP/OMPContext.h:151:39: required from here /usr/include/llvm/ADT/DenseMap.h:890:30: error: non-constant condition for static assertion 890 | static_assert(isPowerOf2_64(InlineBuckets), | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/llvm/ADT/DenseMap.h:890:30: in 'constexpr' expansion of 'llvm::isPowerOf2_64(4)' /usr/include/llvm/ADT/DenseMap.h:890:30: error: 'constexpr' call flows off the end of the function /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPVarListClause::getVarRefs() const': /usr/include/clang/AST/OpenMPClause.h:339:26: error: missing template arguments before '(' token 339 | return llvm::ArrayRef( | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPPrivateClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:2560:26: error: missing template arguments before '(' token 2560 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFirstprivateClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:2669:26: error: missing template arguments before '(' token 2669 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFirstprivateClause::getInits() const': /usr/include/clang/AST/OpenMPClause.h:2683:26: error: missing template arguments before '(' token 2683 | return llvm::ArrayRef(getPrivateCopies().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:2831:26: error: missing template arguments before '(' token 2831 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getSourceExprs() const': /usr/include/clang/AST/OpenMPClause.h:2845:26: error: missing template arguments before '(' token 2845 | return llvm::ArrayRef(getPrivateCopies().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getDestinationExprs() const': /usr/include/clang/AST/OpenMPClause.h:2859:26: error: missing template arguments before '(' token 2859 | return llvm::ArrayRef(getSourceExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getAssignmentOps() const': /usr/include/clang/AST/OpenMPClause.h:2872:26: error: missing template arguments before '(' token 2872 | return llvm::ArrayRef(getDestinationExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3160:26: error: missing template arguments before '(' token 3160 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getLHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3173:26: error: missing template arguments before '(' token 3173 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getRHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3188:26: error: missing template arguments before '(' token 3188 | return llvm::ArrayRef(getLHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getReductionOps() const': /usr/include/clang/AST/OpenMPClause.h:3202:26: error: missing template arguments before '(' token 3202 | return llvm::ArrayRef(getRHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getInscanCopyOps() const': /usr/include/clang/AST/OpenMPClause.h:3214:26: error: missing template arguments before '(' token 3214 | return llvm::ArrayRef(getReductionOps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getInscanCopyArrayTemps() const': /usr/include/clang/AST/OpenMPClause.h:3225:26: error: missing template arguments before '(' token 3225 | return llvm::ArrayRef(getInscanCopyOps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getInscanCopyArrayElems() const': /usr/include/clang/AST/OpenMPClause.h:3237:26: error: missing template arguments before '(' token 3237 | return llvm::ArrayRef(getInscanCopyArrayTemps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3479:26: error: missing template arguments before '(' token 3479 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getLHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3492:26: error: missing template arguments before '(' token 3492 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getRHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3506:26: error: missing template arguments before '(' token 3506 | return llvm::ArrayRef(getLHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getReductionOps() const': /usr/include/clang/AST/OpenMPClause.h:3520:26: error: missing template arguments before '(' token 3520 | return llvm::ArrayRef(getRHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3710:26: error: missing template arguments before '(' token 3710 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getLHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3723:26: error: missing template arguments before '(' token 3723 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getRHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3737:26: error: missing template arguments before '(' token 3737 | return llvm::ArrayRef(getLHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getReductionOps() const': /usr/include/clang/AST/OpenMPClause.h:3751:26: error: missing template arguments before '(' token 3751 | return llvm::ArrayRef(getRHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getTaskgroupDescriptors() const': /usr/include/clang/AST/OpenMPClause.h:3762:26: error: missing template arguments before '(' token 3762 | return llvm::ArrayRef(getReductionOps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3968:26: error: missing template arguments before '(' token 3968 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getInits() const': /usr/include/clang/AST/OpenMPClause.h:3975:26: error: missing template arguments before '(' token 3975 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getUpdates() const': /usr/include/clang/AST/OpenMPClause.h:3983:26: error: missing template arguments before '(' token 3983 | return llvm::ArrayRef(getInits().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getFinals() const': /usr/include/clang/AST/OpenMPClause.h:3991:26: error: missing template arguments before '(' token 3991 | return llvm::ArrayRef(getUpdates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getUsedExprs() const': /usr/include/clang/AST/OpenMPClause.h:3999:26: error: missing template arguments before '(' token 3999 | return llvm::ArrayRef(getFinals().end() + 2, varlist_size() + 1); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyinClause::getSourceExprs() const': /usr/include/clang/AST/OpenMPClause.h:4328:26: error: missing template arguments before '(' token 4328 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyinClause::getDestinationExprs() const': /usr/include/clang/AST/OpenMPClause.h:4341:26: error: missing template arguments before '(' token 4341 | return llvm::ArrayRef(getSourceExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyinClause::getAssignmentOps() const': /usr/include/clang/AST/OpenMPClause.h:4355:26: error: missing template arguments before '(' token 4355 | return llvm::ArrayRef(getDestinationExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyprivateClause::getSourceExprs() const': /usr/include/clang/AST/OpenMPClause.h:4493:26: error: missing template arguments before '(' token 4493 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyprivateClause::getDestinationExprs() const': /usr/include/clang/AST/OpenMPClause.h:4506:26: error: missing template arguments before '(' token 4506 | return llvm::ArrayRef(getSourceExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyprivateClause::getAssignmentOps() const': /usr/include/clang/AST/OpenMPClause.h:4520:26: error: missing template arguments before '(' token 4520 | return llvm::ArrayRef(getDestinationExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'clang::OMPMappableExprListClause::const_component_lists_iterator clang::OMPMappableExprListClause::component_lists_begin() const': /usr/include/clang/AST/OpenMPClause.h:5638:51: error: 'nullopt' is not a member of 'std' 5638 | SupportsMapper ? getUDMapperRefs() : std::nullopt); | ^~~~~~~ /usr/include/clang/AST/OpenMPClause.h:5638:51: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/OpenMPClause.h: In member function 'clang::OMPMappableExprListClause::const_component_lists_iterator clang::OMPMappableExprListClause::component_lists_end() const': /usr/include/clang/AST/OpenMPClause.h:5645:30: error: 'nullopt' is not a member of 'std' 5645 | SupportsMapper, std::nullopt); | ^~~~~~~ /usr/include/clang/AST/OpenMPClause.h:5645:30: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/OpenMPClause.h: In member function 'clang::OMPMappableExprListClause::const_component_lists_iterator clang::OMPMappableExprListClause::decl_component_lists_begin(const clang::ValueDecl*) const': /usr/include/clang/AST/OpenMPClause.h:5658:51: error: 'nullopt' is not a member of 'std' 5658 | SupportsMapper ? getUDMapperRefs() : std::nullopt); | ^~~~~~~ /usr/include/clang/AST/OpenMPClause.h:5658:51: note: 'std::nullopt' is only available from C++17 onwards In file included from /usr/include/c++/13/cassert:44, from /usr/include/clang/AST/OpenMPClause.h:41: /usr/include/clang/AST/OpenMPClause.h: In constructor 'clang::OMPMapClause::OMPMapClause(llvm::ArrayRef, llvm::ArrayRef, clang::NestedNameSpecifierLoc, clang::DeclarationNameInfo, clang::OpenMPMapClauseKind, bool, clang::SourceLocation, const clang::OMPVarListLocTy&, const clang::OMPMappableExprListSizeTy&)': /usr/include/clang/AST/OpenMPClause.h:5810:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 5810 | assert(std::size(MapTypeModifiers) == MapModifiers.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h:5814:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 5814 | assert(std::size(MapTypeModifiersLoc) == MapModifiersLoc.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPMapClause::getMapTypeModifiers() const': /usr/include/clang/AST/OpenMPClause.h:5948:26: error: missing template arguments before '(' token 5948 | return llvm::ArrayRef(MapTypeModifiers); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPMapClause::getMapTypeModifiersLoc() const': /usr/include/clang/AST/OpenMPClause.h:5953:26: error: missing template arguments before '(' token 5953 | return llvm::ArrayRef(MapTypeModifiersLoc); | ^ /usr/include/clang/AST/OpenMPClause.h: In constructor 'clang::OMPToClause::OMPToClause(llvm::ArrayRef, llvm::ArrayRef, clang::NestedNameSpecifierLoc, clang::DeclarationNameInfo, const clang::OMPVarListLocTy&, const clang::OMPMappableExprListSizeTy&)': /usr/include/clang/AST/OpenMPClause.h:6788:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6788 | assert(std::size(MotionModifiers) == TheMotionModifiers.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h:6792:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6792 | assert(std::size(MotionModifiersLoc) == TheMotionModifiersLoc.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPToClause::getMotionModifiers() const': /usr/include/clang/AST/OpenMPClause.h:6904:26: error: missing template arguments before '(' token 6904 | return llvm::ArrayRef(MotionModifiers); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPToClause::getMotionModifiersLoc() const': /usr/include/clang/AST/OpenMPClause.h:6909:26: error: missing template arguments before '(' token 6909 | return llvm::ArrayRef(MotionModifiersLoc); | ^ /usr/include/clang/AST/OpenMPClause.h: In constructor 'clang::OMPFromClause::OMPFromClause(llvm::ArrayRef, llvm::ArrayRef, clang::NestedNameSpecifierLoc, clang::DeclarationNameInfo, const clang::OMPVarListLocTy&, const clang::OMPMappableExprListSizeTy&)': /usr/include/clang/AST/OpenMPClause.h:6989:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6989 | assert(std::size(MotionModifiers) == TheMotionModifiers.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h:6993:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6993 | assert(std::size(MotionModifiersLoc) == TheMotionModifiersLoc.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFromClause::getMotionModifiers() const': /usr/include/clang/AST/OpenMPClause.h:7104:26: error: missing template arguments before '(' token 7104 | return llvm::ArrayRef(MotionModifiers); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFromClause::getMotionModifiersLoc() const': /usr/include/clang/AST/OpenMPClause.h:7109:26: error: missing template arguments before '(' token 7109 | return llvm::ArrayRef(MotionModifiersLoc); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPUseDevicePtrClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:7204:26: error: missing template arguments before '(' token 7204 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPUseDevicePtrClause::getInits() const': /usr/include/clang/AST/OpenMPClause.h:7218:26: error: missing template arguments before '(' token 7218 | return llvm::ArrayRef(getPrivateCopies().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPNontemporalClause::getPrivateRefs() const': /usr/include/clang/AST/OpenMPClause.h:7652:26: error: missing template arguments before '(' token 7652 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::MutableArrayRef clang::OMPChildren::getClauses()': /usr/include/clang/AST/OpenMPClause.h:8934:33: error: missing template arguments before '(' token 8934 | return llvm::MutableArrayRef(getTrailingObjects(), | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPDeclarativeDirective::getClauses()': /usr/include/clang/AST/DeclOpenMP.h:37:19: error: 'nullopt' is not a member of 'std' 37 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/DeclOpenMP.h:37:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::ArrayRef clang::OMPDeclarativeDirective::clauses() const': /usr/include/clang/AST/DeclOpenMP.h:93:19: error: 'nullopt' is not a member of 'std' 93 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/DeclOpenMP.h:93:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::ArrayRef clang::OMPThreadPrivateDecl::getVars() const': /usr/include/clang/AST/DeclOpenMP.h:121:26: error: missing template arguments before '(' token 121 | return llvm::ArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPThreadPrivateDecl::getVars()': /usr/include/clang/AST/DeclOpenMP.h:126:33: error: missing template arguments before '(' token 126 | return llvm::MutableArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::ArrayRef clang::OMPAllocateDecl::getVars() const': /usr/include/clang/AST/DeclOpenMP.h:484:26: error: missing template arguments before '(' token 484 | return llvm::ArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPAllocateDecl::getVars()': /usr/include/clang/AST/DeclOpenMP.h:489:33: error: missing template arguments before '(' token 489 | return llvm::MutableArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprCXX.h:849:48: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprCXX.h:849:48: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:27: /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:2265:45: error: 'std::optional' has not been declared 2265 | SourceRange TypeIdParens, std::optional ArraySize, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2265:53: error: expected ',' or '...' before '<' token 2265 | SourceRange TypeIdParens, std::optional ArraySize, | ^ /usr/include/clang/AST/ExprCXX.h:2280:41: error: 'std::optional' has not been declared 2280 | SourceRange TypeIdParens, std::optional ArraySize, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2280:49: error: expected ',' or '...' before '<' token 2280 | SourceRange TypeIdParens, std::optional ArraySize, | ^ /usr/include/clang/AST/ExprCXX.h:2325:8: error: 'optional' in namespace 'std' does not name a template type 2325 | std::optional getArraySize() { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2325:3: note: 'std::optional' is only available from C++17 onwards 2325 | std::optional getArraySize() { | ^~~ /usr/include/clang/AST/ExprCXX.h:2339:8: error: 'optional' in namespace 'std' does not name a template type 2339 | std::optional getArraySize() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2339:3: note: 'std::optional' is only available from C++17 onwards 2339 | std::optional getArraySize() const { | ^~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprCXX.h:2544:58: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprCXX.h:2544:58: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::TypeTraitExpr::getArgs() const': /usr/include/clang/AST/ExprCXX.h:2799:26: error: missing template arguments before '(' token 2799 | return llvm::ArrayRef(getTrailingObjects(), getNumArgs()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/llvm/Support/TrailingObjects.h:77:22: required from 'class llvm::trailing_objects_internal::AlignmentCalcHelper >' /usr/include/llvm/Support/TrailingObjects.h:212:7: required from 'class llvm::TrailingObjects >' /usr/include/clang/AST/ExprCXX.h:3418:21: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/llvm/Support/TrailingObjects.h:77:22: required from 'class llvm::trailing_objects_internal::AlignmentCalcHelper >' /usr/include/llvm/Support/TrailingObjects.h:212:7: required from 'class llvm::TrailingObjects >' /usr/include/clang/AST/ExprCXX.h:3418:21: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef > clang::ExprWithCleanups::getObjects() const': /usr/include/clang/AST/ExprCXX.h:3445:26: error: missing template arguments before '(' token 3445 | return llvm::ArrayRef(getTrailingObjects(), getNumObjects()); | ^ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4141:26: error: 'std::optional' has not been declared 4141 | std::optional NumExpansions) | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4141:34: error: expected ',' or '...' before '<' token 4141 | std::optional NumExpansions) | ^ /usr/include/clang/AST/ExprCXX.h:4164:8: error: 'optional' in namespace 'std' does not name a template type 4164 | std::optional getNumExpansions() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4164:3: note: 'std::optional' is only available from C++17 onwards 4164 | std::optional getNumExpansions() const { | ^~~ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::PackExpansionExpr::PackExpansionExpr(clang::QualType, clang::Expr*, clang::SourceLocation, int)': /usr/include/clang/AST/ExprCXX.h:4145:39: error: invalid type argument of unary '*' (have 'unsigned int') 4145 | NumExpansions(NumExpansions ? *NumExpansions + 1 : 0), | ^~~~~~~~~~~~~~ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4235:23: error: 'std::optional' has not been declared 4235 | std::optional Length, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4235:31: error: expected ',' or '...' before '<' token 4235 | std::optional Length, | ^ /usr/include/clang/AST/ExprCXX.h:4256:15: error: 'std::optional' has not been declared 4256 | std::optional Length = std::nullopt, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4256:23: error: expected ',' or '...' before '<' token 4256 | std::optional Length = std::nullopt, | ^ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::SizeOfPackExpr::SizeOfPackExpr(clang::QualType, clang::SourceLocation, clang::NamedDecl*, clang::SourceLocation, clang::SourceLocation, int)': /usr/include/clang/AST/ExprCXX.h:4239:25: error: invalid type argument of unary '*' (have 'unsigned int') 4239 | Length(Length ? *Length : PartialArgs.size()), Pack(Pack) { | ^~~~~~~ /usr/include/clang/AST/ExprCXX.h:4239:35: error: 'PartialArgs' was not declared in this scope 4239 | Length(Length ? *Length : PartialArgs.size()), Pack(Pack) { | ^~~~~~~~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::SizeOfPackExpr::getPartialArguments() const': /usr/include/clang/AST/ExprCXX.h:4296:26: error: missing template arguments before '(' token 4296 | return llvm::ArrayRef(Args, Args + Length); | ^ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4340:37: error: 'std::optional' has not been declared 4340 | std::optional PackIndex, bool RefParam) | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4340:45: error: expected ',' or '...' before '<' token 4340 | std::optional PackIndex, bool RefParam) | ^ /usr/include/clang/AST/ExprCXX.h:4366:8: error: 'optional' in namespace 'std' does not name a template type 4366 | std::optional getPackIndex() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4366:3: note: 'std::optional' is only available from C++17 onwards 4366 | std::optional getPackIndex() const { | ^~~ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::SubstNonTypeTemplateParmExpr::SubstNonTypeTemplateParmExpr(clang::QualType, clang::ExprValueKind, clang::SourceLocation, clang::Expr*, clang::Decl*, unsigned int, int)': /usr/include/clang/AST/ExprCXX.h:4343:46: error: 'RefParam' was not declared in this scope 4343 | AssociatedDeclAndRef(AssociatedDecl, RefParam), Index(Index), | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4344:31: error: invalid type argument of unary '*' (have 'unsigned int') 4344 | PackIndex(PackIndex ? *PackIndex + 1 : 0) { | ^~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprCXX.h:4567:63: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprCXX.h:4567:63: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4693:20: error: 'std::optional' has not been declared 4693 | std::optional NumExpansions) | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4693:28: error: expected ',' or '...' before '<' token 4693 | std::optional NumExpansions) | ^ /usr/include/clang/AST/ExprCXX.h:4730:8: error: 'optional' in namespace 'std' does not name a template type 4730 | std::optional getNumExpansions() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4730:3: note: 'std::optional' is only available from C++17 onwards 4730 | std::optional getNumExpansions() const { | ^~~ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::CXXFoldExpr::CXXFoldExpr(clang::QualType, clang::UnresolvedLookupExpr*, clang::SourceLocation, clang::Expr*, clang::BinaryOperatorKind, clang::SourceLocation, clang::Expr*, clang::SourceLocation, int)': /usr/include/clang/AST/ExprCXX.h:4696:39: error: invalid type argument of unary '*' (have 'unsigned int') 4696 | NumExpansions(NumExpansions ? *NumExpansions + 1 : 0), Opcode(Opcode) { | ^~~~~~~~~~~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::CXXParenListInitExpr::getInitExprs()': /usr/include/clang/AST/ExprCXX.h:4837:20: error: missing template arguments before '(' token 4837 | return ArrayRef(getTrailingObjects(), NumExprs); | ^ /usr/include/clang/AST/ExprCXX.h: In member function 'const llvm::ArrayRef clang::CXXParenListInitExpr::getInitExprs() const': /usr/include/clang/AST/ExprCXX.h:4841:20: error: missing template arguments before '(' token 4841 | return ArrayRef(getTrailingObjects(), NumExprs); | ^ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::CXXParenListInitExpr::getUserSpecifiedInitExprs()': /usr/include/clang/AST/ExprCXX.h:4845:20: error: missing template arguments before '(' token 4845 | return ArrayRef(getTrailingObjects(), NumUserSpecifiedExprs); | ^ /usr/include/clang/AST/ExprCXX.h: In member function 'const llvm::ArrayRef clang::CXXParenListInitExpr::getUserSpecifiedInitExprs() const': /usr/include/clang/AST/ExprCXX.h:4849:20: error: missing template arguments before '(' token 4849 | return ArrayRef(getTrailingObjects(), NumUserSpecifiedExprs); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprConcepts.h:216:66: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprConcepts.h:216:66: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprConcepts.h:336:56: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprConcepts.h:336:56: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprConcepts.h:283:33: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprConcepts.h:283:33: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:29: /usr/include/clang/AST/ExprObjC.h: At global scope: /usr/include/clang/AST/ExprObjC.h:274:8: error: 'optional' in namespace 'std' does not name a template type 274 | std::optional NumExpansions; | ^~~~~~~~ /usr/include/clang/AST/ExprObjC.h:274:3: note: 'std::optional' is only available from C++17 onwards 274 | std::optional NumExpansions; | ^~~ /usr/include/clang/AST/ExprObjC.h: In member function 'clang::ObjCDictionaryElement clang::ObjCDictionaryLiteral::getKeyValueElement(unsigned int) const': /usr/include/clang/AST/ExprObjC.h:365:42: error: 'nullopt' is not a member of 'std' 365 | std::nullopt}; | ^~~~~~~ /usr/include/clang/AST/ExprObjC.h:365:42: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/ExprObjC.h:365:49: error: too many initializers for 'clang::ObjCDictionaryElement' 365 | std::nullopt}; | ^ /usr/include/clang/AST/ExprObjC.h:371:16: error: 'struct clang::ObjCDictionaryElement' has no member named 'NumExpansions' 371 | Result.NumExpansions = Expansion.NumExpansionsPlusOne - 1; | ^~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprObjC.h:645:65: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprObjC.h:645:65: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprObjC.h: In member function 'clang::SourceLocation clang::ObjCMessageExpr::getSelectorLoc(unsigned int) const': /usr/include/clang/AST/ExprObjC.h:1420:25: error: missing template arguments before '(' token 1420 | llvm::ArrayRef(const_cast(getArgs()), getNumArgs()), | ^ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:30: /usr/include/clang/AST/ExprOpenMP.h: In member function 'llvm::ArrayRef clang::OMPArrayShapingExpr::getDimensions() const': /usr/include/clang/AST/ExprOpenMP.h:205:26: error: missing template arguments before '(' token 205 | return llvm::ArrayRef(getTrailingObjects(), NumDims); | ^ /usr/include/clang/AST/ExprOpenMP.h: In member function 'llvm::ArrayRef clang::OMPArrayShapingExpr::getBracketsRanges() const': /usr/include/clang/AST/ExprOpenMP.h:210:26: error: missing template arguments before '(' token 210 | return llvm::ArrayRef(getTrailingObjects(), NumDims); | ^ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:37: /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPExecutableDirective::getClauses()': /usr/include/clang/AST/StmtOpenMP.h:280:19: error: 'nullopt' is not a member of 'std' 280 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/StmtOpenMP.h:280:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/StmtOpenMP.h: In static member function 'static llvm::iterator_range clang::OMPExecutableDirective::used_clauses_children(llvm::ArrayRef)': /usr/include/clang/AST/StmtOpenMP.h:404:36: error: expected primary-expression before '(' token 404 | used_clauses_child_iterator(llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ /usr/include/clang/AST/StmtOpenMP.h:404:51: error: missing template arguments before '(' token 404 | used_clauses_child_iterator(llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ /usr/include/clang/AST/StmtOpenMP.h:404:78: error: could not convert '{clang::OMPExecutableDirective::used_clauses_child_iterator(Clauses), }' from '' to 'llvm::iterator_range' 404 | used_clauses_child_iterator(llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ | | | /usr/include/clang/AST/StmtOpenMP.h: In static member function 'static llvm::iterator_range > clang::OMPExecutableDirective::getClausesOfKind(llvm::ArrayRef)': /usr/include/clang/AST/StmtOpenMP.h:448:53: error: expected primary-expression before '(' token 448 | specific_clause_iterator( | ^ /usr/include/clang/AST/StmtOpenMP.h:449:31: error: missing template arguments before '(' token 449 | llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::ArrayRef clang::OMPExecutableDirective::clauses() const': /usr/include/clang/AST/StmtOpenMP.h:575:19: error: 'nullopt' is not a member of 'std' 575 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/StmtOpenMP.h:575:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getCounters()': /usr/include/clang/AST/StmtOpenMP.h:1070:33: error: missing template arguments before '(' token 1070 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getPrivateCounters()': /usr/include/clang/AST/StmtOpenMP.h:1078:33: error: missing template arguments before '(' token 1078 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getInits()': /usr/include/clang/AST/StmtOpenMP.h:1086:33: error: missing template arguments before '(' token 1086 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getUpdates()': /usr/include/clang/AST/StmtOpenMP.h:1094:33: error: missing template arguments before '(' token 1094 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getFinals()': /usr/include/clang/AST/StmtOpenMP.h:1102:33: error: missing template arguments before '(' token 1102 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getDependentCounters()': /usr/include/clang/AST/StmtOpenMP.h:1110:33: error: missing template arguments before '(' token 1110 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getDependentInits()': /usr/include/clang/AST/StmtOpenMP.h:1118:33: error: missing template arguments before '(' token 1118 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getFinalsConditions()': /usr/include/clang/AST/StmtOpenMP.h:1126:33: error: missing template arguments before '(' token 1126 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ In file included from /usr/include/clang/Basic/FileEntry.h:17, from /usr/include/clang/Basic/SourceManager.h:38, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/CallExprToValue.cpp:19: /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:35:34: error: invalid use of '::' 35 | constexpr CustomizableOptional(std::nullopt_t) {} | ^~~ /usr/include/clang/Basic/CustomizableOptional.h:35:51: error: expected ';' at end of member declaration 35 | constexpr CustomizableOptional(std::nullopt_t) {} | ^ | ; /usr/include/clang/Basic/CustomizableOptional.h:45:49: error: expected ')' before ',' token 45 | constexpr CustomizableOptional(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/CustomizableOptional.h:49:45: error: 'optional' in namespace 'std' does not name a template type 49 | constexpr CustomizableOptional(const std::optional &y) | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:49:40: note: 'std::optional' is only available from C++17 onwards 49 | constexpr CustomizableOptional(const std::optional &y) | ^~~ /usr/include/clang/Basic/CustomizableOptional.h:49:53: error: expected ',' or '...' before '<' token 49 | constexpr CustomizableOptional(const std::optional &y) | ^ /usr/include/clang/Basic/CustomizableOptional.h:51:47: error: expected ')' before '<' token 51 | constexpr CustomizableOptional(std::optional &&y) | ~ ^ | ) /usr/include/clang/Basic/CustomizableOptional.h:102:26: error: 'optional' in namespace 'std' does not name a template type 102 | explicit operator std::optional &() const & { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:102:21: note: 'std::optional' is only available from C++17 onwards 102 | explicit operator std::optional &() const & { | ^~~ /usr/include/clang/Basic/CustomizableOptional.h:105:26: error: 'optional' in namespace 'std' does not name a template type 105 | explicit operator std::optional &&() const && { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:105:21: note: 'std::optional' is only available from C++17 onwards 105 | explicit operator std::optional &&() const && { | ^~~ /usr/include/clang/Basic/CustomizableOptional.h: In constructor 'constexpr clang::CustomizableOptional::CustomizableOptional(const T&)': /usr/include/clang/Basic/CustomizableOptional.h:37:61: error: 'in_place' is not a member of 'std' 37 | constexpr CustomizableOptional(const T &y) : Storage(std::in_place, y) {} | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:37:61: note: 'std::in_place' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: In constructor 'constexpr clang::CustomizableOptional::CustomizableOptional(T&&)': /usr/include/clang/Basic/CustomizableOptional.h:41:22: error: 'in_place' is not a member of 'std' 41 | : Storage(std::in_place, std::move(y)) {} | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:41:22: note: 'std::in_place' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: In constructor 'constexpr clang::CustomizableOptional::CustomizableOptional(int)': /usr/include/clang/Basic/CustomizableOptional.h:50:30: error: 'y' was not declared in this scope 50 | : CustomizableOptional(y ? *y : CustomizableOptional()) {} | ^ /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:111:59: error: expected constructor, destructor, or type conversion before ';' token 111 | CustomizableOptional(const T &) -> CustomizableOptional; | ^ /usr/include/clang/Basic/CustomizableOptional.h:159:66: error: 'std::nullopt_t' has not been declared 159 | constexpr bool operator==(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:164:16: error: declaration of 'operator==' as non-function 164 | constexpr bool operator==(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:164:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 164 | constexpr bool operator==(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:164:43: error: expected primary-expression before 'const' 164 | constexpr bool operator==(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:169:66: error: 'std::nullopt_t' has not been declared 169 | constexpr bool operator!=(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator!=(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:170:22: error: 'nullopt' is not a member of 'std' 170 | return !(X == std::nullopt); | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:170:22: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:174:16: error: declaration of 'operator!=' as non-function 174 | constexpr bool operator!=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:174:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 174 | constexpr bool operator!=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:174:43: error: expected primary-expression before 'const' 174 | constexpr bool operator!=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:179:64: error: 'std::nullopt_t' has not been declared 179 | constexpr bool operator<(const CustomizableOptional &, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:184:16: error: declaration of 'operator<' as non-function 184 | constexpr bool operator<(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:184:31: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 184 | constexpr bool operator<(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:184:42: error: expected primary-expression before 'const' 184 | constexpr bool operator<(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:189:66: error: 'std::nullopt_t' has not been declared 189 | constexpr bool operator<=(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator<=(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:190:17: error: 'nullopt' is not a member of 'std' 190 | return !(std::nullopt < X); | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:190:17: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:194:16: error: declaration of 'operator<=' as non-function 194 | constexpr bool operator<=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:194:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 194 | constexpr bool operator<=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:194:43: error: expected primary-expression before 'const' 194 | constexpr bool operator<=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:199:65: error: 'std::nullopt_t' has not been declared 199 | constexpr bool operator>(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator>(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:200:15: error: 'nullopt' is not a member of 'std' 200 | return std::nullopt < X; | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:200:15: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:204:16: error: declaration of 'operator>' as non-function 204 | constexpr bool operator>(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:204:31: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 204 | constexpr bool operator>(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:204:42: error: expected primary-expression before 'const' 204 | constexpr bool operator>(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:209:66: error: 'std::nullopt_t' has not been declared 209 | constexpr bool operator>=(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator>=(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:210:15: error: 'nullopt' is not a member of 'std' 210 | return std::nullopt <= X; | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:210:15: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:214:16: error: declaration of 'operator>=' as non-function 214 | constexpr bool operator>=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:214:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 214 | constexpr bool operator>=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:214:43: error: expected primary-expression before 'const' 214 | constexpr bool operator>=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ In file included from /usr/include/clang/Basic/FileEntry.h:18: /usr/include/clang/Basic/DirectoryEntry.h:134:51: error: expected ')' before ',' token 134 | explicit MapEntryOptionalStorage(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/DirectoryEntry.h:180:43: error: expected ')' before ',' token 180 | explicit OptionalStorage(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/DirectoryEntry.h:181:38: error: expected unqualified-id before ',' token 181 | : StorageImpl(std::in_place_t{}, std::forward(Args)...) {} | ^ /usr/include/clang/Basic/DirectoryEntry.h:269:56: error: invalid use of '::' 269 | OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr(std::nullopt_t) {} | ^~~ /usr/include/clang/Basic/DirectoryEntry.h:269:73: error: expected ';' at end of member declaration 269 | OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr(std::nullopt_t) {} | ^ | ; /usr/include/clang/Basic/DirectoryEntry.h:277:18: error: 'std::nullopt_t' has not been declared 277 | operator=(std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/DirectoryEntry.h: In member function 'clang::OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr& clang::OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr::operator=(int)': /usr/include/clang/Basic/DirectoryEntry.h:278:47: error: 'nullopt' is not a member of 'std' 278 | OptionalDirectoryEntryRef::operator=(std::nullopt); | ^~~~~~~ /usr/include/clang/Basic/DirectoryEntry.h:278:47: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/Basic/FileEntry.h:124:51: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/Basic/FileEntry.h:124:51: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/Basic/FileEntry.h: At global scope: /usr/include/clang/Basic/FileEntry.h:221:43: error: expected ')' before ',' token 221 | explicit OptionalStorage(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/FileEntry.h:222:38: error: expected unqualified-id before ',' token 222 | : StorageImpl(std::in_place_t{}, std::forward(Args)...) {} | ^ /usr/include/clang/Basic/FileEntry.h:305:46: error: invalid use of '::' 305 | OptionalFileEntryRefDegradesToFileEntryPtr(std::nullopt_t) {} | ^~~ /usr/include/clang/Basic/FileEntry.h:305:63: error: expected ';' at end of member declaration 305 | OptionalFileEntryRefDegradesToFileEntryPtr(std::nullopt_t) {} | ^ | ; /usr/include/clang/Basic/FileEntry.h:311:62: error: 'std::nullopt_t' has not been declared 311 | OptionalFileEntryRefDegradesToFileEntryPtr &operator=(std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/FileEntry.h: In member function 'clang::OptionalFileEntryRefDegradesToFileEntryPtr& clang::OptionalFileEntryRefDegradesToFileEntryPtr::operator=(int)': /usr/include/clang/Basic/FileEntry.h:312:42: error: 'nullopt' is not a member of 'std' 312 | OptionalFileEntryRef::operator=(std::nullopt); | ^~~~~~~ /usr/include/clang/Basic/FileEntry.h:312:42: note: 'std::nullopt' is only available from C++17 onwards In file included from /usr/include/llvm/Support/FormatProviders.h:21, from /usr/include/llvm/Support/Chrono.h:13, from /usr/include/llvm/Support/FileSystem.h:33, from /usr/include/clang/Basic/FileManager.h:29, from /usr/include/clang/Basic/SourceManager.h:39: /usr/include/llvm/Support/NativeFormatting.h: At global scope: /usr/include/llvm/Support/NativeFormatting.h:41:21: error: 'std::optional' has not been declared 41 | std::optional Width = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/NativeFormatting.h:41:29: error: expected ',' or '...' before '<' token 41 | std::optional Width = std::nullopt); | ^ /usr/include/llvm/Support/NativeFormatting.h:43:24: error: 'std::optional' has not been declared 43 | std::optional Precision = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/NativeFormatting.h:43:32: error: expected ',' or '...' before '<' token 43 | std::optional Precision = std::nullopt); | ^ /usr/include/llvm/Support/FormatProviders.h:32:17: error: 'is_one_of' was not declared in this scope; did you mean 'none_of'? 32 | bool, is_one_of::value> {}; | ^ /usr/include/c++/13/type_traits:62:12: note: provided for 'template struct std::integral_constant' 62 | struct integral_constant | ^~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:34:57: error: expected '{' before '::' token 34 | long long, unsigned long long>::value> {}; | ^~ /usr/include/llvm/Support/FormatProviders.h:43:37: error: 'is_one_of' was not declared in this scope; did you mean 'none_of'? 43 | is_one_of::value> { | ^~~~~~~~~ | none_of /usr/include/llvm/Support/FormatProviders.h:43:70: error: wrong number of template arguments (4, should be 2) 43 | is_one_of::value> { | ^ /usr/include/c++/13/type_traits:62:12: note: provided for 'template struct std::integral_constant' 62 | struct integral_constant | ^~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:43:71: error: expected '{' before '::' token 43 | is_one_of::value> { | ^~ /usr/include/llvm/Support/FormatProviders.h:62:15: error: 'optional' in namespace 'std' does not name a template type 62 | static std::optional parseNumericPrecision(StringRef Str) { | ^~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:62:10: note: 'std::optional' is only available from C++17 onwards 62 | static std::optional parseNumericPrecision(StringRef Str) { | ^~~ /usr/include/llvm/Support/FormatProviders.h: In instantiation of 'struct llvm::detail::use_pointer_formatter >': /usr/include/llvm/Support/FormatProviders.h:219:33: recursively required by substitution of 'template struct llvm::format_provider::value, void>::type> [with T = std::__cxx11::basic_string]' /usr/include/llvm/Support/FormatProviders.h:219:33: required from here /usr/include/llvm/Support/FormatProviders.h:54:63: error: incomplete type 'llvm::detail::is_cstring >' used in nested name specifier 54 | !is_cstring::value> {}; | ^~~~~ /usr/include/llvm/Support/FormatProviders.h: In instantiation of 'struct llvm::detail::use_pointer_formatter': /usr/include/llvm/Support/FormatProviders.h:241:27: recursively required by substitution of 'template struct llvm::format_provider::value, void>::type> [with T = int]' /usr/include/llvm/Support/FormatProviders.h:241:27: required from here /usr/include/llvm/Support/FormatProviders.h:54:63: error: incomplete type 'llvm::detail::is_cstring' used in nested name specifier /usr/include/llvm/Support/FormatProviders.h: In static member function 'static void llvm::format_provider::value, void>::type>::format(const char&, llvm::raw_ostream&, llvm::StringRef)': /usr/include/llvm/Support/FormatProviders.h:241:29: error: 'format' is not a member of 'llvm::format_provider' 241 | format_provider::format(X, Stream, Style); | ^~~~~~ /usr/include/llvm/Support/FormatProviders.h: In static member function 'static void llvm::format_provider::value, void>::type>::format(const T&, llvm::raw_ostream&, llvm::StringRef)': /usr/include/llvm/Support/FormatProviders.h:315:10: error: 'optional' is not a member of 'std' 315 | std::optional Precision = parseNumericPrecision(Style); | ^~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:315:10: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/FormatProviders.h:315:25: error: expected primary-expression before '>' token 315 | std::optional Precision = parseNumericPrecision(Style); | ^ /usr/include/llvm/Support/FormatProviders.h:315:27: error: 'Precision' was not declared in this scope 315 | std::optional Precision = parseNumericPrecision(Style); | ^~~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:315:39: error: there are no arguments to 'parseNumericPrecision' that depend on a template parameter, so a declaration of 'parseNumericPrecision' must be available [-fpermissive] 315 | std::optional Precision = parseNumericPrecision(Style); | ^~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/llvm/Support/Error.h:18, from /usr/include/llvm/Support/FileSystem.h:34: /usr/include/llvm/ADT/StringExtras.h: In function 'std::string llvm::toString(const APInt&, unsigned int, bool, bool)': /usr/include/llvm/ADT/StringExtras.h:322:29: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef)' 322 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/ADT/StringExtras.h:322:29: note: candidate expects 3 arguments, 1 provided 322 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/llvm/Support/Error.h:26: /usr/include/llvm/Support/Format.h: At global scope: /usr/include/llvm/Support/Format.h:83:22: error: 'is_scalar_v' is not a member of 'std'; did you mean 'is_scalar'? 83 | static_assert(std::is_scalar_v, | ^~~~~~~~~~~ | is_scalar /usr/include/llvm/Support/Format.h:83:37: error: expected primary-expression before '>' token 83 | static_assert(std::is_scalar_v, | ^ /usr/include/llvm/Support/Format.h:83:38: error: expected primary-expression before ',' token 83 | static_assert(std::is_scalar_v, | ^ /usr/include/llvm/Support/Format.h:219:8: error: 'optional' in namespace 'std' does not name a template type 219 | std::optional FirstByteOffset; | ^~~~~~~~ /usr/include/llvm/Support/Format.h:219:3: note: 'std::optional' is only available from C++17 onwards 219 | std::optional FirstByteOffset; | ^~~ /usr/include/llvm/Support/Format.h:228:57: error: 'std::optional' has not been declared 228 | FormattedBytes(ArrayRef B, uint32_t IL, std::optional O, | ^~~~~~~~ /usr/include/llvm/Support/Format.h:228:65: error: expected ',' or '...' before '<' token 228 | FormattedBytes(ArrayRef B, uint32_t IL, std::optional O, | ^ /usr/include/llvm/Support/Format.h: In constructor 'llvm::FormattedBytes::FormattedBytes(llvm::ArrayRef, uint32_t, int)': /usr/include/llvm/Support/Format.h:230:19: error: class 'llvm::FormattedBytes' does not have any field named 'FirstByteOffset' 230 | : Bytes(B), FirstByteOffset(O), IndentLevel(IL), NumPerLine(NPL), | ^~~~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:230:35: error: 'O' was not declared in this scope 230 | : Bytes(B), FirstByteOffset(O), IndentLevel(IL), NumPerLine(NPL), | ^ /usr/include/llvm/Support/Format.h:230:67: error: 'NPL' was not declared in this scope 230 | : Bytes(B), FirstByteOffset(O), IndentLevel(IL), NumPerLine(NPL), | ^~~ /usr/include/llvm/Support/Format.h:231:23: error: 'BGS' was not declared in this scope 231 | ByteGroupSize(BGS), Upper(U), ASCII(A) { | ^~~ /usr/include/llvm/Support/Format.h:231:35: error: 'U' was not declared in this scope 231 | ByteGroupSize(BGS), Upper(U), ASCII(A) { | ^ /usr/include/llvm/Support/Format.h:231:45: error: 'A' was not declared in this scope 231 | ByteGroupSize(BGS), Upper(U), ASCII(A) { | ^ /usr/include/llvm/Support/Format.h: At global scope: /usr/include/llvm/Support/Format.h:240:19: error: 'std::optional' has not been declared 240 | std::optional FirstByteOffset = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/Format.h:240:27: error: expected ',' or '...' before '<' token 240 | std::optional FirstByteOffset = std::nullopt, | ^ /usr/include/llvm/Support/Format.h: In function 'llvm::FormattedBytes llvm::format_bytes(ArrayRef, int)': /usr/include/llvm/Support/Format.h:243:32: error: 'IndentLevel' was not declared in this scope 243 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~ /usr/include/llvm/Support/Format.h:243:45: error: 'FirstByteOffset' was not declared in this scope 243 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:243:62: error: 'NumPerLine' was not declared in this scope 243 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~ /usr/include/llvm/Support/Format.h:244:25: error: 'ByteGroupSize' was not declared in this scope 244 | ByteGroupSize, Upper, false); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:244:40: error: 'Upper' was not declared in this scope; did you mean 'llvm::HexPrintStyle::Upper'? 244 | ByteGroupSize, Upper, false); | ^~~~~ | llvm::HexPrintStyle::Upper /usr/include/llvm/Support/NativeFormatting.h:22:28: note: 'llvm::HexPrintStyle::Upper' declared here 22 | enum class HexPrintStyle { Upper, Lower, PrefixUpper, PrefixLower }; | ^~~~~ /usr/include/llvm/Support/Format.h: At global scope: /usr/include/llvm/Support/Format.h:249:30: error: 'std::optional' has not been declared 249 | std::optional FirstByteOffset = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/Format.h:249:38: error: expected ',' or '...' before '<' token 249 | std::optional FirstByteOffset = std::nullopt, | ^ /usr/include/llvm/Support/Format.h: In function 'llvm::FormattedBytes llvm::format_bytes_with_ascii(ArrayRef, int)': /usr/include/llvm/Support/Format.h:252:32: error: 'IndentLevel' was not declared in this scope 252 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~ /usr/include/llvm/Support/Format.h:252:45: error: 'FirstByteOffset' was not declared in this scope 252 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:252:62: error: 'NumPerLine' was not declared in this scope 252 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~ /usr/include/llvm/Support/Format.h:253:25: error: 'ByteGroupSize' was not declared in this scope 253 | ByteGroupSize, Upper, true); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:253:40: error: 'Upper' was not declared in this scope; did you mean 'llvm::HexPrintStyle::Upper'? 253 | ByteGroupSize, Upper, true); | ^~~~~ | llvm::HexPrintStyle::Upper /usr/include/llvm/Support/NativeFormatting.h:22:28: note: 'llvm::HexPrintStyle::Upper' declared here 22 | enum class HexPrintStyle { Upper, Lower, PrefixUpper, PrefixLower }; | ^~~~~ /usr/include/llvm/Support/Error.h: At global scope: /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:59: error: template argument 1 is invalid 512 | std::enable_if_t> * = nullptr) | ^ /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:60: error: template argument 1 is invalid 512 | std::enable_if_t> * = nullptr) | ^~ /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:60: error: template argument 1 is invalid 512 | std::enable_if_t> * = nullptr) | ^~ /usr/include/llvm/Support/Error.h:512:17: error: 'std::enable_if_t' is not a type 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~ /usr/include/llvm/Support/Error.h:512:28: error: expected ',' or '...' before '<' token 512 | std::enable_if_t> * = nullptr) | ^ /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:59: error: template argument 1 is invalid 530 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:60: error: template argument 1 is invalid 530 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:60: error: template argument 1 is invalid 530 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:530:17: error: 'std::enable_if_t' is not a type 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~ /usr/include/llvm/Support/Error.h:530:28: error: expected ',' or '...' before '<' token 530 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:539:30: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:539:55: error: template argument 1 is invalid 539 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:539:30: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:539:56: error: template argument 1 is invalid 539 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:539:30: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:539:56: error: template argument 1 is invalid 539 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:539:12: error: 'std::enable_if_t' is not a type 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~ /usr/include/llvm/Support/Error.h:539:23: error: expected ',' or '...' before '<' token 539 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:537:12: error: 'template template llvm::Expected::Expected(llvm::Expected&&, int)' cannot be overloaded with 'template template llvm::Expected::Expected(llvm::Expected&&, int)' 537 | explicit Expected( | ^~~~~~~~ /usr/include/llvm/Support/Error.h:529:3: note: previous declaration 'template template llvm::Expected::Expected(llvm::Expected&&, int)' 529 | Expected(Expected &&Other, | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1054:28: error: 'optional' in namespace 'std' does not name a template type 1054 | template std::optional expectedToOptional(Expected &&E) { | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1054:23: note: 'std::optional' is only available from C++17 onwards 1054 | template std::optional expectedToOptional(Expected &&E) { | ^~~ /usr/include/llvm/Support/Error.h:1061:28: error: 'optional' in namespace 'std' does not name a template type 1061 | template std::optional expectedToStdOptional(Expected &&E) { | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1061:23: note: 'std::optional' is only available from C++17 onwards 1061 | template std::optional expectedToStdOptional(Expected &&E) { | ^~~ /usr/include/llvm/Support/Error.h:1301:34: error: 'std::optional' has not been declared 1301 | FileError(const Twine &F, std::optional LineNum, | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1301:42: error: expected ',' or '...' before '<' token 1301 | FileError(const Twine &F, std::optional LineNum, | ^ /usr/include/llvm/Support/Error.h:1309:43: error: 'std::optional' has not been declared 1309 | static Error build(const Twine &F, std::optional Line, Error E) { | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1309:51: error: expected ',' or '...' before '<' token 1309 | static Error build(const Twine &F, std::optional Line, Error E) { | ^ /usr/include/llvm/Support/Error.h:1321:8: error: 'optional' in namespace 'std' does not name a template type 1321 | std::optional Line; | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1321:3: note: 'std::optional' is only available from C++17 onwards 1321 | std::optional Line; | ^~~ /usr/include/llvm/Support/Error.h: In member function 'virtual void llvm::FileError::log(llvm::raw_ostream&) const': /usr/include/llvm/Support/Error.h:1279:9: error: 'Line' was not declared in this scope 1279 | if (Line) | ^~~~ In file included from /usr/include/c++/13/cassert:44, from /usr/include/llvm/Support/Error.h:28: /usr/include/llvm/Support/Error.h: In constructor 'llvm::FileError::FileError(const llvm::Twine&, int)': /usr/include/llvm/Support/Error.h:1303:5: error: 'E' was not declared in this scope 1303 | assert(E && "Cannot create FileError from Error success value."); | ^~~~~~ /usr/include/llvm/Support/Error.h:1306:5: error: 'Line' was not declared in this scope 1306 | Line = std::move(LineNum); | ^~~~ /usr/include/llvm/Support/Error.h:1306:22: error: 'LineNum' was not declared in this scope 1306 | Line = std::move(LineNum); | ^~~~~~~ /usr/include/llvm/Support/Error.h: In static member function 'static llvm::Error llvm::FileError::build(const llvm::Twine&, int)': /usr/include/llvm/Support/Error.h:1311:31: error: 'E' was not declared in this scope 1311 | handleAllErrors(std::move(E), | ^ /usr/include/llvm/Support/Error.h:1317:53: error: 'Line' was not declared in this scope 1317 | std::unique_ptr(new FileError(F, Line, std::move(Payload)))); | ^~~~ /usr/include/llvm/Support/Error.h: In function 'llvm::Error llvm::createFileError(const Twine&, Error)': /usr/include/llvm/Support/Error.h:1328:35: error: 'optional' is not a member of 'std' 1328 | return FileError::build(F, std::optional(), std::move(E)); | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1328:35: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Error.h:1328:50: error: expected primary-expression before '>' token 1328 | return FileError::build(F, std::optional(), std::move(E)); | ^ /usr/include/llvm/Support/Error.h:1328:52: error: expected primary-expression before ')' token 1328 | return FileError::build(F, std::optional(), std::move(E)); | ^ /usr/include/llvm/Support/Error.h: In function 'llvm::Error llvm::createFileError(const Twine&, size_t, Error)': /usr/include/llvm/Support/Error.h:1334:35: error: 'optional' is not a member of 'std' 1334 | return FileError::build(F, std::optional(Line), std::move(E)); | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1334:35: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Error.h:1334:50: error: expected primary-expression before '>' token 1334 | return FileError::build(F, std::optional(Line), std::move(E)); | ^ In file included from /usr/include/llvm/Support/SourceMgr.h:19, from /usr/include/llvm/Support/VirtualFileSystem.h:26, from /usr/include/clang/Basic/FileManager.h:30: /usr/include/llvm/Support/MemoryBuffer.h: At global scope: /usr/include/llvm/Support/MemoryBuffer.h:100:16: error: 'std::optional' has not been declared 100 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:100:24: error: expected ',' or '...' before '<' token 100 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:114:25: error: 'std::optional' has not been declared 114 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:114:33: error: expected ',' or '...' before '<' token 114 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:128:20: error: 'std::optional' has not been declared 128 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:128:28: error: expected ',' or '...' before '<' token 128 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:152:23: error: 'std::optional' has not been declared 152 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:152:31: error: expected ',' or '...' before '<' token 152 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:158:21: error: 'std::optional' has not been declared 158 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:158:29: error: expected ',' or '...' before '<' token 158 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:100:11: error: default argument missing for parameter 5 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getFile(const llvm::Twine&, bool, bool, bool, int)' 100 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:98:39: note: ...following parameter 2 which has a default argument 98 | getFile(const Twine &Filename, bool IsText = false, | ~~~~~^~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:114:20: error: default argument missing for parameter 6 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getOpenFileSlice(llvm::sys::fs::file_t, const llvm::Twine&, uint64_t, int64_t, bool, int)' 114 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:113:41: note: ...following parameter 5 which has a default argument 113 | int64_t Offset, bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:128:15: error: default argument missing for parameter 6 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getOpenFile(llvm::sys::fs::file_t, const llvm::Twine&, uint64_t, bool, bool, int)' 128 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:127:20: note: ...following parameter 4 which has a default argument 127 | bool RequiresNullTerminator = true, bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:152:18: error: default argument missing for parameter 4 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getFileOrSTDIN(const llvm::Twine&, bool, bool, int)' 152 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:150:46: note: ...following parameter 2 which has a default argument 150 | getFileOrSTDIN(const Twine &Filename, bool IsText = false, | ~~~~~^~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:158:16: error: default argument missing for parameter 5 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getFileSlice(const llvm::Twine&, uint64_t, uint64_t, bool, int)' 158 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:157:21: note: ...following parameter 4 which has a default argument 157 | bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:204:16: error: 'std::optional' has not been declared 204 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:204:24: error: expected ',' or '...' before '<' token 204 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:210:21: error: 'std::optional' has not been declared 210 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:210:29: error: expected ',' or '...' before '<' token 210 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:220:30: error: 'std::optional' has not been declared 220 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:220:38: error: expected ',' or '...' before '<' token 220 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:204:11: error: default argument missing for parameter 3 of 'static llvm::ErrorOr > llvm::WritableMemoryBuffer::getFile(const llvm::Twine&, bool, int)' 204 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:203:39: note: ...following parameter 2 which has a default argument 203 | getFile(const Twine &Filename, bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:210:16: error: default argument missing for parameter 5 of 'static llvm::ErrorOr > llvm::WritableMemoryBuffer::getFileSlice(const llvm::Twine&, uint64_t, uint64_t, bool, int)' 210 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:209:21: note: ...following parameter 4 which has a default argument 209 | bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:220:25: error: default argument missing for parameter 3 of 'static std::unique_ptr llvm::WritableMemoryBuffer::getNewUninitMemBuffer(size_t, const llvm::Twine&, int)' 220 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:219:51: note: ...following parameter 2 which has a default argument 219 | getNewUninitMemBuffer(size_t Size, const Twine &BufferName = "", | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ In file included from /usr/include/llvm/Support/SourceMgr.h:20: /usr/include/llvm/Support/SMLoc.h:53:11: error: invalid use of '::' 53 | SMRange(std::nullopt_t) {} | ^~~ /usr/include/llvm/Support/SMLoc.h:53:28: error: expected ';' at end of member declaration 53 | SMRange(std::nullopt_t) {} | ^ | ; /usr/include/llvm/Support/SourceMgr.h: In constructor 'llvm::SMDiagnostic::SMDiagnostic(llvm::StringRef, llvm::SourceMgr::DiagKind, llvm::StringRef)': /usr/include/llvm/Support/SourceMgr.h:297:9: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/SourceMgr.h:297:9: note: candidate expects 3 arguments, 1 provided 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/SourceMgr.h:297:66: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/SourceMgr.h:297:66: note: candidate expects 3 arguments, 1 provided 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/VirtualFileSystem.h: At global scope: /usr/include/llvm/Support/VirtualFileSystem.h:512:21: error: 'std::optional' has not been declared 512 | std::optional User, std::optional Group, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:512:29: error: expected ',' or '...' before '<' token 512 | std::optional User, std::optional Group, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:536:21: error: 'std::optional' has not been declared 536 | std::optional User = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:536:29: error: expected ',' or '...' before '<' token 536 | std::optional User = std::nullopt, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:534:8: error: 'bool llvm::vfs::InMemoryFileSystem::addFile(const llvm::Twine&, time_t, std::unique_ptr, int)' cannot be overloaded with 'bool llvm::vfs::InMemoryFileSystem::addFile(const llvm::Twine&, time_t, std::unique_ptr, int)' 534 | bool addFile(const Twine &Path, time_t ModificationTime, | ^~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:510:8: note: previous declaration 'bool llvm::vfs::InMemoryFileSystem::addFile(const llvm::Twine&, time_t, std::unique_ptr, int)' 510 | bool addFile(const Twine &Path, time_t ModificationTime, | ^~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:567:24: error: 'std::optional' has not been declared 567 | std::optional User = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:567:32: error: expected ',' or '...' before '<' token 567 | std::optional User = std::nullopt, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:579:26: error: 'std::optional' has not been declared 579 | std::optional User = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:579:34: error: expected ',' or '...' before '<' token 579 | std::optional User = std::nullopt, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:882:10: error: 'optional' in namespace 'std' does not name a template type 882 | std::optional ExternalRedirect; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:882:5: note: 'std::optional' is only available from C++17 onwards 882 | std::optional ExternalRedirect; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h:891:10: error: 'optional' in namespace 'std' does not name a template type 891 | std::optional getExternalRedirect() const { | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:891:5: note: 'std::optional' is only available from C++17 onwards 891 | std::optional getExternalRedirect() const { | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h: In constructor 'llvm::vfs::RedirectingFileSystem::Entry::Entry(llvm::vfs::RedirectingFileSystem::EntryKind, llvm::StringRef)': /usr/include/llvm/Support/VirtualFileSystem.h:776:51: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 776 | Entry(EntryKind K, StringRef Name) : Kind(K), Name(Name) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/VirtualFileSystem.h:776:51: note: candidate expects 3 arguments, 1 provided 776 | Entry(EntryKind K, StringRef Name) : Kind(K), Name(Name) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/VirtualFileSystem.h: In constructor 'llvm::vfs::RedirectingFileSystem::RemapEntry::RemapEntry(llvm::vfs::RedirectingFileSystem::EntryKind, llvm::StringRef, llvm::StringRef, llvm::vfs::RedirectingFileSystem::NameKind)': /usr/include/llvm/Support/VirtualFileSystem.h:824:27: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 824 | : Entry(K, Name), ExternalContentsPath(ExternalContentsPath), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/VirtualFileSystem.h:824:27: note: candidate expects 3 arguments, 1 provided 824 | : Entry(K, Name), ExternalContentsPath(ExternalContentsPath), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/VirtualFileSystem.h: At global scope: /usr/include/llvm/Support/VirtualFileSystem.h:1060:8: error: 'optional' in namespace 'std' does not name a template type 1060 | std::optional IsCaseSensitive; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:1060:3: note: 'std::optional' is only available from C++17 onwards 1060 | std::optional IsCaseSensitive; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h:1061:8: error: 'optional' in namespace 'std' does not name a template type 1061 | std::optional IsOverlayRelative; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:1061:3: note: 'std::optional' is only available from C++17 onwards 1061 | std::optional IsOverlayRelative; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h:1062:8: error: 'optional' in namespace 'std' does not name a template type 1062 | std::optional UseExternalNames; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:1062:3: note: 'std::optional' is only available from C++17 onwards 1062 | std::optional UseExternalNames; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h: In member function 'void llvm::vfs::YAMLVFSWriter::setCaseSensitivity(bool)': /usr/include/llvm/Support/VirtualFileSystem.h:1074:5: error: 'IsCaseSensitive' was not declared in this scope; did you mean 'CaseSensitive'? 1074 | IsCaseSensitive = CaseSensitive; | ^~~~~~~~~~~~~~~ | CaseSensitive /usr/include/llvm/Support/VirtualFileSystem.h: In member function 'void llvm::vfs::YAMLVFSWriter::setUseExternalNames(bool)': /usr/include/llvm/Support/VirtualFileSystem.h:1077:48: error: 'UseExternalNames' was not declared in this scope; did you mean 'setUseExternalNames'? 1077 | void setUseExternalNames(bool UseExtNames) { UseExternalNames = UseExtNames; } | ^~~~~~~~~~~~~~~~ | setUseExternalNames /usr/include/llvm/Support/VirtualFileSystem.h: In member function 'void llvm::vfs::YAMLVFSWriter::setOverlayDir(llvm::StringRef)': /usr/include/llvm/Support/VirtualFileSystem.h:1080:5: error: 'IsOverlayRelative' was not declared in this scope 1080 | IsOverlayRelative = true; | ^~~~~~~~~~~~~~~~~ /usr/include/clang/Basic/FileManager.h: In member function 'clang::OptionalDirectoryEntryRef clang::FileManager::getOptionalDirectoryRef(llvm::StringRef, bool)': /usr/include/clang/Basic/FileManager.h:171:18: error: 'expectedToOptional' is not a member of 'llvm' 171 | return llvm::expectedToOptional(getDirectoryRef(DirName, CacheFailure)); | ^~~~~~~~~~~~~~~~~~ /usr/include/clang/Basic/FileManager.h: In member function 'clang::OptionalFileEntryRef clang::FileManager::getOptionalFileRef(llvm::StringRef, bool, bool)': /usr/include/clang/Basic/FileManager.h:237:18: error: 'expectedToOptional' is not a member of 'llvm' 237 | return llvm::expectedToOptional( | ^~~~~~~~~~~~~~~~~~ /usr/include/clang/Basic/SourceManager.h: At global scope: /usr/include/clang/Basic/SourceManager.h:215:8: error: 'optional' in namespace 'std' does not name a template type 215 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:215:3: note: 'std::optional' is only available from C++17 onwards 215 | std::optional | ^~~ /usr/include/clang/Basic/SourceManager.h:238:8: error: 'optional' in namespace 'std' does not name a template type 238 | std::optional getBufferIfLoaded() const { | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:238:3: note: 'std::optional' is only available from C++17 onwards 238 | std::optional getBufferIfLoaded() const { | ^~~ /usr/include/clang/Basic/SourceManager.h:246:8: error: 'optional' in namespace 'std' does not name a template type 246 | std::optional getBufferDataIfLoaded() const { | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:246:3: note: 'std::optional' is only available from C++17 onwards 246 | std::optional getBufferDataIfLoaded() const { | ^~~ /usr/include/clang/Basic/SourceManager.h:261:30: error: 'std::optional' has not been declared 261 | void setUnownedBuffer(std::optional B) { | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:261:38: error: expected ',' or '...' before '<' token 261 | void setUnownedBuffer(std::optional B) { | ^ /usr/include/clang/Basic/SourceManager.h: In constructor 'clang::SrcMgr::ContentCache::ContentCache()': /usr/include/clang/Basic/SourceManager.h:183:24: error: 'nullopt' is not a member of 'std' 183 | : OrigEntry(std::nullopt), ContentsEntry(nullptr), | ^~~~~~~ /usr/include/clang/Basic/SourceManager.h:183:24: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/SourceManager.h: In member function 'void clang::SrcMgr::ContentCache::setUnownedBuffer(int)': /usr/include/clang/Basic/SourceManager.h:263:9: error: 'B' was not declared in this scope 263 | if (B) | ^ /usr/include/clang/Basic/SourceManager.h: At global scope: /usr/include/clang/Basic/SourceManager.h:944:8: error: 'optional' in namespace 'std' does not name a template type 944 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:944:3: note: 'std::optional' is only available from C++17 onwards 944 | std::optional | ^~~ /usr/include/clang/Basic/SourceManager.h:1026:8: error: 'optional' in namespace 'std' does not name a template type 1026 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1026:3: note: 'std::optional' is only available from C++17 onwards 1026 | std::optional | ^~~ /usr/include/clang/Basic/SourceManager.h:1063:8: error: 'optional' in namespace 'std' does not name a template type 1063 | std::optional getNonBuiltinFilenameForID(FileID FID) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1063:3: note: 'std::optional' is only available from C++17 onwards 1063 | std::optional getNonBuiltinFilenameForID(FileID FID) const; | ^~~ /usr/include/clang/Basic/SourceManager.h:1082:8: error: 'optional' in namespace 'std' does not name a template type 1082 | std::optional getBufferDataOrNone(FileID FID) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1082:3: note: 'std::optional' is only available from C++17 onwards 1082 | std::optional getBufferDataOrNone(FileID FID) const; | ^~~ /usr/include/clang/Basic/SourceManager.h:1088:8: error: 'optional' in namespace 'std' does not name a template type 1088 | std::optional getBufferDataIfLoaded(FileID FID) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1088:3: note: 'std::optional' is only available from C++17 onwards 1088 | std::optional getBufferDataIfLoaded(FileID FID) const; | ^~~ /usr/include/clang/Basic/SourceManager.h:1699:39: error: 'std::optional' has not been declared 1699 | std::optional MaxNotes = 32) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1699:47: error: expected ',' or '...' before '<' token 1699 | std::optional MaxNotes = 32) const; | ^ /usr/include/clang/Basic/SourceManager.h: In member function 'llvm::MemoryBufferRef clang::SourceManager::getMemoryBufferForFileOrFake(const clang::FileEntry*)': /usr/include/clang/Basic/SourceManager.h:951:18: error: 'getMemoryBufferForFileOrNone' was not declared in this scope; did you mean 'getMemoryBufferForFileOrFake'? 951 | if (auto B = getMemoryBufferForFileOrNone(File)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ | getMemoryBufferForFileOrFake /usr/include/clang/Basic/SourceManager.h: In member function 'llvm::MemoryBufferRef clang::SourceManager::getBufferOrFake(clang::FileID, clang::SourceLocation) const': /usr/include/clang/Basic/SourceManager.h:1040:18: error: 'getBufferOrNone' was not declared in this scope; did you mean 'getBufferOrFake'? 1040 | if (auto B = getBufferOrNone(FID, Loc)) | ^~~~~~~~~~~~~~~ | getBufferOrFake /usr/include/clang/Basic/SourceManager.h: In member function 'clang::OptionalFileEntryRef clang::SourceManager::getFileEntryRefForID(clang::FileID) const': /usr/include/clang/Basic/SourceManager.h:1056:17: error: 'nullopt' is not a member of 'std' 1056 | return std::nullopt; | ^~~~~~~ /usr/include/clang/Basic/SourceManager.h:1056:17: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/Support/MathExtras.h: In instantiation of 'constexpr size_t llvm::CTLog2() [with long unsigned int kValue = 8; size_t = long unsigned int]': /usr/include/llvm/Support/Alignment.h:97:56: required from 'static constexpr llvm::Align llvm::Align::Constant() [with long unsigned int kValue = 8]' /usr/include/llvm/Support/Alignment.h:103:49: required from 'static constexpr llvm::Align llvm::Align::Of() [with T = const clang::Expr*]' /usr/include/llvm/Support/TrailingObjects.h:168:73: required from 'static NextTy* llvm::trailing_objects_internal::TrailingObjectsImpl::getTrailingObjectsImpl(BaseTy*, llvm::trailing_objects_internal::TrailingObjectsBase::OverloadToken) [with int Align = 8; BaseTy = clang::ConstantArrayType; TopTrailingObj = llvm::TrailingObjects; PrevTy = clang::ConstantArrayType; NextTy = const clang::Expr*; MoreTys = {}]' /usr/include/llvm/Support/TrailingObjects.h:301:40: required from 'T* llvm::TrailingObjects::getTrailingObjects() [with T = const clang::Expr*; BaseTy = clang::ConstantArrayType; TrailingTys = {const clang::Expr*}]' /usr/include/clang/AST/Type.h:3077:39: required from here /usr/include/llvm/Support/MathExtras.h:399:28: error: non-constant condition for static assertion 399 | static_assert(kValue > 0 && llvm::isPowerOf2_64(kValue), | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MathExtras.h:399:50: in 'constexpr' expansion of 'llvm::isPowerOf2_64(8)' /usr/include/llvm/Support/MathExtras.h:399:28: error: 'constexpr' call flows off the end of the function /usr/include/llvm/Support/MathExtras.h: In instantiation of 'constexpr size_t llvm::CTLog2() [with long unsigned int kValue = 4; size_t = long unsigned int]': /usr/include/llvm/Support/MathExtras.h:401:32: required from 'static const NextTy* llvm::trailing_objects_internal::TrailingObjectsImpl::getTrailingObjectsImpl(const BaseTy*, llvm::trailing_objects_internal::TrailingObjectsBase::OverloadToken) [with int Align = 8; BaseTy = clang::ConstantArrayType; TopTrailingObj = llvm::TrailingObjects; PrevTy = clang::ConstantArrayType; NextTy = const clang::Expr*; MoreTys = {}]' /usr/include/llvm/Support/TrailingObjects.h:289:40: required from 'const T* llvm::TrailingObjects::getTrailingObjects() const [with T = const clang::Expr*; BaseTy = clang::ConstantArrayType; TrailingTys = {const clang::Expr*}]' /usr/include/clang/AST/Type.h:3089:51: required from here /usr/include/llvm/Support/TrailingObjects.h:154:43: in 'constexpr' expansion of 'llvm::Align::Of()' /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:399:28: error: non-constant condition for static assertion /usr/include/llvm/Support/TrailingObjects.h:154:43: in 'constexpr' expansion of 'llvm::Align::Of()' /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:399:50: in 'constexpr' expansion of 'llvm::isPowerOf2_64(4)' /usr/include/llvm/Support/MathExtras.h:399:28: error: 'constexpr' call flows off the end of the function /usr/include/llvm/Support/MathExtras.h: In instantiation of 'constexpr size_t llvm::CTLog2() [with long unsigned int kValue = 2; size_t = long unsigned int]': /usr/include/llvm/Support/MathExtras.h:401:32: required from 'static constexpr llvm::Align llvm::Align::Of() [with T = clang::FunctionType::FunctionTypeExtraBitfields]' /usr/include/llvm/Support/TrailingObjects.h:154:43: required from 'static const NextTy* llvm::trailing_objects_internal::TrailingObjectsImpl::getTrailingObjectsImpl(const BaseTy*, llvm::trailing_objects_internal::TrailingObjectsBase::OverloadToken) [with int Align = 8; BaseTy = clang::FunctionProtoType; TopTrailingObj = llvm::TrailingObjects; PrevTy = clang::SourceLocation; NextTy = clang::FunctionType::FunctionTypeExtraBitfields; MoreTys = {clang::FunctionType::ExceptionType, clang::Expr*, clang::FunctionDecl*, clang::FunctionType::ExtParameterInfo, clang::Qualifiers}]' /usr/include/llvm/Support/TrailingObjects.h:289:40: required from 'const T* llvm::TrailingObjects::getTrailingObjects() const [with T = clang::FunctionType::FunctionTypeExtraBitfields; BaseTy = clang::FunctionProtoType; TrailingTys = {clang::QualType, clang::SourceLocation, clang::FunctionType::FunctionTypeExtraBitfields, clang::FunctionType::ExceptionType, clang::Expr*, clang::FunctionDecl*, clang::FunctionType::ExtParameterInfo, clang::Qualifiers}]' /usr/include/clang/AST/Type.h:4302:64: required from here /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:401:32: in 'constexpr' expansion of 'llvm::CTLog2<4>()' /usr/include/llvm/Support/MathExtras.h:399:28: error: non-constant condition for static assertion /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:401:32: in 'constexpr' expansion of 'llvm::CTLog2<4>()' /usr/include/llvm/Support/MathExtras.h:399:50: in 'constexpr' expansion of 'llvm::isPowerOf2_64(2)' /usr/include/llvm/Support/MathExtras.h:399:28: error: 'constexpr' call flows off the end of the function /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'llvm::mapped_iterator::mapped_iterator(ItTy, FuncTy) [with ItTy = const clang::ParmVarDecl* const*; FuncTy = clang::ObjCMethodDecl::GetTypeFn; ReferenceTy = clang::QualType]': /usr/include/llvm/ADT/STLExtras.h:430:10: required from 'llvm::mapped_iterator llvm::map_iterator(ItTy, FuncTy) [with ItTy = const clang::ParmVarDecl* const*; FuncTy = clang::ObjCMethodDecl::GetTypeFn; decltype (declval()((* declval()))) = clang::QualType]' /usr/include/clang/AST/DeclObjC.h:402:30: required from here /usr/include/llvm/ADT/STLExtras.h:414:61: error: cannot convert 'std::remove_reference::type' {aka 'clang::ObjCMethodDecl::GetTypeFn'} to 'int' in initialization 414 | : mapped_iterator::iterator_adaptor_base(std::move(U)), F(std::move(F)) {} | ^~~~~~~~~~~~~~~ make[2]: *** [clang_delta/CMakeFiles/clang_delta.dir/build.make:107: clang_delta/CMakeFiles/clang_delta.dir/CallExprToValue.cpp.o] Error 1 make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' make[2]: Entering directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' [ 14%] Building CXX object clang_delta/CMakeFiles/clang_delta.dir/BinOpSimplification.cpp.o cd /builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu/clang_delta && /usr/bin/g++ -DHAVE_CONFIG_H -I/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu -I/builddir/build/BUILD/cvise-2.4.0/clang_delta -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -std=c++14 -fno-rtti -fno-strict-aliasing -Wall -Wextra -Wno-unused-parameter -fvisibility-inlines-hidden -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -MD -MT clang_delta/CMakeFiles/clang_delta.dir/BinOpSimplification.cpp.o -MF CMakeFiles/clang_delta.dir/BinOpSimplification.cpp.o.d -o CMakeFiles/clang_delta.dir/BinOpSimplification.cpp.o -c /builddir/build/BUILD/cvise-2.4.0/clang_delta/BinOpSimplification.cpp In file included from /builddir/build/BUILD/cvise-2.4.0/clang_delta/BinOpSimplification.h:15, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/BinOpSimplification.cpp:15: /usr/include/llvm/ADT/SmallVector.h: In static member function 'static void llvm::SmallVectorTemplateBase >::uninitialized_move(It1, It1, It2)': /usr/include/llvm/ADT/SmallVector.h:352:10: error: 'uninitialized_move' is not a member of 'std'; did you mean 'uninitialized_copy'? 352 | std::uninitialized_move(I, E, Dest); | ^~~~~~~~~~~~~~~~~~ | uninitialized_copy In file included from /usr/include/clang/Basic/LLVM.h:21, from /usr/include/clang/Rewrite/Core/Rewriter.h:17, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/Transformation.h:19, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/BinOpSimplification.h:16: /usr/include/llvm/Support/Casting.h: At global scope: /usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std' 266 | struct CastIsPossible> { | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:266:41: error: template argument 2 is invalid 266 | struct CastIsPossible> { | ^~~~ /usr/include/llvm/Support/Casting.h:266:45: error: expected unqualified-id before '>' token 266 | struct CastIsPossible> { | ^~ /usr/include/llvm/Support/Casting.h:369:16: error: 'optional' is not a member of 'std' 369 | std::optional, From, | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:369:16: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:369:16: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:369:16: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:369:27: error: wrong number of template arguments (1, should be 3) 369 | std::optional, From, | ^ /usr/include/llvm/Support/Casting.h:310:8: note: provided for 'template struct llvm::DefaultDoCastIfPossible' 310 | struct DefaultDoCastIfPossible { | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/Casting.h:370:65: error: expected '{' before '>' token 370 | detail::SelfType>> { | ^ /usr/include/llvm/Support/Casting.h:540:26: error: 'optional' is not a member of 'std' 540 | struct CastInfo> : public OptionalValueCast { | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:540:26: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:540:26: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:540:26: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:540:35: error: template argument 2 is invalid 540 | struct CastInfo> : public OptionalValueCast { | ^~~~ /usr/include/llvm/Support/Casting.h:540:39: error: expected unqualified-id before '>' token 540 | struct CastInfo> : public OptionalValueCast { | ^~ /usr/include/llvm/Support/Casting.h:595:10: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'? 595 | std::is_pointer_v || std::is_constructible_v; | ^~~~~~~~~~~~ | is_pointer /usr/include/llvm/Support/Casting.h:595:24: error: expected primary-expression before '>' token 595 | std::is_pointer_v || std::is_constructible_v; | ^ /usr/include/llvm/Support/Casting.h:595:26: error: expected primary-expression before '||' token 595 | std::is_pointer_v || std::is_constructible_v; | ^~ /usr/include/llvm/Support/Casting.h:595:34: error: 'is_constructible_v' is not a member of 'std'; did you mean 'is_constructible'? 595 | std::is_pointer_v || std::is_constructible_v; | ^~~~~~~~~~~~~~~~~~ | is_constructible /usr/include/llvm/Support/Casting.h:595:54: error: expected primary-expression before ',' token 595 | std::is_pointer_v || std::is_constructible_v; | ^ /usr/include/llvm/Support/Casting.h:610:50: error: 'optional' is not a member of 'std' 610 | template struct ValueIsPresent> { | ^~~~~~~~ /usr/include/llvm/Support/Casting.h:610:50: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:610:50: error: 'optional' is not a member of 'std' /usr/include/llvm/Support/Casting.h:610:50: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Casting.h:610:59: error: template argument 1 is invalid 610 | template struct ValueIsPresent> { | ^ /usr/include/llvm/Support/Casting.h:610:60: error: expected unqualified-id before '>' token 610 | template struct ValueIsPresent> { | ^~ In file included from /usr/include/clang/Basic/LLVM.h:24: /usr/include/llvm/ADT/None.h:26:14: error: 'nullopt_t' in namespace 'std' does not name a type; did you mean 'nullptr_t'? 26 | typedef std::nullopt_t NoneType; | ^~~~~~~~~ | nullptr_t /usr/include/llvm/ADT/None.h:28:23: error: 'nullopt_t' in namespace 'std' does not name a type; did you mean 'nullptr_t'? 28 | inline constexpr std::nullopt_t None = std::nullopt; | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/LLVM.h:40:47: error: 'optional' in namespace 'std' does not name a template type 40 | template using Optional = std::optional; | ^~~~~~~~ /usr/include/clang/Basic/LLVM.h:40:42: note: 'std::optional' is only available from C++17 onwards 40 | template using Optional = std::optional; | ^~~ /usr/include/clang/Basic/LLVM.h:72:15: error: 'Optional' has not been declared in 'llvm' 72 | using llvm::Optional; | ^~~~~~~~ In file included from /usr/include/llvm/ADT/StringRef.h:12, from /usr/include/clang/Basic/SourceLocation.h:18, from /usr/include/clang/Rewrite/Core/Rewriter.h:18: /usr/include/llvm/ADT/DenseMapInfo.h:294:52: error: 'variant' is not a member of 'std' 294 | template struct DenseMapInfo> { | ^~~~~~~ /usr/include/llvm/ADT/DenseMapInfo.h:294:52: note: 'std::variant' is only available from C++17 onwards /usr/include/llvm/ADT/DenseMapInfo.h:294:52: error: 'variant' is not a member of 'std' /usr/include/llvm/ADT/DenseMapInfo.h:294:52: note: 'std::variant' is only available from C++17 onwards /usr/include/llvm/ADT/DenseMapInfo.h:294:62: error: expected parameter pack before '...' 294 | template struct DenseMapInfo> { | ^~~ /usr/include/llvm/ADT/DenseMapInfo.h:294:62: error: template argument 1 is invalid /usr/include/llvm/ADT/DenseMapInfo.h:294:65: error: expected unqualified-id before '>' token 294 | template struct DenseMapInfo> { | ^~ In file included from /usr/include/llvm/ADT/STLFunctionalExtras.h:18, from /usr/include/llvm/ADT/StringRef.h:13: /usr/include/llvm/ADT/STLForwardCompat.h:46:35: error: 'optional' in namespace 'std' does not name a template type 46 | auto transformOptional(const std::optional &O, const Function &F) | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:46:30: note: 'std::optional' is only available from C++17 onwards 46 | auto transformOptional(const std::optional &O, const Function &F) | ^~~ /usr/include/llvm/ADT/STLForwardCompat.h:46:43: error: expected ',' or '...' before '<' token 46 | auto transformOptional(const std::optional &O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:47:13: error: 'optional' in namespace 'std' does not name a template type 47 | -> std::optional { | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:47:8: note: 'std::optional' is only available from C++17 onwards 47 | -> std::optional { | ^~~ /usr/include/llvm/ADT/STLForwardCompat.h:47:21: error: expected initializer before '<' token 47 | -> std::optional { | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:29: error: 'optional' is not a member of 'std' 56 | auto transformOptional(std::optional &&O, const Function &F) | ^~~~~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:56:29: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/ADT/STLForwardCompat.h:56:39: error: expected primary-expression before '>' token 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:43: error: label 'O' referenced outside of any function 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:46: error: expected primary-expression before 'const' 56 | auto transformOptional(std::optional &&O, const Function &F) | ^~~~~ /usr/include/llvm/ADT/STLForwardCompat.h:56:63: error: expression list treated as compound expression in initializer [-fpermissive] 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ /usr/include/llvm/ADT/STLForwardCompat.h:56:64: error: expected ';' before '->' token 56 | auto transformOptional(std::optional &&O, const Function &F) | ^ | ; 57 | -> std::optional { | ~~ /usr/include/llvm/ADT/StringRef.h:104:54: error: expected ')' before 'Str' 104 | /*implicit*/ constexpr StringRef(std::string_view Str) | ~ ^~~~ | ) /usr/include/llvm/ADT/StringRef.h:248:14: error: expected type-specifier 248 | operator std::string_view() const { | ^~~ /usr/include/llvm/ADT/StringRef.h: In member function 'size_t llvm::StringRef::find(char, size_t) const': /usr/include/llvm/ADT/StringRef.h:296:19: error: 'string_view' is not a member of 'std' 296 | return std::string_view(*this).find(C, From); | ^~~~~~~~~~~ /usr/include/llvm/ADT/StringRef.h:296:19: note: 'std::string_view' is only available from C++17 onwards In file included from /usr/include/llvm/Support/MathExtras.h:16, from /usr/include/llvm/ADT/BitmaskEnum.h:16, from /usr/include/clang/Basic/BitmaskEnum.h:18, from /usr/include/clang/AST/DependenceFlags.h:11, from /usr/include/clang/AST/NestedNameSpecifier.h:17, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/RewriteUtils.h:16, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/Transformation.h:20: /usr/include/llvm/ADT/bit.h: At global scope: /usr/include/llvm/ADT/bit.h:64:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'? 64 | template >> | ^~~~~~~~~~~~~ | is_integral /usr/include/llvm/ADT/bit.h:64:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'? 64 | template >> | ^~~~~~~~~~~~~ | is_integral /usr/include/llvm/ADT/bit.h:64:70: error: template argument 1 is invalid 64 | template >> | ^ /usr/include/llvm/ADT/bit.h:64:73: error: expected unqualified-id before '>' token 64 | template >> | ^ /usr/include/llvm/ADT/bit.h:109:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 109 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:109:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 109 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:109:70: error: template argument 1 is invalid 109 | template >> | ^ /usr/include/llvm/ADT/bit.h:109:73: error: expected unqualified-id before '>' token 109 | template >> | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_zero(T)': /usr/include/llvm/ADT/bit.h:180:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 180 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:180:37: error: expected primary-expression before '>' token 180 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:180:38: error: expected primary-expression before ',' token 180 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_zero(T)': /usr/include/llvm/ADT/bit.h:246:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 246 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:246:37: error: expected primary-expression before '>' token 246 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:246:38: error: expected primary-expression before ',' token 246 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_one(T)': /usr/include/llvm/ADT/bit.h:259:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 259 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:259:37: error: expected primary-expression before '>' token 259 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:259:38: error: expected primary-expression before ',' token 259 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_one(T)': /usr/include/llvm/ADT/bit.h:272:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 272 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:272:37: error: expected primary-expression before '>' token 272 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:272:38: error: expected primary-expression before ',' token 272 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'int llvm::bit_width(T)': /usr/include/llvm/ADT/bit.h:282:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 282 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:282:37: error: expected primary-expression before '>' token 282 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:282:38: error: expected primary-expression before ',' token 282 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_floor(T)': /usr/include/llvm/ADT/bit.h:292:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 292 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:292:37: error: expected primary-expression before '>' token 292 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:292:38: error: expected primary-expression before ',' token 292 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_ceil(T)': /usr/include/llvm/ADT/bit.h:307:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 307 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:307:37: error: expected primary-expression before '>' token 307 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h:307:38: error: expected primary-expression before ',' token 307 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/ADT/bit.h: At global scope: /usr/include/llvm/ADT/bit.h:348:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 348 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:348:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 348 | template >> | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/ADT/bit.h:348:70: error: template argument 1 is invalid 348 | template >> | ^ /usr/include/llvm/ADT/bit.h:348:73: error: expected unqualified-id before '>' token 348 | template >> | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countTrailingZeros(T)': /usr/include/llvm/Support/MathExtras.h:78:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 78 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:78:37: error: expected primary-expression before '>' token 78 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:78:38: error: expected primary-expression before ',' token 78 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countLeadingZeros(T)': /usr/include/llvm/Support/MathExtras.h:90:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 90 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:90:37: error: expected primary-expression before '>' token 90 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:90:38: error: expected primary-expression before ',' token 90 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_32(uint32_t)': /usr/include/llvm/Support/MathExtras.h:325:16: error: 'has_single_bit' is not a member of 'llvm' 325 | return llvm::has_single_bit(Value); | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_64(uint64_t)': /usr/include/llvm/Support/MathExtras.h:330:16: error: 'has_single_bit' is not a member of 'llvm' 330 | return llvm::has_single_bit(Value); | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countLeadingOnes(T)': /usr/include/llvm/Support/MathExtras.h:341:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 341 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:341:37: error: expected primary-expression before '>' token 341 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:341:38: error: expected primary-expression before ',' token 341 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countTrailingOnes(T)': /usr/include/llvm/Support/MathExtras.h:354:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 354 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:354:37: error: expected primary-expression before '>' token 354 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:354:38: error: expected primary-expression before ',' token 354 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h: In function 'unsigned int llvm::countPopulation(T)': /usr/include/llvm/Support/MathExtras.h:364:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 364 | static_assert(std::is_unsigned_v, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:364:37: error: expected primary-expression before '>' token 364 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:364:38: error: expected primary-expression before ',' token 364 | static_assert(std::is_unsigned_v, | ^ /usr/include/llvm/Support/MathExtras.h:366:26: error: 'popcount' is not a member of 'llvm' 366 | return (unsigned)llvm::popcount(Value); | ^~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_32(uint32_t, unsigned int&, unsigned int&)': /usr/include/llvm/Support/MathExtras.h:379:19: error: 'popcount' is not a member of 'llvm' 379 | MaskLen = llvm::popcount(Value); | ^~~~~~~~ /usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_64(uint64_t, unsigned int&, unsigned int&)': /usr/include/llvm/Support/MathExtras.h:392:19: error: 'popcount' is not a member of 'llvm' 392 | MaskLen = llvm::popcount(Value); | ^~~~~~~~ /usr/include/llvm/Support/MathExtras.h: At global scope: /usr/include/llvm/Support/MathExtras.h:620:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:620:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'? 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^~~~~~~~~~~~~ | is_unsigned /usr/include/llvm/Support/MathExtras.h:620:38: error: template argument 1 is invalid 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^ /usr/include/llvm/Support/MathExtras.h:620:39: error: expected unqualified-id before ',' token 620 | std::enable_if_t, T> SaturatingAdd(T X, T Y, T Z, | ^ In file included from /usr/include/clang/Basic/Diagnostic.h:17, from /usr/include/clang/AST/NestedNameSpecifier.h:18: /usr/include/clang/Basic/DiagnosticIDs.h:241:15: error: 'optional' in namespace 'std' does not name a template type 241 | static std::optional getGroupForWarningOption(StringRef); | ^~~~~~~~ /usr/include/clang/Basic/DiagnosticIDs.h:241:10: note: 'std::optional' is only available from C++17 onwards 241 | static std::optional getGroupForWarningOption(StringRef); | ^~~ /usr/include/clang/Basic/DiagnosticIDs.h:244:15: error: 'optional' in namespace 'std' does not name a template type 244 | static std::optional getGroupForDiag(unsigned DiagID); | ^~~~~~~~ /usr/include/clang/Basic/DiagnosticIDs.h:244:10: note: 'std::optional' is only available from C++17 onwards 244 | static std::optional getGroupForDiag(unsigned DiagID); | ^~~ In file included from /usr/include/llvm/ADT/Hashing.h:49, from /usr/include/llvm/ADT/ArrayRef.h:12, from /usr/include/clang/Basic/Diagnostic.h:21: /usr/include/llvm/Support/SwapByteOrder.h: In function 'uint16_t llvm::ByteSwap_16(uint16_t)': /usr/include/llvm/Support/SwapByteOrder.h:51:60: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_16'? 51 | inline uint16_t ByteSwap_16(uint16_t value) { return llvm::byteswap(value); } | ^~~~~~~~ | ByteSwap_16 /usr/include/llvm/Support/SwapByteOrder.h: In function 'uint32_t llvm::ByteSwap_32(uint32_t)': /usr/include/llvm/Support/SwapByteOrder.h:54:60: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_32'? 54 | inline uint32_t ByteSwap_32(uint32_t value) { return llvm::byteswap(value); } | ^~~~~~~~ | ByteSwap_32 /usr/include/llvm/Support/SwapByteOrder.h: In function 'uint64_t llvm::ByteSwap_64(uint64_t)': /usr/include/llvm/Support/SwapByteOrder.h:57:60: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 57 | inline uint64_t ByteSwap_64(uint64_t value) { return llvm::byteswap(value); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned char llvm::sys::getSwappedBytes(unsigned char)': /usr/include/llvm/Support/SwapByteOrder.h:69:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 69 | inline unsigned char getSwappedBytes(unsigned char C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'signed char llvm::sys::getSwappedBytes(signed char)': /usr/include/llvm/Support/SwapByteOrder.h:70:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 70 | inline signed char getSwappedBytes( signed char C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'char llvm::sys::getSwappedBytes(char)': /usr/include/llvm/Support/SwapByteOrder.h:71:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 71 | inline char getSwappedBytes( char C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'short unsigned int llvm::sys::getSwappedBytes(short unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:73:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 73 | inline unsigned short getSwappedBytes(unsigned short C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'short int llvm::sys::getSwappedBytes(short int)': /usr/include/llvm/Support/SwapByteOrder.h:74:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 74 | inline signed short getSwappedBytes( signed short C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned int llvm::sys::getSwappedBytes(unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:76:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 76 | inline unsigned int getSwappedBytes(unsigned int C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'int llvm::sys::getSwappedBytes(int)': /usr/include/llvm/Support/SwapByteOrder.h:77:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 77 | inline signed int getSwappedBytes( signed int C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long unsigned int llvm::sys::getSwappedBytes(long unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:79:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 79 | inline unsigned long getSwappedBytes(unsigned long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long int llvm::sys::getSwappedBytes(long int)': /usr/include/llvm/Support/SwapByteOrder.h:80:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 80 | inline signed long getSwappedBytes( signed long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long long unsigned int llvm::sys::getSwappedBytes(long long unsigned int)': /usr/include/llvm/Support/SwapByteOrder.h:82:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 82 | inline unsigned long long getSwappedBytes(unsigned long long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'long long int llvm::sys::getSwappedBytes(long long int)': /usr/include/llvm/Support/SwapByteOrder.h:83:80: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 83 | inline signed long long getSwappedBytes( signed long long C) { return llvm::byteswap(C); } | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'float llvm::sys::getSwappedBytes(float)': /usr/include/llvm/Support/SwapByteOrder.h:91:17: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 91 | out.i = llvm::byteswap(in.i); | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'double llvm::sys::getSwappedBytes(double)': /usr/include/llvm/Support/SwapByteOrder.h:101:17: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 101 | out.i = llvm::byteswap(in.i); | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/Support/SwapByteOrder.h: In function 'std::enable_if_t::value, T> llvm::sys::getSwappedBytes(T)': /usr/include/llvm/Support/SwapByteOrder.h:108:13: error: 'byteswap' is not a member of 'llvm'; did you mean 'ByteSwap_64'? 108 | llvm::byteswap(static_cast>(C))); | ^~~~~~~~ | ByteSwap_64 /usr/include/llvm/ADT/Hashing.h: At global scope: /usr/include/llvm/ADT/Hashing.h:127:55: error: 'optional' in namespace 'std' does not name a template type 127 | template hash_code hash_value(const std::optional &arg); | ^~~~~~~~ /usr/include/llvm/ADT/Hashing.h:127:50: note: 'std::optional' is only available from C++17 onwards 127 | template hash_code hash_value(const std::optional &arg); | ^~~ /usr/include/llvm/ADT/Hashing.h:127:63: error: expected ',' or '...' before '<' token 127 | template hash_code hash_value(const std::optional &arg); | ^ /usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(const std::tuple<_Elements ...>&)': /usr/include/llvm/ADT/Hashing.h:658:15: error: 'apply' is not a member of 'std' 658 | return std::apply([](const auto &...xs) { return hash_combine(xs...); }, arg); | ^~~~~ /usr/include/llvm/ADT/Hashing.h:658:15: note: 'std::apply' is only available from C++17 onwards /usr/include/llvm/ADT/Hashing.h: At global scope: /usr/include/llvm/ADT/Hashing.h:668:55: error: 'optional' in namespace 'std' does not name a template type 668 | template hash_code hash_value(const std::optional &arg) { | ^~~~~~~~ /usr/include/llvm/ADT/Hashing.h:668:50: note: 'std::optional' is only available from C++17 onwards 668 | template hash_code hash_value(const std::optional &arg) { | ^~~ /usr/include/llvm/ADT/Hashing.h:668:63: error: expected ',' or '...' before '<' token 668 | template hash_code hash_value(const std::optional &arg) { | ^ /usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(int)': /usr/include/llvm/ADT/Hashing.h:669:10: error: 'arg' was not declared in this scope 669 | return arg ? hash_combine(true, *arg) : hash_value(false); | ^~~ In file included from /usr/include/llvm/ADT/ArrayRef.h:14: /usr/include/llvm/ADT/STLExtras.h: At global scope: /usr/include/llvm/ADT/STLExtras.h:81:22: error: 'void_t' is not a member of 'std' 81 | struct detector>, Op, Args...> { | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:81:22: note: 'std::void_t' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h:81:22: error: 'void_t' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:81:22: note: 'std::void_t' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h:81:39: error: wrong number of template arguments (1, should be at least 2) 81 | struct detector>, Op, Args...> { | ^~ /usr/include/llvm/ADT/STLExtras.h:77:70: note: provided for 'template class Op, class ... Args> struct llvm::detail::detector' 77 | template class Op, class... Args> struct detector { | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:144:24: error: 'disjunction' in namespace 'std' does not name a template type 144 | using is_one_of = std::disjunction...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:144:19: note: 'std::disjunction' is only available from C++17 onwards 144 | using is_one_of = std::disjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:149:26: error: 'conjunction' in namespace 'std' does not name a template type 149 | using are_base_of = std::conjunction...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:149:21: note: 'std::conjunction' is only available from C++17 onwards 149 | using are_base_of = std::conjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:155:37: error: 'is_one_of' was not declared in this scope 155 | : std::integral_constant::value && | ^~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:155:55: error: template argument 2 is invalid 155 | : std::integral_constant::value && | ^ /usr/include/llvm/ADT/STLExtras.h:155:56: error: expected '{' before '::' token 155 | : std::integral_constant::value && | ^~ /usr/include/llvm/ADT/STLExtras.h:224:23: error: 'is_function_v' is not a member of 'std'; did you mean 'is_function'? 224 | bool = std::is_function_v>>> | ^~~~~~~~~~~~~ | is_function /usr/include/llvm/ADT/STLExtras.h:224:77: error: expected primary-expression before '>>' token 224 | bool = std::is_function_v>>> | ^~ /usr/include/llvm/ADT/STLExtras.h:224:77: error: expected '>' before '>>' token /usr/include/llvm/ADT/STLExtras.h:230:8: error: 'optional' in namespace 'std' does not name a template type 230 | std::optional Obj; | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:230:3: note: 'std::optional' is only available from C++17 onwards 230 | std::optional Obj; | ^~~ /usr/include/llvm/ADT/STLExtras.h:232:23: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'? 232 | static_assert(!std::is_pointer_v, | ^~~~~~~~~~~~ | is_pointer /usr/include/llvm/ADT/STLExtras.h:232:46: error: expected primary-expression before '>' token 232 | static_assert(!std::is_pointer_v, | ^ /usr/include/llvm/ADT/STLExtras.h:232:47: error: expected primary-expression before ',' token 232 | static_assert(!std::is_pointer_v, | ^ /usr/include/llvm/ADT/STLExtras.h:257:35: error: 'is_invocable_v' is not a member of 'std' 257 | std::enable_if_t, int> = 0> | ^~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:257:35: error: 'is_invocable_v' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:257:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template using std::enable_if_t = typename std::enable_if::type' 257 | std::enable_if_t, int> = 0> | ^ In file included from /usr/include/c++/13/bits/char_traits.h:50, from /usr/include/c++/13/string:42, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/BinOpSimplification.h:14: /usr/include/c++/13/type_traits:2609:24: note: declared here 2609 | template | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:257:66: error: expected unqualified-id before '=' token 257 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h:263:35: error: 'is_invocable_v' is not a member of 'std' 263 | std::enable_if_t, int> = 0> | ^~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:263:35: error: 'is_invocable_v' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:263:64: error: template argument 1 is invalid 263 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h:263:72: error: expected unqualified-id before '=' token 263 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h: In constructor 'llvm::callable_detail::Callable >::Callable(const T&)': /usr/include/llvm/ADT/STLExtras.h:237:26: error: class 'llvm::callable_detail::Callable >' does not have any field named 'Obj' 237 | Callable(T const &O) : Obj(std::in_place, O) {} | ^~~ /usr/include/llvm/ADT/STLExtras.h:237:35: error: 'in_place' is not a member of 'std' 237 | Callable(T const &O) : Obj(std::in_place, O) {} | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:237:35: note: 'std::in_place' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >& llvm::callable_detail::Callable >::operator=(const llvm::callable_detail::Callable >&)': /usr/include/llvm/ADT/STLExtras.h:243:5: error: 'Obj' was not declared in this scope 243 | Obj = std::nullopt; | ^~~ /usr/include/llvm/ADT/STLExtras.h:243:16: error: 'nullopt' is not a member of 'std' 243 | Obj = std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:243:16: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >& llvm::callable_detail::Callable >::operator=(llvm::callable_detail::Callable >&&)': /usr/include/llvm/ADT/STLExtras.h:250:5: error: 'Obj' was not declared in this scope 250 | Obj = std::nullopt; | ^~~ /usr/include/llvm/ADT/STLExtras.h:250:16: error: 'nullopt' is not a member of 'std' 250 | Obj = std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:250:16: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable >::valid() const': /usr/include/llvm/ADT/STLExtras.h:268:31: error: 'Obj' was not declared in this scope 268 | bool valid() const { return Obj != std::nullopt; } | ^~~ /usr/include/llvm/ADT/STLExtras.h:268:43: error: 'nullopt' is not a member of 'std' 268 | bool valid() const { return Obj != std::nullopt; } | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:268:43: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable >::reset()': /usr/include/llvm/ADT/STLExtras.h:269:25: error: 'Obj' was not declared in this scope 269 | bool reset() { return Obj = std::nullopt; } | ^~~ /usr/include/llvm/ADT/STLExtras.h:269:36: error: 'nullopt' is not a member of 'std' 269 | bool reset() { return Obj = std::nullopt; } | ^~~~~~~ /usr/include/llvm/ADT/STLExtras.h:269:36: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >::operator reference()': /usr/include/llvm/ADT/STLExtras.h:271:34: error: 'Obj' was not declared in this scope 271 | operator reference() { return *Obj; } | ^~~ /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable >::operator const_reference() const': /usr/include/llvm/ADT/STLExtras.h:272:46: error: 'Obj' was not declared in this scope 272 | operator const_reference() const { return *Obj; } | ^~~ /usr/include/llvm/ADT/STLExtras.h: At global scope: /usr/include/llvm/ADT/STLExtras.h:278:38: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'? 278 | static constexpr bool IsPtr = std::is_pointer_v>; | ^~~~~~~~~~~~ | is_pointer /usr/include/llvm/ADT/STLExtras.h:278:67: error: expected primary-expression before '>' token 278 | static constexpr bool IsPtr = std::is_pointer_v>; | ^~ /usr/include/llvm/ADT/STLExtras.h:278:69: error: expected primary-expression before ';' token 278 | static constexpr bool IsPtr = std::is_pointer_v>; | ^ /usr/include/llvm/ADT/STLExtras.h:284:3: error: 'StorageT' does not name a type 284 | StorageT Func = nullptr; | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:307:13: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'? 307 | !std::is_same_v, Callable>, int | ^~~~~~~~~ | is_same /usr/include/llvm/ADT/STLExtras.h:307:59: error: template argument 1 is invalid 307 | !std::is_same_v, Callable>, int | ^ /usr/include/llvm/ADT/STLExtras.h:308:7: error: expected unqualified-id before '=' token 308 | > = 0 | ^ /usr/include/llvm/ADT/STLExtras.h:313:35: error: 'is_invocable_v' is not a member of 'std' 313 | std::enable_if_t, int> = 0> | ^~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:313:35: error: 'is_invocable_v' is not a member of 'std' /usr/include/llvm/ADT/STLExtras.h:313:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template using std::enable_if_t = typename std::enable_if::type' 313 | std::enable_if_t, int> = 0> | ^ /usr/include/c++/13/type_traits:2609:24: note: declared here 2609 | template | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:313:66: error: expected unqualified-id before '=' token 313 | std::enable_if_t, int> = 0> | ^ /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable::valid() const': /usr/include/llvm/ADT/STLExtras.h:318:31: error: 'Func' was not declared in this scope 318 | bool valid() const { return Func != nullptr; } | ^~~~ /usr/include/llvm/ADT/STLExtras.h: In member function 'void llvm::callable_detail::Callable::reset()': /usr/include/llvm/ADT/STLExtras.h:319:18: error: 'Func' was not declared in this scope 319 | void reset() { Func = nullptr; } | ^~~~ /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable::operator const T&() const': /usr/include/llvm/ADT/STLExtras.h:324:14: error: 'Func' was not declared in this scope 324 | return Func; | ^~~~ /usr/include/llvm/ADT/STLExtras.h:326:26: error: 'is_reference_v' is not a member of 'std'; did you mean 'is_reference'? 326 | static_assert(std::is_reference_v, | ^~~~~~~~~~~~~~ | is_reference /usr/include/llvm/ADT/STLExtras.h:326:42: error: expected primary-expression before '>' token 326 | static_assert(std::is_reference_v, | ^ /usr/include/llvm/ADT/STLExtras.h:326:43: error: expected primary-expression before ',' token 326 | static_assert(std::is_reference_v, | ^ /usr/include/llvm/ADT/STLExtras.h:329:15: error: 'Func' was not declared in this scope 329 | return *Func; | ^~~~ /usr/include/llvm/ADT/STLExtras.h: At global scope: /usr/include/llvm/ADT/STLExtras.h:423:35: error: template argument 2 is invalid 423 | callable_detail::Callable F{}; | ^ /usr/include/llvm/ADT/STLExtras.h:927:60: error: 'optional' in namespace 'std' does not name a template type 927 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional< | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:927:55: note: 'std::optional' is only available from C++17 onwards 927 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional< | ^~~ /usr/include/llvm/ADT/STLExtras.h:927:68: error: expected initializer before '<' token 927 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional< | ^ /usr/include/llvm/ADT/STLExtras.h:935:21: error: 'optional' in namespace 'std' does not name a template type 935 | using type = std::optional...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1511:19: note: 'std::disjunction' is only available from C++17 onwards 1511 | using is_one_of = std::disjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:1516:26: error: 'conjunction' in namespace 'std' does not name a template type 1516 | using are_base_of = std::conjunction...>; | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1516:21: note: 'std::conjunction' is only available from C++17 onwards 1516 | using are_base_of = std::conjunction...>; | ^~~ /usr/include/llvm/ADT/STLExtras.h:1675:38: error: 'conjunction' in namespace 'std' does not name a template type 1675 | using sort_trivially_copyable = std::conjunction< | ^~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1675:33: note: 'std::conjunction' is only available from C++17 onwards 1675 | using sort_trivially_copyable = std::conjunction< | ^~~ /usr/include/llvm/ADT/STLExtras.h: In function 'void llvm::sort(IteratorTy, IteratorTy)': /usr/include/llvm/ADT/STLExtras.h:1684:25: error: 'sort_trivially_copyable' is not a member of 'llvm::detail' 1684 | if constexpr (detail::sort_trivially_copyable::value) { | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h:1684:59: error: expected primary-expression before '>' token 1684 | if constexpr (detail::sort_trivially_copyable::value) { | ^ /usr/include/llvm/ADT/STLExtras.h:1684:62: error: '::value' has not been declared 1684 | if constexpr (detail::sort_trivially_copyable::value) { | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In function 'bool llvm::detail::all_of_zip_predicate_first(Predicate&&, Args&& ...)': /usr/include/llvm/ADT/STLExtras.h:2276:15: error: 'apply' is not a member of 'std' 2276 | if (!std::apply([&](auto &&...args) { return P(args...); }, *it)) | ^~~~~ /usr/include/llvm/ADT/STLExtras.h:2276:15: note: 'std::apply' is only available from C++17 onwards /usr/include/llvm/ADT/ArrayRef.h: At global scope: /usr/include/llvm/ADT/ArrayRef.h:70:27: error: invalid use of '::' 70 | /*implicit*/ ArrayRef(std::nullopt_t) {} | ^~~ /usr/include/llvm/ADT/ArrayRef.h:70:44: error: expected ';' at end of member declaration 70 | /*implicit*/ ArrayRef(std::nullopt_t) {} | ^ | ; /usr/include/llvm/ADT/ArrayRef.h:323:34: error: invalid use of '::' 323 | /*implicit*/ MutableArrayRef(std::nullopt_t) : ArrayRef() {} | ^~~ /usr/include/llvm/ADT/ArrayRef.h:472:65: error: expected constructor, destructor, or type conversion before ';' token 472 | template ArrayRef(const T &OneElt) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:475:78: error: expected constructor, destructor, or type conversion before ';' token 475 | template ArrayRef(const T *data, size_t length) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:478:77: error: expected constructor, destructor, or type conversion before ';' token 478 | template ArrayRef(const T *data, const T *end) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:481:79: error: expected constructor, destructor, or type conversion before ';' token 481 | template ArrayRef(const SmallVectorImpl &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:485:56: error: expected constructor, destructor, or type conversion before ';' token 485 | ArrayRef(const SmallVector &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:488:75: error: expected constructor, destructor, or type conversion before ';' token 488 | template ArrayRef(const std::vector &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:492:55: error: expected constructor, destructor, or type conversion before ';' token 492 | ArrayRef(const std::array &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:495:72: error: expected constructor, destructor, or type conversion before ';' token 495 | template ArrayRef(const ArrayRef &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:498:66: error: expected constructor, destructor, or type conversion before ';' token 498 | template ArrayRef(ArrayRef &Vec) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:501:77: error: expected constructor, destructor, or type conversion before ';' token 501 | template ArrayRef(const T (&Arr)[N]) -> ArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:580:70: error: expected constructor, destructor, or type conversion before ';' token 580 | template MutableArrayRef(T &OneElt) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:585:64: error: expected constructor, destructor, or type conversion before ';' token 585 | MutableArrayRef(T *data, size_t length) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:589:65: error: expected constructor, destructor, or type conversion before ';' token 589 | MutableArrayRef(SmallVectorImpl &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:592:64: error: expected constructor, destructor, or type conversion before ';' token 592 | MutableArrayRef(SmallVector &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:595:80: error: expected constructor, destructor, or type conversion before ';' token 595 | template MutableArrayRef(std::vector &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:599:63: error: expected constructor, destructor, or type conversion before ';' token 599 | MutableArrayRef(std::array &Vec) -> MutableArrayRef; | ^ /usr/include/llvm/ADT/ArrayRef.h:603:53: error: expected constructor, destructor, or type conversion before ';' token 603 | MutableArrayRef(T (&Arr)[N]) -> MutableArrayRef; | ^ /usr/include/clang/Basic/Diagnostic.h: In static member function 'static clang::FixItHint clang::FixItHint::CreateInsertion(clang::SourceLocation, llvm::StringRef, bool)': /usr/include/clang/Basic/Diagnostic.h:103:41: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 103 | Hint.CodeToInsert = std::string(Code); | ^ In file included from /usr/include/c++/13/string:54: /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:103:41: note: candidate expects 3 arguments, 1 provided 103 | Hint.CodeToInsert = std::string(Code); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: In static member function 'static clang::FixItHint clang::FixItHint::CreateReplacement(clang::CharSourceRange, llvm::StringRef)': /usr/include/clang/Basic/Diagnostic.h:138:41: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 138 | Hint.CodeToInsert = std::string(Code); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:138:41: note: candidate expects 3 arguments, 1 provided 138 | Hint.CodeToInsert = std::string(Code); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: In member function 'void clang::StreamingDiagnostic::AddString(llvm::StringRef) const': /usr/include/clang/Basic/Diagnostic.h:1202:78: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 1202 | DiagStorage->DiagArgumentsStr[DiagStorage->NumDiagArgs++] = std::string(V); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:1202:78: note: candidate expects 3 arguments, 1 provided 1202 | DiagStorage->DiagArgumentsStr[DiagStorage->NumDiagArgs++] = std::string(V); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: In member function 'void clang::DiagnosticBuilder::addFlagValue(llvm::StringRef) const': /usr/include/clang/Basic/Diagnostic.h:1369:76: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 1369 | void addFlagValue(StringRef V) const { DiagObj->FlagValue = std::string(V); } | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/Basic/Diagnostic.h:1369:76: note: candidate expects 3 arguments, 1 provided 1369 | void addFlagValue(StringRef V) const { DiagObj->FlagValue = std::string(V); } | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/clang/Basic/Diagnostic.h: At global scope: /usr/include/clang/Basic/Diagnostic.h:1514:23: error: 'optional' in namespace 'std' does not name a template type 1514 | const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1514:18: note: 'std::optional' is only available from C++17 onwards 1514 | const std::optional &Opt) { | ^~~ /usr/include/clang/Basic/Diagnostic.h:1514:31: error: expected ',' or '...' before '<' token 1514 | const std::optional &Opt) { | ^ /usr/include/clang/Basic/Diagnostic.h:1513:1: error: redefinition of 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' 1513 | operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1401:35: note: 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' previously defined here 1401 | inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h: In function 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)': /usr/include/clang/Basic/Diagnostic.h:1515:7: error: 'Opt' was not declared in this scope 1515 | if (Opt) | ^~~ /usr/include/clang/Basic/Diagnostic.h: At global scope: /usr/include/clang/Basic/Diagnostic.h:1522:23: error: 'optional' in namespace 'std' does not name a template type 1522 | const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1522:18: note: 'std::optional' is only available from C++17 onwards 1522 | const std::optional &Opt) { | ^~~ /usr/include/clang/Basic/Diagnostic.h:1522:31: error: expected ',' or '...' before '<' token 1522 | const std::optional &Opt) { | ^ /usr/include/clang/Basic/Diagnostic.h:1521:1: error: redefinition of 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' 1521 | operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1401:35: note: 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' previously defined here 1401 | inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h: In function 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)': /usr/include/clang/Basic/Diagnostic.h:1523:7: error: 'Opt' was not declared in this scope 1523 | if (Opt) | ^~~ /usr/include/clang/Basic/Diagnostic.h: At global scope: /usr/include/clang/Basic/Diagnostic.h:1529:54: error: 'optional' in namespace 'std' does not name a template type 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1529:49: note: 'std::optional' is only available from C++17 onwards 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^~~ /usr/include/clang/Basic/Diagnostic.h:1529:62: error: expected ',' or '...' before '<' token 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^ /usr/include/clang/Basic/Diagnostic.h:1529:1: error: redefinition of 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' 1529 | operator<<(const StreamingDiagnostic &DB, const std::optional &Opt) { | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h:1401:35: note: 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)' previously defined here 1401 | inline const StreamingDiagnostic &operator<<(const StreamingDiagnostic &DB, | ^~~~~~~~ /usr/include/clang/Basic/Diagnostic.h: In function 'const clang::StreamingDiagnostic& clang::operator<<(const StreamingDiagnostic&, int)': /usr/include/clang/Basic/Diagnostic.h:1530:7: error: 'Opt' was not declared in this scope 1530 | if (Opt) | ^~~ /usr/include/clang/Basic/Diagnostic.h: In member function 'llvm::ArrayRef clang::StoredDiagnostic::getRanges() const': /usr/include/clang/Basic/Diagnostic.h:1724:70: error: missing template arguments before '(' token 1724 | ArrayRef getRanges() const { return llvm::ArrayRef(Ranges); } | ^ /usr/include/clang/Basic/Diagnostic.h: In member function 'llvm::ArrayRef clang::StoredDiagnostic::getFixIts() const': /usr/include/clang/Basic/Diagnostic.h:1732:64: error: missing template arguments before '(' token 1732 | ArrayRef getFixIts() const { return llvm::ArrayRef(FixIts); } | ^ In file included from /usr/include/llvm/Support/Allocator.h:21, from /usr/include/llvm/ADT/FoldingSet.h:22, from /usr/include/clang/AST/NestedNameSpecifier.h:21: /usr/include/llvm/Support/Alignment.h: At global scope: /usr/include/llvm/Support/Alignment.h:117:41: error: expected template-name before '<' token 117 | struct MaybeAlign : public std::optional { | ^ /usr/include/llvm/Support/Alignment.h:117:41: error: expected '{' before '<' token /usr/include/llvm/Support/Alignment.h:117:41: error: expected unqualified-id before '<' token /usr/include/llvm/Support/Alignment.h:217:35: error: 'A' has incomplete type 217 | inline unsigned encode(MaybeAlign A) { return A ? A->ShiftValue + 1 : 0; } | ~~~~~~~~~~~^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:220:50: error: return type 'struct llvm::MaybeAlign' is incomplete 220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) { | ^ /usr/include/llvm/Support/Alignment.h:220:19: error: ambiguating new declaration of 'void llvm::decodeMaybeAlign(unsigned int)' 220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) { | ^~~~~~~~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:53:28: note: old declaration 'llvm::MaybeAlign llvm::decodeMaybeAlign(unsigned int)' 53 | friend struct MaybeAlign decodeMaybeAlign(unsigned Value); | ^~~~~~~~~~~~~~~~ /usr/include/llvm/Support/Alignment.h: In function 'void llvm::decodeMaybeAlign(unsigned int)': /usr/include/llvm/Support/Alignment.h:222:23: error: invalid use of incomplete type 'struct llvm::MaybeAlign' 222 | return MaybeAlign(); | ^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:224:7: error: 'uint8_t llvm::Align::ShiftValue' is private within this context 224 | Out.ShiftValue = Value - 1; | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:41:11: note: declared private here 41 | uint8_t ShiftValue = 0; /// The log2 of the required alignment. | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h: In function 'unsigned int llvm::encode(Align)': /usr/include/llvm/Support/Alignment.h:230:61: error: invalid use of incomplete type 'struct llvm::MaybeAlign' 230 | inline unsigned encode(Align A) { return encode(MaybeAlign(A)); } | ^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h: At global scope: /usr/include/llvm/Support/Alignment.h:295:35: error: 'Lhs' has incomplete type 295 | inline bool operator==(MaybeAlign Lhs, Align Rhs) { return Lhs && *Lhs == Rhs; } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:296:35: error: 'Lhs' has incomplete type 296 | inline bool operator!=(MaybeAlign Lhs, Align Rhs) { return !(Lhs == Rhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:297:46: error: 'Rhs' has incomplete type 297 | inline bool operator==(Align Lhs, MaybeAlign Rhs) { return Rhs == Lhs; } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:298:46: error: 'Rhs' has incomplete type 298 | inline bool operator!=(Align Lhs, MaybeAlign Rhs) { return !(Rhs == Lhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:300:35: error: 'Lhs' has incomplete type 300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) { | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:300:51: error: 'Rhs' has incomplete type 300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) { | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:303:35: error: 'Lhs' has incomplete type 303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:303:51: error: 'Rhs' has incomplete type 303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:305:45: error: 'std::nullopt_t' has not been declared 305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); } | ^~~~~~~~~ /usr/include/llvm/Support/Alignment.h:305:35: error: 'Lhs' has incomplete type 305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:306:45: error: 'std::nullopt_t' has not been declared 306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); } | ^~~~~~~~~ /usr/include/llvm/Support/Alignment.h:306:35: error: 'Lhs' has incomplete type 306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); } | ~~~~~~~~~~~^~~ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/llvm/Support/Alignment.h:307:13: error: declaration of 'operator==' as non-function 307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); } | ^~~~~~~~ /usr/include/llvm/Support/Alignment.h:307:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); } | ^~~~~~~~~ | nullptr_t /usr/include/llvm/Support/Alignment.h:307:51: error: expected primary-expression before 'Rhs' 307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); } | ^~~ /usr/include/llvm/Support/Alignment.h:308:13: error: declaration of 'operator!=' as non-function 308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); } | ^~~~~~~~ /usr/include/llvm/Support/Alignment.h:308:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); } | ^~~~~~~~~ | nullptr_t /usr/include/llvm/Support/Alignment.h:308:51: error: expected primary-expression before 'Rhs' 308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); } | ^~~ /usr/include/llvm/Support/Alignment.h: In function 'std::string llvm::DebugStr(const MaybeAlign&)': /usr/include/llvm/Support/Alignment.h:317:7: error: could not convert 'MA' from 'const llvm::MaybeAlign' to 'bool' 317 | if (MA) | ^~ | | | const llvm::MaybeAlign /usr/include/llvm/Support/Alignment.h:318:29: error: base operand of '->' has non-pointer type 'const llvm::MaybeAlign' 318 | return std::to_string(MA->value()); | ^~ /usr/include/llvm/Support/Allocator.h: At global scope: /usr/include/llvm/Support/Allocator.h:232:8: error: 'optional' in namespace 'std' does not name a template type 232 | std::optional identifyObject(const void *Ptr) { | ^~~~~~~~ /usr/include/llvm/Support/Allocator.h:232:3: note: 'std::optional' is only available from C++17 onwards 232 | std::optional identifyObject(const void *Ptr) { | ^~~ /usr/include/llvm/Support/Allocator.h: In member function 'int64_t llvm::BumpPtrAllocatorImpl::identifyKnownObject(const void*)': /usr/include/llvm/Support/Allocator.h:259:10: error: 'optional' is not a member of 'std' 259 | std::optional Out = identifyObject(Ptr); | ^~~~~~~~ /usr/include/llvm/Support/Allocator.h:259:10: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Allocator.h:259:26: error: expected primary-expression before '>' token 259 | std::optional Out = identifyObject(Ptr); | ^ /usr/include/llvm/Support/Allocator.h:259:28: error: 'Out' was not declared in this scope 259 | std::optional Out = identifyObject(Ptr); | ^~~ /usr/include/llvm/Support/Allocator.h:259:34: error: there are no arguments to 'identifyObject' that depend on a template parameter, so a declaration of 'identifyObject' must be available [-fpermissive] 259 | std::optional Out = identifyObject(Ptr); | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/Allocator.h:259:34: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated) In file included from /usr/include/llvm/ADT/APSInt.h:18, from /usr/include/llvm/ADT/APFixedPoint.h:19, from /usr/include/clang/AST/APValue.h:17, from /usr/include/clang/AST/Expr.h:16, from /usr/include/clang/AST/ASTConcept.h:17, from /usr/include/clang/AST/RecursiveASTVisitor.h:16, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/BinOpSimplification.cpp:19: /usr/include/llvm/ADT/APInt.h: At global scope: /usr/include/llvm/ADT/APInt.h:1506:8: error: 'optional' in namespace 'std' does not name a template type 1506 | std::optional tryZExtValue() const { | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:1506:3: note: 'std::optional' is only available from C++17 onwards 1506 | std::optional tryZExtValue() const { | ^~~ /usr/include/llvm/ADT/APInt.h:1528:8: error: 'optional' in namespace 'std' does not name a template type 1528 | std::optional trySExtValue() const { | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:1528:3: note: 'std::optional' is only available from C++17 onwards 1528 | std::optional trySExtValue() const { | ^~~ /usr/include/llvm/ADT/APInt.h: In member function 'unsigned int llvm::APInt::countPopulation() const': /usr/include/llvm/ADT/APInt.h:1621:20: error: 'popcount' is not a member of 'llvm'; did you mean 'count'? 1621 | return llvm::popcount(U.VAL); | ^~~~~~~~ | count /usr/include/llvm/ADT/APInt.h: At global scope: /usr/include/llvm/ADT/APInt.h:2279:6: error: 'optional' in namespace 'std' does not name a template type 2279 | std::optional SolveQuadraticEquationWrap(APInt A, APInt B, APInt C, | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:2279:1: note: 'std::optional' is only available from C++17 onwards 2279 | std::optional SolveQuadraticEquationWrap(APInt A, APInt B, APInt C, | ^~~ /usr/include/llvm/ADT/APInt.h:2284:6: error: 'optional' in namespace 'std' does not name a template type 2284 | std::optional GetMostSignificantDifferentBit(const APInt &A, | ^~~~~~~~ /usr/include/llvm/ADT/APInt.h:2284:1: note: 'std::optional' is only available from C++17 onwards 2284 | std::optional GetMostSignificantDifferentBit(const APInt &A, | ^~~ /usr/include/llvm/ADT/APSInt.h:103:8: error: 'optional' in namespace 'std' does not name a template type 103 | std::optional tryExtValue() const { | ^~~~~~~~ /usr/include/llvm/ADT/APSInt.h:103:3: note: 'std::optional' is only available from C++17 onwards 103 | std::optional tryExtValue() const { | ^~~ In file included from /usr/include/llvm/ADT/APFixedPoint.h:23: /usr/include/llvm/Support/raw_ostream.h:252:38: error: 'string_view' in namespace 'std' does not name a type 252 | raw_ostream &operator<<(const std::string_view &Str) { | ^~~~~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:252:33: note: 'std::string_view' is only available from C++17 onwards 252 | raw_ostream &operator<<(const std::string_view &Str) { | ^~~ /usr/include/llvm/Support/raw_ostream.h: In member function 'llvm::raw_ostream& llvm::raw_ostream::operator<<(const int&)': /usr/include/llvm/Support/raw_ostream.h:253:22: error: request for member 'data' in 'Str', which is of non-class type 'const int' 253 | return write(Str.data(), Str.length()); | ^~~~ /usr/include/llvm/Support/raw_ostream.h:253:34: error: request for member 'length' in 'Str', which is of non-class type 'const int' 253 | return write(Str.data(), Str.length()); | ^~~~~~ /usr/include/llvm/Support/raw_ostream.h: At global scope: /usr/include/llvm/Support/raw_ostream.h:459:16: error: 'optional' in namespace 'std' does not name a template type 459 | mutable std::optional HasColors; | ^~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:459:11: note: 'std::optional' is only available from C++17 onwards 459 | mutable std::optional HasColors; | ^~~ /usr/include/llvm/Support/raw_ostream.h:757:47: error: 'std::nullopt_t' has not been declared 757 | raw_ostream &operator<<(raw_ostream &OS, std::nullopt_t); | ^~~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:761:53: error: 'optional' in namespace 'std' does not name a template type 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^~~~~~~~ /usr/include/llvm/Support/raw_ostream.h:761:48: note: 'std::optional' is only available from C++17 onwards 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^~~ /usr/include/llvm/Support/raw_ostream.h:761:61: error: expected ',' or '...' before '<' token 761 | raw_ostream &operator<<(raw_ostream &OS, const std::optional &O) { | ^ /usr/include/llvm/Support/raw_ostream.h: In function 'llvm::raw_ostream& llvm::operator<<(raw_ostream&, int)': /usr/include/llvm/Support/raw_ostream.h:762:7: error: 'O' was not declared in this scope; did you mean 'OS'? 762 | if (O) | ^ | OS /usr/include/llvm/Support/raw_ostream.h:765:16: error: 'nullopt' is not a member of 'std' 765 | OS << std::nullopt; | ^~~~~~~ /usr/include/llvm/Support/raw_ostream.h:765:16: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/APFixedPoint.h: In member function 'std::string llvm::APFixedPoint::toString() const': /usr/include/llvm/ADT/APFixedPoint.h:238:31: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef)' 238 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/ADT/APFixedPoint.h:238:31: note: candidate expects 3 arguments, 1 provided 238 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/llvm/ADT/FloatingPointMode.h:18, from /usr/include/llvm/ADT/APFloat.h:20, from /usr/include/clang/AST/APValue.h:18: /usr/include/llvm/ADT/StringSwitch.h: At global scope: /usr/include/llvm/ADT/StringSwitch.h:50:8: error: 'optional' in namespace 'std' does not name a template type 50 | std::optional Result; | ^~~~~~~~ /usr/include/llvm/ADT/StringSwitch.h:50:3: note: 'std::optional' is only available from C++17 onwards 50 | std::optional Result; | ^~~ /usr/include/llvm/ADT/StringSwitch.h: In constructor 'llvm::StringSwitch::StringSwitch(llvm::StringRef)': /usr/include/llvm/ADT/StringSwitch.h:54:13: error: class 'llvm::StringSwitch' does not have any field named 'Result' 54 | : Str(S), Result() { } | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In constructor 'llvm::StringSwitch::StringSwitch(llvm::StringSwitch&&)': /usr/include/llvm/ADT/StringSwitch.h:64:23: error: class 'llvm::StringSwitch' does not have any field named 'Result' 64 | : Str(other.Str), Result(std::move(other.Result)) { } | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::Case(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:70:10: error: 'Result' was not declared in this scope 70 | if (!Result && Str == S) { | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::EndsWith(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:77:10: error: 'Result' was not declared in this scope 77 | if (!Result && Str.endswith(S)) { | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::StartsWith(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:84:10: error: 'Result' was not declared in this scope 84 | if (!Result && Str.startswith(S)) { | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::CaseLower(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:143:10: error: 'Result' was not declared in this scope 143 | if (!Result && Str.equals_insensitive(S)) | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::EndsWithLower(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:150:10: error: 'Result' was not declared in this scope 150 | if (!Result && Str.endswith_insensitive(S)) | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch& llvm::StringSwitch::StartsWithLower(llvm::StringLiteral, T)': /usr/include/llvm/ADT/StringSwitch.h:157:10: error: 'Result' was not declared in this scope 157 | if (!Result && Str.startswith_insensitive(S)) | ^~~~~~ /usr/include/llvm/ADT/StringSwitch.h: In member function 'R llvm::StringSwitch::Default(T)': /usr/include/llvm/ADT/StringSwitch.h:183:9: error: 'Result' was not declared in this scope 183 | if (Result) | ^~~~~~ In file included from /usr/include/c++/13/cassert:44, from /usr/include/llvm/ADT/StringSwitch.h:18: /usr/include/llvm/ADT/StringSwitch.h: In member function 'llvm::StringSwitch::operator R()': /usr/include/llvm/ADT/StringSwitch.h:189:5: error: 'Result' was not declared in this scope 189 | assert(Result && "Fell off the end of a string-switch"); | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/APValue.h:190:11: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ In file included from /usr/include/clang/AST/APValue.h:22: /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/APValue.h:190:11: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/Type.h:22, from /usr/include/clang/AST/DeclarationName.h:16, from /usr/include/clang/AST/DeclBase.h:18, from /usr/include/clang/AST/Decl.h:19, from /usr/include/clang/AST/Expr.h:19: /usr/include/clang/AST/TemplateName.h: In member function 'llvm::ArrayRef clang::OverloadedTemplateStorage::decls() const': /usr/include/clang/AST/TemplateName.h:130:26: error: missing template arguments before '(' token 130 | return llvm::ArrayRef(begin(), end()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/TemplateName.h:211:15: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/TemplateName.h:211:15: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/TemplateName.h: At global scope: /usr/include/clang/AST/TemplateName.h:383:41: error: 'std::optional' has not been declared 383 | std::optional PackIndex) | ^~~~~~~~ /usr/include/clang/AST/TemplateName.h:383:49: error: expected ',' or '...' before '<' token 383 | std::optional PackIndex) | ^ /usr/include/clang/AST/TemplateName.h:399:8: error: 'optional' in namespace 'std' does not name a template type 399 | std::optional getPackIndex() const { | ^~~~~~~~ /usr/include/clang/AST/TemplateName.h:399:3: note: 'std::optional' is only available from C++17 onwards 399 | std::optional getPackIndex() const { | ^~~ /usr/include/clang/AST/TemplateName.h:412:28: error: 'std::optional' has not been declared 412 | std::optional PackIndex); | ^~~~~~~~ /usr/include/clang/AST/TemplateName.h:412:36: error: expected ',' or '...' before '<' token 412 | std::optional PackIndex); | ^ /usr/include/clang/AST/TemplateName.h: In constructor 'clang::SubstTemplateTemplateParmStorage::SubstTemplateTemplateParmStorage(clang::TemplateName, clang::Decl*, unsigned int, int)': /usr/include/clang/AST/TemplateName.h:385:37: error: 'PackIndex' was not declared in this scope 385 | PackIndex ? *PackIndex + 1 : 0), | ^~~~~~~~~ In file included from /usr/include/clang/AST/Type.h:40: /usr/include/llvm/ADT/Twine.h: At global scope: /usr/include/llvm/ADT/Twine.h:292:35: error: 'string_view' in namespace 'std' does not name a type 292 | /*implicit*/ Twine(const std::string_view &Str) | ^~~~~~~~~~~ /usr/include/llvm/ADT/Twine.h:292:30: note: 'std::string_view' is only available from C++17 onwards 292 | /*implicit*/ Twine(const std::string_view &Str) | ^~~ /usr/include/llvm/ADT/Twine.h: In constructor 'llvm::Twine::Twine(const int&)': /usr/include/llvm/ADT/Twine.h:294:34: error: request for member 'data' in 'Str', which is of non-class type 'const int' 294 | LHS.ptrAndLength.ptr = Str.data(); | ^~~~ /usr/include/llvm/ADT/Twine.h:295:37: error: request for member 'length' in 'Str', which is of non-class type 'const int' 295 | LHS.ptrAndLength.length = Str.length(); | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Type.h:744:28: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Type.h:744:28: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Type.h: At global scope: /usr/include/clang/AST/Type.h:2555:8: error: 'optional' in namespace 'std' does not name a template type 2555 | std::optional getNullability() const; | ^~~~~~~~ /usr/include/clang/AST/Type.h:2555:3: note: 'std::optional' is only available from C++17 onwards 2555 | std::optional getNullability() const; | ^~~ /usr/include/clang/AST/Type.h:2579:8: error: 'optional' in namespace 'std' does not name a template type 2579 | std::optional> | ^~~~~~~~ /usr/include/clang/AST/Type.h:2579:3: note: 'std::optional' is only available from C++17 onwards 2579 | std::optional> | ^~~ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::FunctionProtoType::getParamTypes() const': /usr/include/clang/AST/Type.h:4240:26: error: missing template arguments before '(' token 4240 | return llvm::ArrayRef(param_type_begin(), param_type_end()); | ^ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::FunctionProtoType::param_types() const': /usr/include/clang/AST/Type.h:4387:26: error: missing template arguments before '(' token 4387 | return llvm::ArrayRef(param_type_begin(), param_type_end()); | ^ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::FunctionProtoType::exceptions() const': /usr/include/clang/AST/Type.h:4401:26: error: missing template arguments before '(' token 4401 | return llvm::ArrayRef(exception_begin(), exception_end()); | ^ /usr/include/clang/AST/Type.h: At global scope: /usr/include/clang/AST/Type.h:4925:8: error: 'optional' in namespace 'std' does not name a template type 4925 | std::optional getImmediateNullability() const; | ^~~~~~~~ /usr/include/clang/AST/Type.h:4925:3: note: 'std::optional' is only available from C++17 onwards 4925 | std::optional getImmediateNullability() const; | ^~~ /usr/include/clang/AST/Type.h:4955:15: error: 'optional' in namespace 'std' does not name a template type 4955 | static std::optional stripOuterNullability(QualType &T); | ^~~~~~~~ /usr/include/clang/AST/Type.h:4955:10: note: 'std::optional' is only available from C++17 onwards 4955 | static std::optional stripOuterNullability(QualType &T); | ^~~ /usr/include/clang/AST/Type.h:5096:50: error: 'std::optional' has not been declared 5096 | unsigned Index, std::optional PackIndex); | ^~~~~~~~ /usr/include/clang/AST/Type.h:5096:58: error: expected ',' or '...' before '<' token 5096 | unsigned Index, std::optional PackIndex); | ^ /usr/include/clang/AST/Type.h:5119:8: error: 'optional' in namespace 'std' does not name a template type 5119 | std::optional getPackIndex() const { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5119:3: note: 'std::optional' is only available from C++17 onwards 5119 | std::optional getPackIndex() const { | ^~~ /usr/include/clang/AST/Type.h:5135:28: error: 'std::optional' has not been declared 5135 | std::optional PackIndex) { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5135:36: error: expected ',' or '...' before '<' token 5135 | std::optional PackIndex) { | ^ /usr/include/clang/AST/Type.h: In member function 'void clang::SubstTemplateTypeParmType::Profile(llvm::FoldingSetNodeID&)': /usr/include/clang/AST/Type.h:5130:13: error: 'getPackIndex' was not declared in this scope; did you mean 'getIndex'? 5130 | getPackIndex()); | ^~~~~~~~~~~~ | getIndex /usr/include/clang/AST/Type.h: In static member function 'static void clang::SubstTemplateTypeParmType::Profile(llvm::FoldingSetNodeID&, clang::QualType, const clang::Decl*, unsigned int, int)': /usr/include/clang/AST/Type.h:5139:19: error: 'PackIndex' was not declared in this scope 5139 | ID.AddInteger(PackIndex ? *PackIndex - 1 : 0); | ^~~~~~~~~ /usr/include/clang/AST/Type.h: At global scope: /usr/include/clang/AST/Type.h:5849:26: error: 'std::optional' has not been declared 5849 | std::optional NumExpansions) | ^~~~~~~~ /usr/include/clang/AST/Type.h:5849:34: error: expected ',' or '...' before '<' token 5849 | std::optional NumExpansions) | ^ /usr/include/clang/AST/Type.h:5867:8: error: 'optional' in namespace 'std' does not name a template type 5867 | std::optional getNumExpansions() const { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5867:3: note: 'std::optional' is only available from C++17 onwards 5867 | std::optional getNumExpansions() const { | ^~~ /usr/include/clang/AST/Type.h:5881:28: error: 'std::optional' has not been declared 5881 | std::optional NumExpansions) { | ^~~~~~~~ /usr/include/clang/AST/Type.h:5881:36: error: expected ',' or '...' before '<' token 5881 | std::optional NumExpansions) { | ^ /usr/include/clang/AST/Type.h: In constructor 'clang::PackExpansionType::PackExpansionType(clang::QualType, clang::QualType, int)': /usr/include/clang/AST/Type.h:5856:9: error: 'NumExpansions' was not declared in this scope 5856 | NumExpansions ? *NumExpansions + 1 : 0; | ^~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In member function 'void clang::PackExpansionType::Profile(llvm::FoldingSetNodeID&)': /usr/include/clang/AST/Type.h:5877:31: error: 'getNumExpansions' was not declared in this scope 5877 | Profile(ID, getPattern(), getNumExpansions()); | ^~~~~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In static member function 'static void clang::PackExpansionType::Profile(llvm::FoldingSetNodeID&, clang::QualType, int)': /usr/include/clang/AST/Type.h:5883:19: error: 'NumExpansions' was not declared in this scope 5883 | ID.AddBoolean(NumExpansions.has_value()); | ^~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In member function 'llvm::ArrayRef clang::ObjCObjectType::getTypeArgsAsWritten() const': /usr/include/clang/AST/Type.h:6138:26: error: missing template arguments before '(' token 6138 | return llvm::ArrayRef(getTypeArgStorage(), ObjCObjectTypeBits.NumTypeArgs); | ^ /usr/include/clang/AST/Type.h: In constructor 'clang::DecayedType::DecayedType(clang::QualType, clang::QualType, clang::QualType)': /usr/include/clang/AST/Type.h:7484:25: error: 'stripOuterNullability' is not a member of 'clang::AttributedType' 7484 | (void)AttributedType::stripOuterNullability(Adjusted); | ^~~~~~~~~~~~~~~~~~~~~ /usr/include/clang/AST/Type.h: In member function 'clang::QualType clang::DecayedType::getPointeeType() const': /usr/include/clang/AST/Type.h:7491:25: error: 'stripOuterNullability' is not a member of 'clang::AttributedType' 7491 | (void)AttributedType::stripOuterNullability(Decayed); | ^~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/llvm/ADT/StringMap.h:17, from /usr/include/clang/Basic/IdentifierTable.h:23, from /usr/include/clang/AST/DeclarationName.h:18: /usr/include/llvm/ADT/StringMapEntry.h: At global scope: /usr/include/llvm/ADT/StringMapEntry.h:88:34: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 88 | class StringMapEntryStorage : public StringMapEntryBase { | ^~~~~~~~~ | nullptr_t /usr/include/llvm/ADT/StringMapEntry.h:88:34: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 88 | class StringMapEntryStorage : public StringMapEntryBase { | ^~~~~~~~~ | nullptr_t /usr/include/llvm/ADT/StringMapEntry.h:88:43: error: template argument 1 is invalid 88 | class StringMapEntryStorage : public StringMapEntryBase { | ^ In file included from /usr/include/clang/AST/DeclBase.h:31: /usr/include/llvm/Support/VersionTuple.h:76:8: error: 'optional' in namespace 'std' does not name a template type 76 | std::optional getMinor() const { | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:76:3: note: 'std::optional' is only available from C++17 onwards 76 | std::optional getMinor() const { | ^~~ /usr/include/llvm/Support/VersionTuple.h:83:8: error: 'optional' in namespace 'std' does not name a template type 83 | std::optional getSubminor() const { | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:83:3: note: 'std::optional' is only available from C++17 onwards 83 | std::optional getSubminor() const { | ^~~ /usr/include/llvm/Support/VersionTuple.h:90:8: error: 'optional' in namespace 'std' does not name a template type 90 | std::optional getBuild() const { | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:90:3: note: 'std::optional' is only available from C++17 onwards 90 | std::optional getBuild() const { | ^~~ /usr/include/llvm/Support/VersionTuple.h: In static member function 'static unsigned int llvm::DenseMapInfo::getHashValue(const llvm::VersionTuple&)': /usr/include/llvm/Support/VersionTuple.h:203:28: error: 'const class llvm::VersionTuple' has no member named 'getMinor'; did you mean 'getMajor'? 203 | if (auto Minor = Value.getMinor()) | ^~~~~~~~ | getMajor /usr/include/llvm/Support/VersionTuple.h:205:31: error: 'const class llvm::VersionTuple' has no member named 'getSubminor'; did you mean 'unsigned int:31 llvm::VersionTuple::Subminor'? (not accessible from this context) 205 | if (auto Subminor = Value.getSubminor()) | ^~~~~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:37:12: note: declared private here 37 | unsigned Subminor : 31; | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:207:28: error: 'const class llvm::VersionTuple' has no member named 'getBuild'; did you mean 'unsigned int:31 llvm::VersionTuple::Build'? (not accessible from this context) 207 | if (auto Build = Value.getBuild()) | ^~~~~~~~ /usr/include/llvm/Support/VersionTuple.h:40:12: note: declared private here 40 | unsigned Build : 31; | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclBase.h:269:49: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclBase.h:269:49: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclBase.h:1290:11: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclBase.h:1290:11: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/ExternalASTSource.h:17, from /usr/include/clang/AST/Decl.h:21: /usr/include/clang/AST/CharUnits.h: At global scope: /usr/include/clang/AST/CharUnits.h:194:48: error: return type 'struct llvm::MaybeAlign' is incomplete 194 | llvm::MaybeAlign getAsMaybeAlign() const { | ^ /usr/include/clang/AST/CharUnits.h: In member function 'void clang::CharUnits::getAsMaybeAlign() const': /usr/include/clang/AST/CharUnits.h:195:41: error: invalid use of incomplete type 'struct llvm::MaybeAlign' 195 | return llvm::MaybeAlign(Quantity); | ^ /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign' 117 | struct MaybeAlign : public std::optional { | ^~~~~~~~~~ /usr/include/clang/AST/ExternalASTSource.h: At global scope: /usr/include/clang/AST/ExternalASTSource.h:163:16: error: 'optional' in namespace 'std' does not name a template type 163 | virtual std::optional getSourceDescriptor(unsigned ID); | ^~~~~~~~ /usr/include/clang/AST/ExternalASTSource.h:163:11: note: 'std::optional' is only available from C++17 onwards 163 | virtual std::optional getSourceDescriptor(unsigned ID); | ^~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct, clang::LazyGenerationalUpdatePtr >': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion, clang::LazyGenerationalUpdatePtr >' /usr/include/clang/AST/Redeclarable.h:105:61: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct, clang::LazyGenerationalUpdatePtr >' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion, clang::LazyGenerationalUpdatePtr >': /usr/include/clang/AST/Redeclarable.h:105:61: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct, clang::LazyGenerationalUpdatePtr >' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Redeclarable.h:119:40: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Redeclarable.h:119:40: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::LazyData*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::LazyData*>' /usr/include/clang/AST/ExternalASTSource.h:402:13: required from 'struct clang::LazyGenerationalUpdatePtr' /usr/include/clang/AST/Redeclarable.h:134:61: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::LazyData*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::LazyData*>': /usr/include/clang/AST/ExternalASTSource.h:402:13: required from 'struct clang::LazyGenerationalUpdatePtr' /usr/include/clang/AST/Redeclarable.h:134:61: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::LazyData*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Decl.h:440:8: error: 'optional' in namespace 'std' does not name a template type 440 | std::optional | ^~~~~~~~ /usr/include/clang/AST/Decl.h:440:3: note: 'std::optional' is only available from C++17 onwards 440 | std::optional | ^~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:776:51: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:776:51: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:961:20: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:961:20: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:2006:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:2006:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Decl.h:2477:12: error: 'std::optional' has not been declared 2477 | std::optional *AlignmentParam = nullptr, | ^~~~~~~~ /usr/include/clang/AST/Decl.h:2477:20: error: expected ',' or '...' before '<' token 2477 | std::optional *AlignmentParam = nullptr, | ^ /usr/include/clang/AST/Decl.h: In member function 'llvm::ArrayRef clang::IndirectFieldDecl::chain() const': /usr/include/clang/AST/Decl.h:3220:26: error: missing template arguments before '(' token 3220 | return llvm::ArrayRef(Chaining, ChainingSize); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:3307:9: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:3307:9: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:3460:52: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:3460:52: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Decl.h:3736:54: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Decl.h:3736:54: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/Basic/ObjCRuntime.h:21, from /usr/include/clang/Basic/LangOptions.h:20, from /usr/include/clang/AST/Stmt.h:22, from /usr/include/clang/AST/Expr.h:23: /usr/include/llvm/Support/HashBuilder.h: At global scope: /usr/include/llvm/Support/HashBuilder.h:84:8: error: 'optional' in namespace 'std' does not name a template type 84 | std::optional OptionalHasher; | ^~~~~~~~ /usr/include/llvm/Support/HashBuilder.h:84:3: note: 'std::optional' is only available from C++17 onwards 84 | std::optional OptionalHasher; | ^~~ /usr/include/llvm/Support/HashBuilder.h: In member function 'void llvm::HashBuilderBase::update(llvm::StringRef)': /usr/include/llvm/Support/HashBuilder.h:62:17: error: missing template arguments before '(' token 62 | ArrayRef(reinterpret_cast(Data.data()), Data.size())); | ^ /usr/include/llvm/Support/HashBuilder.h: In constructor 'llvm::HashBuilderBase::HashBuilderBase(ArgTypes&& ...)': /usr/include/llvm/Support/HashBuilder.h:80:9: error: class 'llvm::HashBuilderBase' does not have any field named 'OptionalHasher' 80 | : OptionalHasher(std::in_place, std::forward(Args)...), | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/HashBuilder.h:80:29: error: 'in_place' is not a member of 'std' 80 | : OptionalHasher(std::in_place, std::forward(Args)...), | ^~~~~~~~ /usr/include/llvm/Support/HashBuilder.h:80:29: note: 'std::in_place' is only available from C++17 onwards /usr/include/llvm/Support/HashBuilder.h:81:17: error: 'OptionalHasher' was not declared in this scope 81 | Hasher(*OptionalHasher) {} | ^~~~~~~~~~~~~~ /usr/include/llvm/Support/HashBuilder.h: In member function 'llvm::HashBuilderImpl& llvm::HashBuilderImpl::add(llvm::ArrayRef)': /usr/include/llvm/Support/HashBuilder.h:134:28: error: missing template arguments before '(' token 134 | this->update(ArrayRef(reinterpret_cast(Value.begin()), | ^ /usr/include/llvm/Support/HashBuilder.h: In member function 'llvm::HashBuilderImpl& llvm::HashBuilderImpl::add(llvm::StringRef)': /usr/include/llvm/Support/HashBuilder.h:162:26: error: missing template arguments before '(' token 162 | this->update(ArrayRef(reinterpret_cast(Value.begin()), | ^ /usr/include/llvm/Support/HashBuilder.h: In member function 'llvm::HashBuilderImpl& llvm::HashBuilderImpl::add(const std::tuple<_Args1 ...>&)': /usr/include/llvm/Support/HashBuilder.h:268:10: error: 'apply' is not a member of 'std' 268 | std::apply([this](const auto &...Args) { this->add(Args...); }, Arg); | ^~~~~ /usr/include/llvm/Support/HashBuilder.h:268:10: note: 'std::apply' is only available from C++17 onwards /usr/include/llvm/Support/HashBuilder.h: In member function 'std::enable_if_t::HasByteSwapT, T>::value_t::value, llvm::HashBuilderImpl&> llvm::HashBuilderImpl::adjustForEndiannessAndAdd(const T&)': /usr/include/llvm/Support/HashBuilder.h:319:26: error: missing template arguments before '(' token 319 | this->update(ArrayRef(reinterpret_cast(&SwappedValue), | ^ /usr/include/llvm/Support/HashBuilder.h: In member function 'std::enable_if_t<(llvm::hashbuilder_detail::IsHashableData::value && (Endianness == llvm::support::endian::system_endianness())), llvm::HashBuilderImpl&> llvm::HashBuilderImpl::addRangeElementsImpl(T*, T*, std::forward_iterator_tag)': /usr/include/llvm/Support/HashBuilder.h:341:26: error: missing template arguments before '(' token 341 | this->update(ArrayRef(reinterpret_cast(First), | ^ /usr/include/clang/Basic/LangOptions.h: At global scope: /usr/include/clang/Basic/LangOptions.h:470:8: error: 'optional' in namespace 'std' does not name a template type 470 | std::optional CXXABI; | ^~~~~~~~ /usr/include/clang/Basic/LangOptions.h:470:3: note: 'std::optional' is only available from C++17 onwards 470 | std::optional CXXABI; | ^~~ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::AttributedStmt::getAttrs() const': /usr/include/clang/AST/Stmt.h:1927:26: error: missing template arguments before '(' token 1927 | return llvm::ArrayRef(getAttrArrayPtr(), AttributedStmtBits.NumAttrs); | ^ /usr/include/clang/AST/Stmt.h: At global scope: /usr/include/clang/AST/Stmt.h:2152:8: error: 'optional' in namespace 'std' does not name a template type 2152 | std::optional getNondiscardedCase(const ASTContext &Ctx) const; | ^~~~~~~~ /usr/include/clang/AST/Stmt.h:2152:3: note: 'std::optional' is only available from C++17 onwards 2152 | std::optional getNondiscardedCase(const ASTContext &Ctx) const; | ^~~ /usr/include/clang/AST/Stmt.h:2153:8: error: 'optional' in namespace 'std' does not name a template type 2153 | std::optional getNondiscardedCase(const ASTContext &Ctx); | ^~~~~~~~ /usr/include/clang/AST/Stmt.h:2153:3: note: 'std::optional' is only available from C++17 onwards 2153 | std::optional getNondiscardedCase(const ASTContext &Ctx); | ^~~ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::MSAsmStmt::getAllConstraints() const': /usr/include/clang/AST/Stmt.h:3338:26: error: missing template arguments before '(' token 3338 | return llvm::ArrayRef(Constraints, NumInputs + NumOutputs); | ^ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::MSAsmStmt::getClobbers() const': /usr/include/clang/AST/Stmt.h:3342:26: error: missing template arguments before '(' token 3342 | return llvm::ArrayRef(Clobbers, NumClobbers); | ^ /usr/include/clang/AST/Stmt.h: In member function 'llvm::ArrayRef clang::MSAsmStmt::getAllExprs() const': /usr/include/clang/AST/Stmt.h:3346:26: error: missing template arguments before '(' token 3346 | return llvm::ArrayRef(reinterpret_cast(Exprs), | ^ In file included from /usr/include/clang/AST/Expr.h:24: /usr/include/clang/AST/TemplateBase.h: At global scope: /usr/include/clang/AST/TemplateBase.h:204:44: error: 'std::optional' has not been declared 204 | TemplateArgument(TemplateName Name, std::optional NumExpansions) { | ^~~~~~~~ /usr/include/clang/AST/TemplateBase.h:204:52: error: expected ',' or '...' before '<' token 204 | TemplateArgument(TemplateName Name, std::optional NumExpansions) { | ^ /usr/include/clang/AST/TemplateBase.h:309:8: error: 'optional' in namespace 'std' does not name a template type 309 | std::optional getNumTemplateExpansions() const; | ^~~~~~~~ /usr/include/clang/AST/TemplateBase.h:309:3: note: 'std::optional' is only available from C++17 onwards 309 | std::optional getNumTemplateExpansions() const; | ^~~ /usr/include/clang/AST/TemplateBase.h: In constructor 'clang::TemplateArgument::TemplateArgument(clang::TemplateName, int)': /usr/include/clang/AST/TemplateBase.h:207:9: error: 'NumExpansions' was not declared in this scope 207 | if (NumExpansions) | ^~~~~~~~~~~~~ /usr/include/clang/AST/TemplateBase.h: In static member function 'static clang::TemplateArgument clang::TemplateArgument::getEmptyPack()': /usr/include/clang/AST/TemplateBase.h:236:34: error: 'nullopt' is not a member of 'std' 236 | return TemplateArgument(std::nullopt); | ^~~~~~~ /usr/include/clang/AST/TemplateBase.h:236:34: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::APSInt clang::TemplateArgument::getAsIntegral() const': /usr/include/clang/AST/TemplateBase.h:322:18: error: expected primary-expression before '(' token 322 | return APSInt(APInt(Integer.BitWidth, ArrayRef(Integer.pVal, NumWords)), | ^ /usr/include/clang/AST/TemplateBase.h:322:24: error: expected primary-expression before '(' token 322 | return APSInt(APInt(Integer.BitWidth, ArrayRef(Integer.pVal, NumWords)), | ^ /usr/include/clang/AST/TemplateBase.h:322:51: error: missing template arguments before '(' token 322 | return APSInt(APInt(Integer.BitWidth, ArrayRef(Integer.pVal, NumWords)), | ^ /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::ArrayRef clang::TemplateArgument::pack_elements() const': /usr/include/clang/AST/TemplateBase.h:367:26: error: missing template arguments before '(' token 367 | return llvm::ArrayRef(pack_begin(), pack_end()); | ^ /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::ArrayRef clang::TemplateArgument::getPackAsArray() const': /usr/include/clang/AST/TemplateBase.h:380:26: error: missing template arguments before '(' token 380 | return llvm::ArrayRef(Args.Args, Args.NumArgs); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/TemplateBase.h:418:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/TemplateBase.h:418:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/TemplateBase.h: In member function 'llvm::ArrayRef clang::ASTTemplateArgumentListInfo::arguments() const': /usr/include/clang/AST/TemplateBase.h:645:26: error: missing template arguments before '(' token 645 | return llvm::ArrayRef(getTemplateArgs(), getNumTemplateArgs()); | ^ In file included from /usr/include/clang/AST/Expr.h:28: /usr/include/clang/Basic/SyncScope.h: In member function 'virtual llvm::ArrayRef clang::AtomicScopeOpenCLModel::getRuntimeValues() const': /usr/include/clang/Basic/SyncScope.h:148:26: error: missing template arguments before '(' token 148 | return llvm::ArrayRef(Scopes); | ^ /usr/include/clang/Basic/SyncScope.h: In member function 'virtual llvm::ArrayRef clang::AtomicScopeHIPModel::getRuntimeValues() const': /usr/include/clang/Basic/SyncScope.h:200:26: error: missing template arguments before '(' token 200 | return llvm::ArrayRef(Scopes); | ^ /usr/include/clang/AST/Expr.h: At global scope: /usr/include/clang/AST/Expr.h:543:8: error: 'optional' in namespace 'std' does not name a template type 543 | std::optional | ^~~~~~~~ /usr/include/clang/AST/Expr.h:543:3: note: 'std::optional' is only available from C++17 onwards 543 | std::optional | ^~~ /usr/include/clang/AST/Expr.h: In member function 'void clang::CallExpr::computeDependence()': /usr/include/clang/AST/Expr.h:3024:29: error: missing template arguments before '(' token 3024 | this, llvm::ArrayRef( | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::CallExpr::getRawSubExprs()': /usr/include/clang/AST/Expr.h:3071:26: error: missing template arguments before '(' token 3071 | return llvm::ArrayRef(getTrailingStmts(), | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/Expr.h:4818:43: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/Expr.h:4818:43: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::InitListExpr::inits()': /usr/include/clang/AST/Expr.h:4838:51: error: missing template arguments before '(' token 4838 | ArrayRef inits() { return llvm::ArrayRef(getInits(), getNumInits()); } | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::InitListExpr::inits() const': /usr/include/clang/AST/Expr.h:4841:26: error: missing template arguments before '(' token 4841 | return llvm::ArrayRef(getInits(), getNumInits()); | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::ParenListExpr::exprs()': /usr/include/clang/AST/Expr.h:5583:51: error: missing template arguments before '(' token 5583 | ArrayRef exprs() { return llvm::ArrayRef(getExprs(), getNumExprs()); } | ^ /usr/include/clang/AST/Expr.h: In member function 'llvm::ArrayRef clang::RecoveryExpr::subExpressions()': /usr/include/clang/AST/Expr.h:6434:26: error: missing template arguments before '(' token 6434 | return llvm::ArrayRef(B, B + NumExprs); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion*>' /usr/include/c++/13/bits/stl_pair.h:194:11: required from 'struct std::pair*> >' /usr/include/llvm/Support/type_traits.h:75:7: required from 'union llvm::detail::copy_construction_triviality_helper*> > >' /usr/include/c++/13/type_traits:1040:25: required by substitution of 'template using std::__is_constructible_impl = std::__bool_constant<__is_constructible(_Tp, _Args ...)> [with _Tp = llvm::detail::copy_construction_triviality_helper*> > >; _Args = {const llvm::detail::copy_construction_triviality_helper*> > >&}]' /usr/include/c++/13/type_traits:1076:12: required from 'struct std::is_copy_constructible*> > > >' /usr/include/llvm/Support/type_traits.h:98:8: required from 'struct llvm::is_trivially_copy_constructible*> > >' /usr/include/llvm/ADT/SmallVector.h:329:74: required from 'class llvm::SmallVectorImpl*> > >' /usr/include/llvm/ADT/SmallVector.h:1199:22: required from 'class llvm::SmallVector*> >, 4>' /usr/include/clang/AST/ASTConcept.h:53:57: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion*>': /usr/include/c++/13/bits/stl_pair.h:194:11: required from 'struct std::pair*> >' /usr/include/llvm/Support/type_traits.h:75:7: required from 'union llvm::detail::copy_construction_triviality_helper*> > >' /usr/include/c++/13/type_traits:1040:25: required by substitution of 'template using std::__is_constructible_impl = std::__bool_constant<__is_constructible(_Tp, _Args ...)> [with _Tp = llvm::detail::copy_construction_triviality_helper*> > >; _Args = {const llvm::detail::copy_construction_triviality_helper*> > >&}]' /usr/include/c++/13/type_traits:1076:12: required from 'struct std::is_copy_constructible*> > > >' /usr/include/llvm/Support/type_traits.h:98:8: required from 'struct llvm::is_trivially_copy_constructible*> > >' /usr/include/llvm/ADT/SmallVector.h:329:74: required from 'class llvm::SmallVectorImpl*> > >' /usr/include/llvm/ADT/SmallVector.h:1199:22: required from 'class llvm::SmallVector*> >, 4>' /usr/include/clang/AST/ASTConcept.h:53:57: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/Attr.h:365, from /usr/include/clang/AST/RecursiveASTVisitor.h:17: /usr/include/clang/AST/Attrs.inc: At global scope: /usr/include/clang/AST/Attrs.inc:7459:17: error: 'optional' in namespace 'std' does not name a template type 7459 | static std::optional | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7459:12: note: 'std::optional' is only available from C++17 onwards 7459 | static std::optional | ^~~ /usr/include/clang/AST/Attrs.inc:7461:17: error: 'optional' in namespace 'std' does not name a template type 7461 | static std::optional getActiveAttr(const ValueDecl *VD); | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7461:12: note: 'std::optional' is only available from C++17 onwards 7461 | static std::optional getActiveAttr(const ValueDecl *VD); | ^~~ /usr/include/clang/AST/Attrs.inc:7462:17: error: 'optional' in namespace 'std' does not name a template type 7462 | static std::optional getDeviceType(const ValueDecl *VD); | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7462:12: note: 'std::optional' is only available from C++17 onwards 7462 | static std::optional getDeviceType(const ValueDecl *VD); | ^~~ /usr/include/clang/AST/Attrs.inc:7463:17: error: 'optional' in namespace 'std' does not name a template type 7463 | static std::optional getLocation(const ValueDecl *VD); | ^~~~~~~~ /usr/include/clang/AST/Attrs.inc:7463:12: note: 'std::optional' is only available from C++17 onwards 7463 | static std::optional getLocation(const ValueDecl *VD); | ^~~ In file included from /usr/include/clang/AST/DeclCXX.h:29, from /usr/include/clang/AST/RecursiveASTVisitor.h:20: /usr/include/clang/AST/TypeLoc.h: In member function 'llvm::ArrayRef clang::ObjCTypeParamTypeLoc::getProtocolLocs() const': /usr/include/clang/AST/TypeLoc.h:817:26: error: missing template arguments before '(' token 817 | return llvm::ArrayRef(getProtocolLocArray(), getNumProtocols()); | ^ /usr/include/clang/AST/TypeLoc.h: In member function 'llvm::ArrayRef clang::ObjCObjectTypeLoc::getProtocolLocs() const': /usr/include/clang/AST/TypeLoc.h:1023:26: error: missing template arguments before '(' token 1023 | return llvm::ArrayRef(getProtocolLocArray(), getNumProtocols()); | ^ /usr/include/clang/AST/TypeLoc.h: In member function 'llvm::ArrayRef clang::FunctionTypeLoc::getParams() const': /usr/include/clang/AST/TypeLoc.h:1450:26: error: missing template arguments before '(' token 1450 | return llvm::ArrayRef(getParmArray(), getNumParams()); | ^ In file included from /usr/include/clang/AST/DeclCXX.h:42: /usr/include/llvm/ADT/TinyPtrVector.h: In member function 'llvm::TinyPtrVector::operator llvm::ArrayRef() const': /usr/include/llvm/ADT/TinyPtrVector.h:138:19: error: 'nullopt' is not a member of 'std' 138 | return std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/TinyPtrVector.h:138:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/TinyPtrVector.h: In member function 'llvm::TinyPtrVector::operator llvm::MutableArrayRef()': /usr/include/llvm/ADT/TinyPtrVector.h:147:19: error: 'nullopt' is not a member of 'std' 147 | return std::nullopt; | ^~~~~~~ /usr/include/llvm/ADT/TinyPtrVector.h:147:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion*>' /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:417:35: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion*>': /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:417:35: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclCXX.h:470:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclCXX.h:470:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::CXXRecordDecl::DefinitionData::bases() const': /usr/include/clang/AST/DeclCXX.h:360:28: error: missing template arguments before '(' token 360 | return llvm::ArrayRef(getBases(), NumBases); | ^ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::CXXRecordDecl::DefinitionData::vbases() const': /usr/include/clang/AST/DeclCXX.h:364:28: error: missing template arguments before '(' token 364 | return llvm::ArrayRef(getVBases(), NumVBases); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion*>' /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:2104:49: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion*>': /usr/include/llvm/ADT/TinyPtrVector.h:40:12: required from 'class llvm::TinyPtrVector' /usr/include/clang/AST/DeclCXX.h:2104:49: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclCXX.h:2224:7: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclCXX.h:2224:7: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::UsingPackDecl::expansions() const': /usr/include/clang/AST/DeclCXX.h:3742:26: error: missing template arguments before '(' token 3742 | return llvm::ArrayRef(getTrailingObjects(), NumExpansions); | ^ /usr/include/clang/AST/DeclCXX.h: In member function 'llvm::ArrayRef clang::DecompositionDecl::bindings() const': /usr/include/clang/AST/DeclCXX.h:4112:26: error: missing template arguments before '(' token 4112 | return llvm::ArrayRef(getTrailingObjects(), NumBindings); | ^ In file included from /usr/include/clang/AST/ASTContext.h:20, from /usr/include/clang/AST/DeclTemplate.h:18, from /usr/include/clang/AST/DeclFriend.h:20, from /usr/include/clang/AST/RecursiveASTVisitor.h:21: /usr/include/clang/AST/ComparisonCategories.h: At global scope: /usr/include/clang/AST/ComparisonCategories.h:62:6: error: 'optional' in namespace 'std' does not name a template type 62 | std::optional | ^~~~~~~~ /usr/include/clang/AST/ComparisonCategories.h:62:1: note: 'std::optional' is only available from C++17 onwards 62 | std::optional | ^~~ In file included from /usr/include/clang/AST/ASTContext.h:25: /usr/include/clang/AST/PrettyPrinter.h: In member function 'virtual std::string clang::PrintingCallbacks::remapPath(llvm::StringRef) const': /usr/include/clang/AST/PrettyPrinter.h:39:28: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 39 | return std::string(Path); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/AST/PrettyPrinter.h:39:28: note: candidate expects 3 arguments, 1 provided 39 | return std::string(Path); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/clang/AST/ASTContext.h:26: /usr/include/clang/AST/RawCommentList.h: In constructor 'clang::RawComment::CommentLine::CommentLine(llvm::StringRef, clang::PresumedLoc, clang::PresumedLoc)': /usr/include/clang/AST/RawCommentList.h:148:11: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 148 | : Text(Text), Begin(Begin), End(End) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/AST/RawCommentList.h:148:11: note: candidate expects 3 arguments, 1 provided 148 | : Text(Text), Begin(Begin), End(End) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/clang/Basic/CodeGenOptions.h:20, from /usr/include/clang/Basic/ProfileList.h:16, from /usr/include/clang/AST/ASTContext.h:33: /usr/include/llvm/Support/CodeGen.h: At global scope: /usr/include/llvm/Support/CodeGen.h:66:15: error: 'optional' in namespace 'std' does not name a template type 66 | inline std::optional getLevel(IDType ID) { | ^~~~~~~~ /usr/include/llvm/Support/CodeGen.h:66:10: note: 'std::optional' is only available from C++17 onwards 66 | inline std::optional getLevel(IDType ID) { | ^~~ /usr/include/llvm/Support/CodeGen.h:74:15: error: 'optional' in namespace 'std' does not name a template type 74 | inline std::optional parseLevel(char C) { | ^~~~~~~~ /usr/include/llvm/Support/CodeGen.h:74:10: note: 'std::optional' is only available from C++17 onwards 74 | inline std::optional parseLevel(char C) { | ^~~ /usr/include/clang/Basic/CodeGenOptions.h:443:8: error: 'optional' in namespace 'std' does not name a template type 443 | std::optional DiagnosticsHotnessThreshold = 0; | ^~~~~~~~ /usr/include/clang/Basic/CodeGenOptions.h:443:3: note: 'std::optional' is only available from C++17 onwards 443 | std::optional DiagnosticsHotnessThreshold = 0; | ^~~ /usr/include/clang/Basic/CodeGenOptions.h:447:8: error: 'optional' in namespace 'std' does not name a template type 447 | std::optional DiagnosticsMisExpectTolerance = 0; | ^~~~~~~~ /usr/include/clang/Basic/CodeGenOptions.h:447:3: note: 'std::optional' is only available from C++17 onwards 447 | std::optional DiagnosticsMisExpectTolerance = 0; | ^~~ /usr/include/clang/Basic/ProfileList.h:44:8: error: 'optional' in namespace 'std' does not name a template type 44 | std::optional inSection(StringRef Section, StringRef Prefix, | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:44:3: note: 'std::optional' is only available from C++17 onwards 44 | std::optional inSection(StringRef Section, StringRef Prefix, | ^~~ /usr/include/clang/Basic/ProfileList.h:54:8: error: 'optional' in namespace 'std' does not name a template type 54 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:54:3: note: 'std::optional' is only available from C++17 onwards 54 | std::optional | ^~~ /usr/include/clang/Basic/ProfileList.h:57:8: error: 'optional' in namespace 'std' does not name a template type 57 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:57:3: note: 'std::optional' is only available from C++17 onwards 57 | std::optional | ^~~ /usr/include/clang/Basic/ProfileList.h:60:8: error: 'optional' in namespace 'std' does not name a template type 60 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/ProfileList.h:60:3: note: 'std::optional' is only available from C++17 onwards 60 | std::optional | ^~~ In file included from /usr/include/clang/AST/ASTContext.h:40: /usr/include/llvm/ADT/MapVector.h:42:12: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'? 42 | std::is_integral_v, | ^~~~~~~~~~~~~ | is_integral /usr/include/llvm/ADT/MapVector.h:42:55: error: expected '(' before '>' token 42 | std::is_integral_v, | ^ | ( /usr/include/llvm/ADT/MapVector.h:42:56: error: expected primary-expression before ',' token 42 | std::is_integral_v, | ^ /usr/include/llvm/ADT/MapVector.h: In member function 'ValueT llvm::MapVector::lookup(const KeyT&) const': /usr/include/llvm/ADT/MapVector.h:112:24: error: 'is_copy_constructible_v' is not a member of 'std'; did you mean 'is_copy_constructible'? 112 | static_assert(std::is_copy_constructible_v, | ^~~~~~~~~~~~~~~~~~~~~~~ | is_copy_constructible /usr/include/llvm/ADT/MapVector.h:112:54: error: expected primary-expression before '>' token 112 | static_assert(std::is_copy_constructible_v, | ^ /usr/include/llvm/ADT/MapVector.h:112:55: error: expected primary-expression before ',' token 112 | static_assert(std::is_copy_constructible_v, | ^ /usr/include/clang/AST/ASTContext.h: At global scope: /usr/include/clang/AST/ASTContext.h:1593:37: error: 'std::optional' has not been declared 1593 | std::optional PackIndex) const; | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:1593:45: error: expected ',' or '...' before '<' token 1593 | std::optional PackIndex) const; | ^ /usr/include/clang/AST/ASTContext.h:1656:38: error: 'std::optional' has not been declared 1656 | std::optional NumExpansions, | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:1656:46: error: expected ',' or '...' before '<' token 1656 | std::optional NumExpansions, | ^ /usr/include/clang/AST/ASTContext.h:2178:37: error: 'std::optional' has not been declared 2178 | std::optional PackIndex) const; | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:2178:45: error: expected ',' or '...' before '<' token 2178 | std::optional PackIndex) const; | ^ /usr/include/clang/AST/ASTContext.h:2292:8: error: 'optional' in namespace 'std' does not name a template type 2292 | std::optional getTypeSizeInCharsIfKnown(QualType Ty) const { | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:2292:3: note: 'std::optional' is only available from C++17 onwards 2292 | std::optional getTypeSizeInCharsIfKnown(QualType Ty) const { | ^~~ /usr/include/clang/AST/ASTContext.h:2298:8: error: 'optional' in namespace 'std' does not name a template type 2298 | std::optional getTypeSizeInCharsIfKnown(const Type *Ty) const { | ^~~~~~~~ /usr/include/clang/AST/ASTContext.h:2298:3: note: 'std::optional' is only available from C++17 onwards 2298 | std::optional getTypeSizeInCharsIfKnown(const Type *Ty) const { | ^~~ /usr/include/clang/AST/ASTContext.h: In member function 'bool clang::ASTContext::hasSameNullabilityTypeQualifier(clang::QualType, clang::QualType, bool) const': /usr/include/clang/AST/ASTContext.h:2549:34: error: 'const class clang::Type' has no member named 'getNullability' 2549 | auto SubTnullability = SubT->getNullability(); | ^~~~~~~~~~~~~~ /usr/include/clang/AST/ASTContext.h:2550:38: error: 'const class clang::Type' has no member named 'getNullability' 2550 | auto SuperTnullability = SuperT->getNullability(); | ^~~~~~~~~~~~~~ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::TemplateParameterList::asArray()': /usr/include/clang/AST/DeclTemplate.h:133:58: error: missing template arguments before '(' token 133 | ArrayRef asArray() { return llvm::ArrayRef(begin(), end()); } | ^ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::TemplateParameterList::asArray() const': /usr/include/clang/AST/DeclTemplate.h:135:26: error: missing template arguments before '(' token 135 | return llvm::ArrayRef(begin(), size()); | ^ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::TemplateArgumentList::asArray() const': /usr/include/clang/AST/DeclTemplate.h:291:26: error: missing template arguments before '(' token 291 | return llvm::ArrayRef(data(), size()); | ^ /usr/include/clang/AST/DeclTemplate.h: In member function 'llvm::ArrayRef clang::DependentFunctionTemplateSpecializationInfo::arguments() const': /usr/include/clang/AST/DeclTemplate.h:743:26: error: missing template arguments before '(' token 743 | return llvm::ArrayRef(getTemplateArgs(), getNumTemplateArgs()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::Chain*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::Chain*>' /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1236:17: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::Chain*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::Chain*>': /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1236:17: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::Chain*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclTemplate.h: At global scope: /usr/include/clang/AST/DeclTemplate.h:1241:29: error: 'std::optional' has not been declared 1241 | std::optional NumExpanded) | ^~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:1241:37: error: expected ',' or '...' before '<' token 1241 | std::optional NumExpanded) | ^ /usr/include/clang/AST/DeclTemplate.h:1252:15: error: 'std::optional' has not been declared 1252 | std::optional NumExpanded = std::nullopt); | ^~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:1252:23: error: expected ',' or '...' before '<' token 1252 | std::optional NumExpanded = std::nullopt); | ^ /usr/include/clang/AST/DeclTemplate.h:1252:10: error: default argument missing for parameter 11 of 'static clang::TemplateTypeParmDecl* clang::TemplateTypeParmDecl::Create(const clang::ASTContext&, clang::DeclContext*, clang::SourceLocation, clang::SourceLocation, unsigned int, unsigned int, clang::IdentifierInfo*, bool, bool, bool, int)' 1252 | std::optional NumExpanded = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:1251:50: note: ...following parameter 10 which has a default argument 1251 | bool Typename, bool ParameterPack, bool HasTypeConstraint = false, | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/clang/AST/DeclTemplate.h: In constructor 'clang::TemplateTypeParmDecl::TemplateTypeParmDecl(clang::DeclContext*, clang::SourceLocation, clang::SourceLocation, clang::IdentifierInfo*, bool, bool, int)': /usr/include/clang/AST/DeclTemplate.h:1245:33: error: request for member 'value_or' in '((clang::TemplateTypeParmDecl*)this)->clang::TemplateTypeParmDecl::NumExpanded', which is of non-class type 'unsigned int' 1245 | NumExpanded(NumExpanded.value_or(0)) {} | ^~~~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::Chain*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::Chain*>' /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1419:17: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::Chain*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::Chain*>': /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1419:17: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::Chain*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct::Chain*>': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion::Chain*>' /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1632:17: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct::Chain*>' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion::Chain*>': /usr/include/clang/AST/DeclTemplate.h:324:50: required from 'class clang::DefaultArgStorage' /usr/include/clang/AST/DeclTemplate.h:1632:17: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct::Chain*>' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:1843:5: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:1843:5: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:1978:31: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:1978:31: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:2481:15: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:2481:15: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:2705:3: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:2705:3: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:2832:31: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:2832:31: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/DeclTemplate.h:3424:53: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/DeclTemplate.h:3424:53: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/DeclTemplate.h: At global scope: /usr/include/clang/AST/DeclTemplate.h:3453:13: error: 'optional' in namespace 'std' does not name a template type 3453 | inline std::optional getExpandedPackSize(const NamedDecl *Param) { | ^~~~~~~~ /usr/include/clang/AST/DeclTemplate.h:3453:8: note: 'std::optional' is only available from C++17 onwards 3453 | inline std::optional getExpandedPackSize(const NamedDecl *Param) { | ^~~ /usr/include/clang/AST/DeclFriend.h:113:69: error: 'nullopt' is not a member of 'std' 113 | ArrayRef FriendTypeTPLists = std::nullopt); | ^~~~~~~ /usr/include/clang/AST/DeclFriend.h:113:69: note: 'std::nullopt' is only available from C++17 onwards In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:22: /usr/include/clang/AST/DeclObjC.h:391:64: error: 'nullopt' is not a member of 'std' 391 | ArrayRef SelLocs = std::nullopt); | ^~~~~~~ /usr/include/clang/AST/DeclObjC.h:391:64: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/DeclObjC.h: In member function 'llvm::ArrayRef clang::ObjCMethodDecl::parameters() const': /usr/include/clang/AST/DeclObjC.h:376:26: error: missing template arguments before '(' token 376 | return llvm::ArrayRef(const_cast(getParams()), NumParams); | ^ /usr/include/clang/AST/DeclObjC.h: In member function 'std::string clang::ObjCImplementationDecl::getNameAsString() const': /usr/include/clang/AST/DeclObjC.h:2713:69: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef)' 2713 | std::string getNameAsString() const { return std::string(getName()); } | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/clang/AST/DeclObjC.h:2713:69: note: candidate expects 3 arguments, 1 provided 2713 | std::string getNameAsString() const { return std::string(getName()); } | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/llvm/Frontend/OpenMP/OMPContext.h:19, from /usr/include/clang/AST/OpenMPClause.h:37, from /usr/include/clang/AST/DeclOpenMP.h:21, from /usr/include/clang/AST/RecursiveASTVisitor.h:23: /usr/include/llvm/ADT/BitVector.h: In member function 'llvm::BitVector::size_type llvm::BitVector::count() const': /usr/include/llvm/ADT/BitVector.h:158:24: error: 'popcount' is not a member of 'llvm'; did you mean 'count'? 158 | NumBits += llvm::popcount(Bit); | ^~~~~~~~ | count In file included from /usr/include/clang/Basic/Diagnostic.h:22: /usr/include/llvm/ADT/DenseMap.h: In instantiation of 'class llvm::SmallDenseMap': /usr/include/llvm/Frontend/OpenMP/OMPContext.h:151:39: required from here /usr/include/llvm/ADT/DenseMap.h:890:30: error: non-constant condition for static assertion 890 | static_assert(isPowerOf2_64(InlineBuckets), | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/llvm/ADT/DenseMap.h:890:30: in 'constexpr' expansion of 'llvm::isPowerOf2_64(4)' /usr/include/llvm/ADT/DenseMap.h:890:30: error: 'constexpr' call flows off the end of the function /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPVarListClause::getVarRefs() const': /usr/include/clang/AST/OpenMPClause.h:339:26: error: missing template arguments before '(' token 339 | return llvm::ArrayRef( | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPPrivateClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:2560:26: error: missing template arguments before '(' token 2560 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFirstprivateClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:2669:26: error: missing template arguments before '(' token 2669 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFirstprivateClause::getInits() const': /usr/include/clang/AST/OpenMPClause.h:2683:26: error: missing template arguments before '(' token 2683 | return llvm::ArrayRef(getPrivateCopies().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:2831:26: error: missing template arguments before '(' token 2831 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getSourceExprs() const': /usr/include/clang/AST/OpenMPClause.h:2845:26: error: missing template arguments before '(' token 2845 | return llvm::ArrayRef(getPrivateCopies().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getDestinationExprs() const': /usr/include/clang/AST/OpenMPClause.h:2859:26: error: missing template arguments before '(' token 2859 | return llvm::ArrayRef(getSourceExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLastprivateClause::getAssignmentOps() const': /usr/include/clang/AST/OpenMPClause.h:2872:26: error: missing template arguments before '(' token 2872 | return llvm::ArrayRef(getDestinationExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3160:26: error: missing template arguments before '(' token 3160 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getLHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3173:26: error: missing template arguments before '(' token 3173 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getRHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3188:26: error: missing template arguments before '(' token 3188 | return llvm::ArrayRef(getLHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getReductionOps() const': /usr/include/clang/AST/OpenMPClause.h:3202:26: error: missing template arguments before '(' token 3202 | return llvm::ArrayRef(getRHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getInscanCopyOps() const': /usr/include/clang/AST/OpenMPClause.h:3214:26: error: missing template arguments before '(' token 3214 | return llvm::ArrayRef(getReductionOps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getInscanCopyArrayTemps() const': /usr/include/clang/AST/OpenMPClause.h:3225:26: error: missing template arguments before '(' token 3225 | return llvm::ArrayRef(getInscanCopyOps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPReductionClause::getInscanCopyArrayElems() const': /usr/include/clang/AST/OpenMPClause.h:3237:26: error: missing template arguments before '(' token 3237 | return llvm::ArrayRef(getInscanCopyArrayTemps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3479:26: error: missing template arguments before '(' token 3479 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getLHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3492:26: error: missing template arguments before '(' token 3492 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getRHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3506:26: error: missing template arguments before '(' token 3506 | return llvm::ArrayRef(getLHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPTaskReductionClause::getReductionOps() const': /usr/include/clang/AST/OpenMPClause.h:3520:26: error: missing template arguments before '(' token 3520 | return llvm::ArrayRef(getRHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3710:26: error: missing template arguments before '(' token 3710 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getLHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3723:26: error: missing template arguments before '(' token 3723 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getRHSExprs() const': /usr/include/clang/AST/OpenMPClause.h:3737:26: error: missing template arguments before '(' token 3737 | return llvm::ArrayRef(getLHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getReductionOps() const': /usr/include/clang/AST/OpenMPClause.h:3751:26: error: missing template arguments before '(' token 3751 | return llvm::ArrayRef(getRHSExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPInReductionClause::getTaskgroupDescriptors() const': /usr/include/clang/AST/OpenMPClause.h:3762:26: error: missing template arguments before '(' token 3762 | return llvm::ArrayRef(getReductionOps().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getPrivates() const': /usr/include/clang/AST/OpenMPClause.h:3968:26: error: missing template arguments before '(' token 3968 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getInits() const': /usr/include/clang/AST/OpenMPClause.h:3975:26: error: missing template arguments before '(' token 3975 | return llvm::ArrayRef(getPrivates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getUpdates() const': /usr/include/clang/AST/OpenMPClause.h:3983:26: error: missing template arguments before '(' token 3983 | return llvm::ArrayRef(getInits().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getFinals() const': /usr/include/clang/AST/OpenMPClause.h:3991:26: error: missing template arguments before '(' token 3991 | return llvm::ArrayRef(getUpdates().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPLinearClause::getUsedExprs() const': /usr/include/clang/AST/OpenMPClause.h:3999:26: error: missing template arguments before '(' token 3999 | return llvm::ArrayRef(getFinals().end() + 2, varlist_size() + 1); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyinClause::getSourceExprs() const': /usr/include/clang/AST/OpenMPClause.h:4328:26: error: missing template arguments before '(' token 4328 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyinClause::getDestinationExprs() const': /usr/include/clang/AST/OpenMPClause.h:4341:26: error: missing template arguments before '(' token 4341 | return llvm::ArrayRef(getSourceExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyinClause::getAssignmentOps() const': /usr/include/clang/AST/OpenMPClause.h:4355:26: error: missing template arguments before '(' token 4355 | return llvm::ArrayRef(getDestinationExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyprivateClause::getSourceExprs() const': /usr/include/clang/AST/OpenMPClause.h:4493:26: error: missing template arguments before '(' token 4493 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyprivateClause::getDestinationExprs() const': /usr/include/clang/AST/OpenMPClause.h:4506:26: error: missing template arguments before '(' token 4506 | return llvm::ArrayRef(getSourceExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPCopyprivateClause::getAssignmentOps() const': /usr/include/clang/AST/OpenMPClause.h:4520:26: error: missing template arguments before '(' token 4520 | return llvm::ArrayRef(getDestinationExprs().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'clang::OMPMappableExprListClause::const_component_lists_iterator clang::OMPMappableExprListClause::component_lists_begin() const': /usr/include/clang/AST/OpenMPClause.h:5638:51: error: 'nullopt' is not a member of 'std' 5638 | SupportsMapper ? getUDMapperRefs() : std::nullopt); | ^~~~~~~ /usr/include/clang/AST/OpenMPClause.h:5638:51: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/OpenMPClause.h: In member function 'clang::OMPMappableExprListClause::const_component_lists_iterator clang::OMPMappableExprListClause::component_lists_end() const': /usr/include/clang/AST/OpenMPClause.h:5645:30: error: 'nullopt' is not a member of 'std' 5645 | SupportsMapper, std::nullopt); | ^~~~~~~ /usr/include/clang/AST/OpenMPClause.h:5645:30: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/OpenMPClause.h: In member function 'clang::OMPMappableExprListClause::const_component_lists_iterator clang::OMPMappableExprListClause::decl_component_lists_begin(const clang::ValueDecl*) const': /usr/include/clang/AST/OpenMPClause.h:5658:51: error: 'nullopt' is not a member of 'std' 5658 | SupportsMapper ? getUDMapperRefs() : std::nullopt); | ^~~~~~~ /usr/include/clang/AST/OpenMPClause.h:5658:51: note: 'std::nullopt' is only available from C++17 onwards In file included from /usr/include/c++/13/cassert:44, from /usr/include/clang/AST/OpenMPClause.h:41: /usr/include/clang/AST/OpenMPClause.h: In constructor 'clang::OMPMapClause::OMPMapClause(llvm::ArrayRef, llvm::ArrayRef, clang::NestedNameSpecifierLoc, clang::DeclarationNameInfo, clang::OpenMPMapClauseKind, bool, clang::SourceLocation, const clang::OMPVarListLocTy&, const clang::OMPMappableExprListSizeTy&)': /usr/include/clang/AST/OpenMPClause.h:5810:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 5810 | assert(std::size(MapTypeModifiers) == MapModifiers.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h:5814:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 5814 | assert(std::size(MapTypeModifiersLoc) == MapModifiersLoc.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPMapClause::getMapTypeModifiers() const': /usr/include/clang/AST/OpenMPClause.h:5948:26: error: missing template arguments before '(' token 5948 | return llvm::ArrayRef(MapTypeModifiers); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPMapClause::getMapTypeModifiersLoc() const': /usr/include/clang/AST/OpenMPClause.h:5953:26: error: missing template arguments before '(' token 5953 | return llvm::ArrayRef(MapTypeModifiersLoc); | ^ /usr/include/clang/AST/OpenMPClause.h: In constructor 'clang::OMPToClause::OMPToClause(llvm::ArrayRef, llvm::ArrayRef, clang::NestedNameSpecifierLoc, clang::DeclarationNameInfo, const clang::OMPVarListLocTy&, const clang::OMPMappableExprListSizeTy&)': /usr/include/clang/AST/OpenMPClause.h:6788:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6788 | assert(std::size(MotionModifiers) == TheMotionModifiers.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h:6792:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6792 | assert(std::size(MotionModifiersLoc) == TheMotionModifiersLoc.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPToClause::getMotionModifiers() const': /usr/include/clang/AST/OpenMPClause.h:6904:26: error: missing template arguments before '(' token 6904 | return llvm::ArrayRef(MotionModifiers); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPToClause::getMotionModifiersLoc() const': /usr/include/clang/AST/OpenMPClause.h:6909:26: error: missing template arguments before '(' token 6909 | return llvm::ArrayRef(MotionModifiersLoc); | ^ /usr/include/clang/AST/OpenMPClause.h: In constructor 'clang::OMPFromClause::OMPFromClause(llvm::ArrayRef, llvm::ArrayRef, clang::NestedNameSpecifierLoc, clang::DeclarationNameInfo, const clang::OMPVarListLocTy&, const clang::OMPMappableExprListSizeTy&)': /usr/include/clang/AST/OpenMPClause.h:6989:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6989 | assert(std::size(MotionModifiers) == TheMotionModifiers.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h:6993:5: error: 'size' is not a member of 'std'; did you mean 'llvm::size'? 6993 | assert(std::size(MotionModifiersLoc) == TheMotionModifiersLoc.size() && | ^~~~~~ /usr/include/llvm/ADT/STLExtras.h:1716:6: note: 'llvm::size' declared here 1716 | auto size(R &&Range, | ^~~~ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFromClause::getMotionModifiers() const': /usr/include/clang/AST/OpenMPClause.h:7104:26: error: missing template arguments before '(' token 7104 | return llvm::ArrayRef(MotionModifiers); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPFromClause::getMotionModifiersLoc() const': /usr/include/clang/AST/OpenMPClause.h:7109:26: error: missing template arguments before '(' token 7109 | return llvm::ArrayRef(MotionModifiersLoc); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPUseDevicePtrClause::getPrivateCopies() const': /usr/include/clang/AST/OpenMPClause.h:7204:26: error: missing template arguments before '(' token 7204 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPUseDevicePtrClause::getInits() const': /usr/include/clang/AST/OpenMPClause.h:7218:26: error: missing template arguments before '(' token 7218 | return llvm::ArrayRef(getPrivateCopies().end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::ArrayRef clang::OMPNontemporalClause::getPrivateRefs() const': /usr/include/clang/AST/OpenMPClause.h:7652:26: error: missing template arguments before '(' token 7652 | return llvm::ArrayRef(varlist_end(), varlist_size()); | ^ /usr/include/clang/AST/OpenMPClause.h: In member function 'llvm::MutableArrayRef clang::OMPChildren::getClauses()': /usr/include/clang/AST/OpenMPClause.h:8934:33: error: missing template arguments before '(' token 8934 | return llvm::MutableArrayRef(getTrailingObjects(), | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPDeclarativeDirective::getClauses()': /usr/include/clang/AST/DeclOpenMP.h:37:19: error: 'nullopt' is not a member of 'std' 37 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/DeclOpenMP.h:37:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::ArrayRef clang::OMPDeclarativeDirective::clauses() const': /usr/include/clang/AST/DeclOpenMP.h:93:19: error: 'nullopt' is not a member of 'std' 93 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/DeclOpenMP.h:93:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::ArrayRef clang::OMPThreadPrivateDecl::getVars() const': /usr/include/clang/AST/DeclOpenMP.h:121:26: error: missing template arguments before '(' token 121 | return llvm::ArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPThreadPrivateDecl::getVars()': /usr/include/clang/AST/DeclOpenMP.h:126:33: error: missing template arguments before '(' token 126 | return llvm::MutableArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::ArrayRef clang::OMPAllocateDecl::getVars() const': /usr/include/clang/AST/DeclOpenMP.h:484:26: error: missing template arguments before '(' token 484 | return llvm::ArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/clang/AST/DeclOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPAllocateDecl::getVars()': /usr/include/clang/AST/DeclOpenMP.h:489:33: error: missing template arguments before '(' token 489 | return llvm::MutableArrayRef(Storage, Data->getNumChildren()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprCXX.h:849:48: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprCXX.h:849:48: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:27: /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:2265:45: error: 'std::optional' has not been declared 2265 | SourceRange TypeIdParens, std::optional ArraySize, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2265:53: error: expected ',' or '...' before '<' token 2265 | SourceRange TypeIdParens, std::optional ArraySize, | ^ /usr/include/clang/AST/ExprCXX.h:2280:41: error: 'std::optional' has not been declared 2280 | SourceRange TypeIdParens, std::optional ArraySize, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2280:49: error: expected ',' or '...' before '<' token 2280 | SourceRange TypeIdParens, std::optional ArraySize, | ^ /usr/include/clang/AST/ExprCXX.h:2325:8: error: 'optional' in namespace 'std' does not name a template type 2325 | std::optional getArraySize() { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2325:3: note: 'std::optional' is only available from C++17 onwards 2325 | std::optional getArraySize() { | ^~~ /usr/include/clang/AST/ExprCXX.h:2339:8: error: 'optional' in namespace 'std' does not name a template type 2339 | std::optional getArraySize() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:2339:3: note: 'std::optional' is only available from C++17 onwards 2339 | std::optional getArraySize() const { | ^~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprCXX.h:2544:58: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprCXX.h:2544:58: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::TypeTraitExpr::getArgs() const': /usr/include/clang/AST/ExprCXX.h:2799:26: error: missing template arguments before '(' token 2799 | return llvm::ArrayRef(getTrailingObjects(), getNumArgs()); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/llvm/Support/TrailingObjects.h:77:22: required from 'class llvm::trailing_objects_internal::AlignmentCalcHelper >' /usr/include/llvm/Support/TrailingObjects.h:212:7: required from 'class llvm::TrailingObjects >' /usr/include/clang/AST/ExprCXX.h:3418:21: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/llvm/Support/TrailingObjects.h:77:22: required from 'class llvm::trailing_objects_internal::AlignmentCalcHelper >' /usr/include/llvm/Support/TrailingObjects.h:212:7: required from 'class llvm::TrailingObjects >' /usr/include/clang/AST/ExprCXX.h:3418:21: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef > clang::ExprWithCleanups::getObjects() const': /usr/include/clang/AST/ExprCXX.h:3445:26: error: missing template arguments before '(' token 3445 | return llvm::ArrayRef(getTrailingObjects(), getNumObjects()); | ^ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4141:26: error: 'std::optional' has not been declared 4141 | std::optional NumExpansions) | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4141:34: error: expected ',' or '...' before '<' token 4141 | std::optional NumExpansions) | ^ /usr/include/clang/AST/ExprCXX.h:4164:8: error: 'optional' in namespace 'std' does not name a template type 4164 | std::optional getNumExpansions() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4164:3: note: 'std::optional' is only available from C++17 onwards 4164 | std::optional getNumExpansions() const { | ^~~ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::PackExpansionExpr::PackExpansionExpr(clang::QualType, clang::Expr*, clang::SourceLocation, int)': /usr/include/clang/AST/ExprCXX.h:4145:39: error: invalid type argument of unary '*' (have 'unsigned int') 4145 | NumExpansions(NumExpansions ? *NumExpansions + 1 : 0), | ^~~~~~~~~~~~~~ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4235:23: error: 'std::optional' has not been declared 4235 | std::optional Length, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4235:31: error: expected ',' or '...' before '<' token 4235 | std::optional Length, | ^ /usr/include/clang/AST/ExprCXX.h:4256:15: error: 'std::optional' has not been declared 4256 | std::optional Length = std::nullopt, | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4256:23: error: expected ',' or '...' before '<' token 4256 | std::optional Length = std::nullopt, | ^ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::SizeOfPackExpr::SizeOfPackExpr(clang::QualType, clang::SourceLocation, clang::NamedDecl*, clang::SourceLocation, clang::SourceLocation, int)': /usr/include/clang/AST/ExprCXX.h:4239:25: error: invalid type argument of unary '*' (have 'unsigned int') 4239 | Length(Length ? *Length : PartialArgs.size()), Pack(Pack) { | ^~~~~~~ /usr/include/clang/AST/ExprCXX.h:4239:35: error: 'PartialArgs' was not declared in this scope 4239 | Length(Length ? *Length : PartialArgs.size()), Pack(Pack) { | ^~~~~~~~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::SizeOfPackExpr::getPartialArguments() const': /usr/include/clang/AST/ExprCXX.h:4296:26: error: missing template arguments before '(' token 4296 | return llvm::ArrayRef(Args, Args + Length); | ^ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4340:37: error: 'std::optional' has not been declared 4340 | std::optional PackIndex, bool RefParam) | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4340:45: error: expected ',' or '...' before '<' token 4340 | std::optional PackIndex, bool RefParam) | ^ /usr/include/clang/AST/ExprCXX.h:4366:8: error: 'optional' in namespace 'std' does not name a template type 4366 | std::optional getPackIndex() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4366:3: note: 'std::optional' is only available from C++17 onwards 4366 | std::optional getPackIndex() const { | ^~~ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::SubstNonTypeTemplateParmExpr::SubstNonTypeTemplateParmExpr(clang::QualType, clang::ExprValueKind, clang::SourceLocation, clang::Expr*, clang::Decl*, unsigned int, int)': /usr/include/clang/AST/ExprCXX.h:4343:46: error: 'RefParam' was not declared in this scope 4343 | AssociatedDeclAndRef(AssociatedDecl, RefParam), Index(Index), | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4344:31: error: invalid type argument of unary '*' (have 'unsigned int') 4344 | PackIndex(PackIndex ? *PackIndex + 1 : 0) { | ^~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprCXX.h:4567:63: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprCXX.h:4567:63: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprCXX.h: At global scope: /usr/include/clang/AST/ExprCXX.h:4693:20: error: 'std::optional' has not been declared 4693 | std::optional NumExpansions) | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4693:28: error: expected ',' or '...' before '<' token 4693 | std::optional NumExpansions) | ^ /usr/include/clang/AST/ExprCXX.h:4730:8: error: 'optional' in namespace 'std' does not name a template type 4730 | std::optional getNumExpansions() const { | ^~~~~~~~ /usr/include/clang/AST/ExprCXX.h:4730:3: note: 'std::optional' is only available from C++17 onwards 4730 | std::optional getNumExpansions() const { | ^~~ /usr/include/clang/AST/ExprCXX.h: In constructor 'clang::CXXFoldExpr::CXXFoldExpr(clang::QualType, clang::UnresolvedLookupExpr*, clang::SourceLocation, clang::Expr*, clang::BinaryOperatorKind, clang::SourceLocation, clang::Expr*, clang::SourceLocation, int)': /usr/include/clang/AST/ExprCXX.h:4696:39: error: invalid type argument of unary '*' (have 'unsigned int') 4696 | NumExpansions(NumExpansions ? *NumExpansions + 1 : 0), Opcode(Opcode) { | ^~~~~~~~~~~~~~ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::CXXParenListInitExpr::getInitExprs()': /usr/include/clang/AST/ExprCXX.h:4837:20: error: missing template arguments before '(' token 4837 | return ArrayRef(getTrailingObjects(), NumExprs); | ^ /usr/include/clang/AST/ExprCXX.h: In member function 'const llvm::ArrayRef clang::CXXParenListInitExpr::getInitExprs() const': /usr/include/clang/AST/ExprCXX.h:4841:20: error: missing template arguments before '(' token 4841 | return ArrayRef(getTrailingObjects(), NumExprs); | ^ /usr/include/clang/AST/ExprCXX.h: In member function 'llvm::ArrayRef clang::CXXParenListInitExpr::getUserSpecifiedInitExprs()': /usr/include/clang/AST/ExprCXX.h:4845:20: error: missing template arguments before '(' token 4845 | return ArrayRef(getTrailingObjects(), NumUserSpecifiedExprs); | ^ /usr/include/clang/AST/ExprCXX.h: In member function 'const llvm::ArrayRef clang::CXXParenListInitExpr::getUserSpecifiedInitExprs() const': /usr/include/clang/AST/ExprCXX.h:4849:20: error: missing template arguments before '(' token 4849 | return ArrayRef(getTrailingObjects(), NumUserSpecifiedExprs); | ^ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprConcepts.h:216:66: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprConcepts.h:216:66: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprConcepts.h:336:56: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprConcepts.h:336:56: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprConcepts.h:283:33: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprConcepts.h:283:33: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:29: /usr/include/clang/AST/ExprObjC.h: At global scope: /usr/include/clang/AST/ExprObjC.h:274:8: error: 'optional' in namespace 'std' does not name a template type 274 | std::optional NumExpansions; | ^~~~~~~~ /usr/include/clang/AST/ExprObjC.h:274:3: note: 'std::optional' is only available from C++17 onwards 274 | std::optional NumExpansions; | ^~~ /usr/include/clang/AST/ExprObjC.h: In member function 'clang::ObjCDictionaryElement clang::ObjCDictionaryLiteral::getKeyValueElement(unsigned int) const': /usr/include/clang/AST/ExprObjC.h:365:42: error: 'nullopt' is not a member of 'std' 365 | std::nullopt}; | ^~~~~~~ /usr/include/clang/AST/ExprObjC.h:365:42: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/ExprObjC.h:365:49: error: too many initializers for 'clang::ObjCDictionaryElement' 365 | std::nullopt}; | ^ /usr/include/clang/AST/ExprObjC.h:371:16: error: 'struct clang::ObjCDictionaryElement' has no member named 'NumExpansions' 371 | Result.NumExpansions = Expansion.NumExpansionsPlusOne - 1; | ^~~~~~~~~~~~~ /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/AST/ExprObjC.h:645:65: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/AST/ExprObjC.h:645:65: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/AST/ExprObjC.h: In member function 'clang::SourceLocation clang::ObjCMessageExpr::getSelectorLoc(unsigned int) const': /usr/include/clang/AST/ExprObjC.h:1420:25: error: missing template arguments before '(' token 1420 | llvm::ArrayRef(const_cast(getArgs()), getNumArgs()), | ^ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:30: /usr/include/clang/AST/ExprOpenMP.h: In member function 'llvm::ArrayRef clang::OMPArrayShapingExpr::getDimensions() const': /usr/include/clang/AST/ExprOpenMP.h:205:26: error: missing template arguments before '(' token 205 | return llvm::ArrayRef(getTrailingObjects(), NumDims); | ^ /usr/include/clang/AST/ExprOpenMP.h: In member function 'llvm::ArrayRef clang::OMPArrayShapingExpr::getBracketsRanges() const': /usr/include/clang/AST/ExprOpenMP.h:210:26: error: missing template arguments before '(' token 210 | return llvm::ArrayRef(getTrailingObjects(), NumDims); | ^ In file included from /usr/include/clang/AST/RecursiveASTVisitor.h:37: /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPExecutableDirective::getClauses()': /usr/include/clang/AST/StmtOpenMP.h:280:19: error: 'nullopt' is not a member of 'std' 280 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/StmtOpenMP.h:280:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/StmtOpenMP.h: In static member function 'static llvm::iterator_range clang::OMPExecutableDirective::used_clauses_children(llvm::ArrayRef)': /usr/include/clang/AST/StmtOpenMP.h:404:36: error: expected primary-expression before '(' token 404 | used_clauses_child_iterator(llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ /usr/include/clang/AST/StmtOpenMP.h:404:51: error: missing template arguments before '(' token 404 | used_clauses_child_iterator(llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ /usr/include/clang/AST/StmtOpenMP.h:404:78: error: could not convert '{clang::OMPExecutableDirective::used_clauses_child_iterator(Clauses), }' from '' to 'llvm::iterator_range' 404 | used_clauses_child_iterator(llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ | | | /usr/include/clang/AST/StmtOpenMP.h: In static member function 'static llvm::iterator_range > clang::OMPExecutableDirective::getClausesOfKind(llvm::ArrayRef)': /usr/include/clang/AST/StmtOpenMP.h:448:53: error: expected primary-expression before '(' token 448 | specific_clause_iterator( | ^ /usr/include/clang/AST/StmtOpenMP.h:449:31: error: missing template arguments before '(' token 449 | llvm::ArrayRef(Clauses.end(), (size_t)0))}; | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::ArrayRef clang::OMPExecutableDirective::clauses() const': /usr/include/clang/AST/StmtOpenMP.h:575:19: error: 'nullopt' is not a member of 'std' 575 | return std::nullopt; | ^~~~~~~ /usr/include/clang/AST/StmtOpenMP.h:575:19: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getCounters()': /usr/include/clang/AST/StmtOpenMP.h:1070:33: error: missing template arguments before '(' token 1070 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getPrivateCounters()': /usr/include/clang/AST/StmtOpenMP.h:1078:33: error: missing template arguments before '(' token 1078 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getInits()': /usr/include/clang/AST/StmtOpenMP.h:1086:33: error: missing template arguments before '(' token 1086 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getUpdates()': /usr/include/clang/AST/StmtOpenMP.h:1094:33: error: missing template arguments before '(' token 1094 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getFinals()': /usr/include/clang/AST/StmtOpenMP.h:1102:33: error: missing template arguments before '(' token 1102 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getDependentCounters()': /usr/include/clang/AST/StmtOpenMP.h:1110:33: error: missing template arguments before '(' token 1110 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getDependentInits()': /usr/include/clang/AST/StmtOpenMP.h:1118:33: error: missing template arguments before '(' token 1118 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ /usr/include/clang/AST/StmtOpenMP.h: In member function 'llvm::MutableArrayRef clang::OMPLoopDirective::getFinalsConditions()': /usr/include/clang/AST/StmtOpenMP.h:1126:33: error: missing template arguments before '(' token 1126 | return llvm::MutableArrayRef(Storage, getLoopsNumber()); | ^ In file included from /usr/include/clang/Basic/FileEntry.h:17, from /usr/include/clang/Basic/SourceManager.h:38, from /builddir/build/BUILD/cvise-2.4.0/clang_delta/BinOpSimplification.cpp:21: /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:35:34: error: invalid use of '::' 35 | constexpr CustomizableOptional(std::nullopt_t) {} | ^~~ /usr/include/clang/Basic/CustomizableOptional.h:35:51: error: expected ';' at end of member declaration 35 | constexpr CustomizableOptional(std::nullopt_t) {} | ^ | ; /usr/include/clang/Basic/CustomizableOptional.h:45:49: error: expected ')' before ',' token 45 | constexpr CustomizableOptional(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/CustomizableOptional.h:49:45: error: 'optional' in namespace 'std' does not name a template type 49 | constexpr CustomizableOptional(const std::optional &y) | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:49:40: note: 'std::optional' is only available from C++17 onwards 49 | constexpr CustomizableOptional(const std::optional &y) | ^~~ /usr/include/clang/Basic/CustomizableOptional.h:49:53: error: expected ',' or '...' before '<' token 49 | constexpr CustomizableOptional(const std::optional &y) | ^ /usr/include/clang/Basic/CustomizableOptional.h:51:47: error: expected ')' before '<' token 51 | constexpr CustomizableOptional(std::optional &&y) | ~ ^ | ) /usr/include/clang/Basic/CustomizableOptional.h:102:26: error: 'optional' in namespace 'std' does not name a template type 102 | explicit operator std::optional &() const & { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:102:21: note: 'std::optional' is only available from C++17 onwards 102 | explicit operator std::optional &() const & { | ^~~ /usr/include/clang/Basic/CustomizableOptional.h:105:26: error: 'optional' in namespace 'std' does not name a template type 105 | explicit operator std::optional &&() const && { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:105:21: note: 'std::optional' is only available from C++17 onwards 105 | explicit operator std::optional &&() const && { | ^~~ /usr/include/clang/Basic/CustomizableOptional.h: In constructor 'constexpr clang::CustomizableOptional::CustomizableOptional(const T&)': /usr/include/clang/Basic/CustomizableOptional.h:37:61: error: 'in_place' is not a member of 'std' 37 | constexpr CustomizableOptional(const T &y) : Storage(std::in_place, y) {} | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:37:61: note: 'std::in_place' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: In constructor 'constexpr clang::CustomizableOptional::CustomizableOptional(T&&)': /usr/include/clang/Basic/CustomizableOptional.h:41:22: error: 'in_place' is not a member of 'std' 41 | : Storage(std::in_place, std::move(y)) {} | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:41:22: note: 'std::in_place' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: In constructor 'constexpr clang::CustomizableOptional::CustomizableOptional(int)': /usr/include/clang/Basic/CustomizableOptional.h:50:30: error: 'y' was not declared in this scope 50 | : CustomizableOptional(y ? *y : CustomizableOptional()) {} | ^ /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:111:59: error: expected constructor, destructor, or type conversion before ';' token 111 | CustomizableOptional(const T &) -> CustomizableOptional; | ^ /usr/include/clang/Basic/CustomizableOptional.h:159:66: error: 'std::nullopt_t' has not been declared 159 | constexpr bool operator==(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:164:16: error: declaration of 'operator==' as non-function 164 | constexpr bool operator==(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:164:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 164 | constexpr bool operator==(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:164:43: error: expected primary-expression before 'const' 164 | constexpr bool operator==(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:169:66: error: 'std::nullopt_t' has not been declared 169 | constexpr bool operator!=(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator!=(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:170:22: error: 'nullopt' is not a member of 'std' 170 | return !(X == std::nullopt); | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:170:22: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:174:16: error: declaration of 'operator!=' as non-function 174 | constexpr bool operator!=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:174:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 174 | constexpr bool operator!=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:174:43: error: expected primary-expression before 'const' 174 | constexpr bool operator!=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:179:64: error: 'std::nullopt_t' has not been declared 179 | constexpr bool operator<(const CustomizableOptional &, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:184:16: error: declaration of 'operator<' as non-function 184 | constexpr bool operator<(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:184:31: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 184 | constexpr bool operator<(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:184:42: error: expected primary-expression before 'const' 184 | constexpr bool operator<(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:189:66: error: 'std::nullopt_t' has not been declared 189 | constexpr bool operator<=(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator<=(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:190:17: error: 'nullopt' is not a member of 'std' 190 | return !(std::nullopt < X); | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:190:17: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:194:16: error: declaration of 'operator<=' as non-function 194 | constexpr bool operator<=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:194:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 194 | constexpr bool operator<=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:194:43: error: expected primary-expression before 'const' 194 | constexpr bool operator<=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:199:65: error: 'std::nullopt_t' has not been declared 199 | constexpr bool operator>(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator>(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:200:15: error: 'nullopt' is not a member of 'std' 200 | return std::nullopt < X; | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:200:15: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:204:16: error: declaration of 'operator>' as non-function 204 | constexpr bool operator>(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:204:31: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 204 | constexpr bool operator>(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:204:42: error: expected primary-expression before 'const' 204 | constexpr bool operator>(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ /usr/include/clang/Basic/CustomizableOptional.h:209:66: error: 'std::nullopt_t' has not been declared 209 | constexpr bool operator>=(const CustomizableOptional &X, std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h: In function 'constexpr bool clang::operator>=(const CustomizableOptional&, int)': /usr/include/clang/Basic/CustomizableOptional.h:210:15: error: 'nullopt' is not a member of 'std' 210 | return std::nullopt <= X; | ^~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:210:15: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/CustomizableOptional.h: At global scope: /usr/include/clang/Basic/CustomizableOptional.h:214:16: error: declaration of 'operator>=' as non-function 214 | constexpr bool operator>=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~ /usr/include/clang/Basic/CustomizableOptional.h:214:32: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'? 214 | constexpr bool operator>=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~~~~~ | nullptr_t /usr/include/clang/Basic/CustomizableOptional.h:214:43: error: expected primary-expression before 'const' 214 | constexpr bool operator>=(std::nullopt_t, const CustomizableOptional &X) { | ^~~~~ In file included from /usr/include/clang/Basic/FileEntry.h:18: /usr/include/clang/Basic/DirectoryEntry.h:134:51: error: expected ')' before ',' token 134 | explicit MapEntryOptionalStorage(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/DirectoryEntry.h:180:43: error: expected ')' before ',' token 180 | explicit OptionalStorage(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/DirectoryEntry.h:181:38: error: expected unqualified-id before ',' token 181 | : StorageImpl(std::in_place_t{}, std::forward(Args)...) {} | ^ /usr/include/clang/Basic/DirectoryEntry.h:269:56: error: invalid use of '::' 269 | OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr(std::nullopt_t) {} | ^~~ /usr/include/clang/Basic/DirectoryEntry.h:269:73: error: expected ';' at end of member declaration 269 | OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr(std::nullopt_t) {} | ^ | ; /usr/include/clang/Basic/DirectoryEntry.h:277:18: error: 'std::nullopt_t' has not been declared 277 | operator=(std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/DirectoryEntry.h: In member function 'clang::OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr& clang::OptionalDirectoryEntryRefDegradesToDirectoryEntryPtr::operator=(int)': /usr/include/clang/Basic/DirectoryEntry.h:278:47: error: 'nullopt' is not a member of 'std' 278 | OptionalDirectoryEntryRef::operator=(std::nullopt); | ^~~~~~~ /usr/include/clang/Basic/DirectoryEntry.h:278:47: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct': /usr/include/llvm/ADT/PointerUnion.h:119:43: required from 'class llvm::PointerUnion' /usr/include/clang/Basic/FileEntry.h:124:51: required from here /usr/include/llvm/ADT/STLExtras.h:170:8: error: incomplete type 'llvm::detail::TypesAreDistinct' used in nested name specifier 170 | struct TypesAreDistinct | ^~~~~~~~~~~~~~~~ /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion': /usr/include/clang/Basic/FileEntry.h:124:51: required from here /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct' 119 | static_assert(TypesAreDistinct::value, | ^~~~~ /usr/include/clang/Basic/FileEntry.h: At global scope: /usr/include/clang/Basic/FileEntry.h:221:43: error: expected ')' before ',' token 221 | explicit OptionalStorage(std::in_place_t, ArgTypes &&...Args) | ~ ^ | ) /usr/include/clang/Basic/FileEntry.h:222:38: error: expected unqualified-id before ',' token 222 | : StorageImpl(std::in_place_t{}, std::forward(Args)...) {} | ^ /usr/include/clang/Basic/FileEntry.h:305:46: error: invalid use of '::' 305 | OptionalFileEntryRefDegradesToFileEntryPtr(std::nullopt_t) {} | ^~~ /usr/include/clang/Basic/FileEntry.h:305:63: error: expected ';' at end of member declaration 305 | OptionalFileEntryRefDegradesToFileEntryPtr(std::nullopt_t) {} | ^ | ; /usr/include/clang/Basic/FileEntry.h:311:62: error: 'std::nullopt_t' has not been declared 311 | OptionalFileEntryRefDegradesToFileEntryPtr &operator=(std::nullopt_t) { | ^~~~~~~~~ /usr/include/clang/Basic/FileEntry.h: In member function 'clang::OptionalFileEntryRefDegradesToFileEntryPtr& clang::OptionalFileEntryRefDegradesToFileEntryPtr::operator=(int)': /usr/include/clang/Basic/FileEntry.h:312:42: error: 'nullopt' is not a member of 'std' 312 | OptionalFileEntryRef::operator=(std::nullopt); | ^~~~~~~ /usr/include/clang/Basic/FileEntry.h:312:42: note: 'std::nullopt' is only available from C++17 onwards In file included from /usr/include/llvm/Support/FormatProviders.h:21, from /usr/include/llvm/Support/Chrono.h:13, from /usr/include/llvm/Support/FileSystem.h:33, from /usr/include/clang/Basic/FileManager.h:29, from /usr/include/clang/Basic/SourceManager.h:39: /usr/include/llvm/Support/NativeFormatting.h: At global scope: /usr/include/llvm/Support/NativeFormatting.h:41:21: error: 'std::optional' has not been declared 41 | std::optional Width = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/NativeFormatting.h:41:29: error: expected ',' or '...' before '<' token 41 | std::optional Width = std::nullopt); | ^ /usr/include/llvm/Support/NativeFormatting.h:43:24: error: 'std::optional' has not been declared 43 | std::optional Precision = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/NativeFormatting.h:43:32: error: expected ',' or '...' before '<' token 43 | std::optional Precision = std::nullopt); | ^ /usr/include/llvm/Support/FormatProviders.h:32:17: error: 'is_one_of' was not declared in this scope; did you mean 'none_of'? 32 | bool, is_one_of::value> {}; | ^ /usr/include/c++/13/type_traits:62:12: note: provided for 'template struct std::integral_constant' 62 | struct integral_constant | ^~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:34:57: error: expected '{' before '::' token 34 | long long, unsigned long long>::value> {}; | ^~ /usr/include/llvm/Support/FormatProviders.h:43:37: error: 'is_one_of' was not declared in this scope; did you mean 'none_of'? 43 | is_one_of::value> { | ^~~~~~~~~ | none_of /usr/include/llvm/Support/FormatProviders.h:43:70: error: wrong number of template arguments (4, should be 2) 43 | is_one_of::value> { | ^ /usr/include/c++/13/type_traits:62:12: note: provided for 'template struct std::integral_constant' 62 | struct integral_constant | ^~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:43:71: error: expected '{' before '::' token 43 | is_one_of::value> { | ^~ /usr/include/llvm/Support/FormatProviders.h:62:15: error: 'optional' in namespace 'std' does not name a template type 62 | static std::optional parseNumericPrecision(StringRef Str) { | ^~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:62:10: note: 'std::optional' is only available from C++17 onwards 62 | static std::optional parseNumericPrecision(StringRef Str) { | ^~~ /usr/include/llvm/Support/FormatProviders.h: In instantiation of 'struct llvm::detail::use_pointer_formatter >': /usr/include/llvm/Support/FormatProviders.h:219:33: recursively required by substitution of 'template struct llvm::format_provider::value, void>::type> [with T = std::__cxx11::basic_string]' /usr/include/llvm/Support/FormatProviders.h:219:33: required from here /usr/include/llvm/Support/FormatProviders.h:54:63: error: incomplete type 'llvm::detail::is_cstring >' used in nested name specifier 54 | !is_cstring::value> {}; | ^~~~~ /usr/include/llvm/Support/FormatProviders.h: In instantiation of 'struct llvm::detail::use_pointer_formatter': /usr/include/llvm/Support/FormatProviders.h:241:27: recursively required by substitution of 'template struct llvm::format_provider::value, void>::type> [with T = int]' /usr/include/llvm/Support/FormatProviders.h:241:27: required from here /usr/include/llvm/Support/FormatProviders.h:54:63: error: incomplete type 'llvm::detail::is_cstring' used in nested name specifier /usr/include/llvm/Support/FormatProviders.h: In static member function 'static void llvm::format_provider::value, void>::type>::format(const char&, llvm::raw_ostream&, llvm::StringRef)': /usr/include/llvm/Support/FormatProviders.h:241:29: error: 'format' is not a member of 'llvm::format_provider' 241 | format_provider::format(X, Stream, Style); | ^~~~~~ /usr/include/llvm/Support/FormatProviders.h: In static member function 'static void llvm::format_provider::value, void>::type>::format(const T&, llvm::raw_ostream&, llvm::StringRef)': /usr/include/llvm/Support/FormatProviders.h:315:10: error: 'optional' is not a member of 'std' 315 | std::optional Precision = parseNumericPrecision(Style); | ^~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:315:10: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/FormatProviders.h:315:25: error: expected primary-expression before '>' token 315 | std::optional Precision = parseNumericPrecision(Style); | ^ /usr/include/llvm/Support/FormatProviders.h:315:27: error: 'Precision' was not declared in this scope 315 | std::optional Precision = parseNumericPrecision(Style); | ^~~~~~~~~ /usr/include/llvm/Support/FormatProviders.h:315:39: error: there are no arguments to 'parseNumericPrecision' that depend on a template parameter, so a declaration of 'parseNumericPrecision' must be available [-fpermissive] 315 | std::optional Precision = parseNumericPrecision(Style); | ^~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/llvm/Support/Error.h:18, from /usr/include/llvm/Support/FileSystem.h:34: /usr/include/llvm/ADT/StringExtras.h: In function 'std::string llvm::toString(const APInt&, unsigned int, bool, bool)': /usr/include/llvm/ADT/StringExtras.h:322:29: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef)' 322 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/ADT/StringExtras.h:322:29: note: candidate expects 3 arguments, 1 provided 322 | return std::string(S.str()); | ^ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided In file included from /usr/include/llvm/Support/Error.h:26: /usr/include/llvm/Support/Format.h: At global scope: /usr/include/llvm/Support/Format.h:83:22: error: 'is_scalar_v' is not a member of 'std'; did you mean 'is_scalar'? 83 | static_assert(std::is_scalar_v, | ^~~~~~~~~~~ | is_scalar /usr/include/llvm/Support/Format.h:83:37: error: expected primary-expression before '>' token 83 | static_assert(std::is_scalar_v, | ^ /usr/include/llvm/Support/Format.h:83:38: error: expected primary-expression before ',' token 83 | static_assert(std::is_scalar_v, | ^ /usr/include/llvm/Support/Format.h:219:8: error: 'optional' in namespace 'std' does not name a template type 219 | std::optional FirstByteOffset; | ^~~~~~~~ /usr/include/llvm/Support/Format.h:219:3: note: 'std::optional' is only available from C++17 onwards 219 | std::optional FirstByteOffset; | ^~~ /usr/include/llvm/Support/Format.h:228:57: error: 'std::optional' has not been declared 228 | FormattedBytes(ArrayRef B, uint32_t IL, std::optional O, | ^~~~~~~~ /usr/include/llvm/Support/Format.h:228:65: error: expected ',' or '...' before '<' token 228 | FormattedBytes(ArrayRef B, uint32_t IL, std::optional O, | ^ /usr/include/llvm/Support/Format.h: In constructor 'llvm::FormattedBytes::FormattedBytes(llvm::ArrayRef, uint32_t, int)': /usr/include/llvm/Support/Format.h:230:19: error: class 'llvm::FormattedBytes' does not have any field named 'FirstByteOffset' 230 | : Bytes(B), FirstByteOffset(O), IndentLevel(IL), NumPerLine(NPL), | ^~~~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:230:35: error: 'O' was not declared in this scope 230 | : Bytes(B), FirstByteOffset(O), IndentLevel(IL), NumPerLine(NPL), | ^ /usr/include/llvm/Support/Format.h:230:67: error: 'NPL' was not declared in this scope 230 | : Bytes(B), FirstByteOffset(O), IndentLevel(IL), NumPerLine(NPL), | ^~~ /usr/include/llvm/Support/Format.h:231:23: error: 'BGS' was not declared in this scope 231 | ByteGroupSize(BGS), Upper(U), ASCII(A) { | ^~~ /usr/include/llvm/Support/Format.h:231:35: error: 'U' was not declared in this scope 231 | ByteGroupSize(BGS), Upper(U), ASCII(A) { | ^ /usr/include/llvm/Support/Format.h:231:45: error: 'A' was not declared in this scope 231 | ByteGroupSize(BGS), Upper(U), ASCII(A) { | ^ /usr/include/llvm/Support/Format.h: At global scope: /usr/include/llvm/Support/Format.h:240:19: error: 'std::optional' has not been declared 240 | std::optional FirstByteOffset = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/Format.h:240:27: error: expected ',' or '...' before '<' token 240 | std::optional FirstByteOffset = std::nullopt, | ^ /usr/include/llvm/Support/Format.h: In function 'llvm::FormattedBytes llvm::format_bytes(ArrayRef, int)': /usr/include/llvm/Support/Format.h:243:32: error: 'IndentLevel' was not declared in this scope 243 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~ /usr/include/llvm/Support/Format.h:243:45: error: 'FirstByteOffset' was not declared in this scope 243 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:243:62: error: 'NumPerLine' was not declared in this scope 243 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~ /usr/include/llvm/Support/Format.h:244:25: error: 'ByteGroupSize' was not declared in this scope 244 | ByteGroupSize, Upper, false); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:244:40: error: 'Upper' was not declared in this scope; did you mean 'llvm::HexPrintStyle::Upper'? 244 | ByteGroupSize, Upper, false); | ^~~~~ | llvm::HexPrintStyle::Upper /usr/include/llvm/Support/NativeFormatting.h:22:28: note: 'llvm::HexPrintStyle::Upper' declared here 22 | enum class HexPrintStyle { Upper, Lower, PrefixUpper, PrefixLower }; | ^~~~~ /usr/include/llvm/Support/Format.h: At global scope: /usr/include/llvm/Support/Format.h:249:30: error: 'std::optional' has not been declared 249 | std::optional FirstByteOffset = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/Format.h:249:38: error: expected ',' or '...' before '<' token 249 | std::optional FirstByteOffset = std::nullopt, | ^ /usr/include/llvm/Support/Format.h: In function 'llvm::FormattedBytes llvm::format_bytes_with_ascii(ArrayRef, int)': /usr/include/llvm/Support/Format.h:252:32: error: 'IndentLevel' was not declared in this scope 252 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~ /usr/include/llvm/Support/Format.h:252:45: error: 'FirstByteOffset' was not declared in this scope 252 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:252:62: error: 'NumPerLine' was not declared in this scope 252 | return FormattedBytes(Bytes, IndentLevel, FirstByteOffset, NumPerLine, | ^~~~~~~~~~ /usr/include/llvm/Support/Format.h:253:25: error: 'ByteGroupSize' was not declared in this scope 253 | ByteGroupSize, Upper, true); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/Format.h:253:40: error: 'Upper' was not declared in this scope; did you mean 'llvm::HexPrintStyle::Upper'? 253 | ByteGroupSize, Upper, true); | ^~~~~ | llvm::HexPrintStyle::Upper /usr/include/llvm/Support/NativeFormatting.h:22:28: note: 'llvm::HexPrintStyle::Upper' declared here 22 | enum class HexPrintStyle { Upper, Lower, PrefixUpper, PrefixLower }; | ^~~~~ /usr/include/llvm/Support/Error.h: At global scope: /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:59: error: template argument 1 is invalid 512 | std::enable_if_t> * = nullptr) | ^ /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:60: error: template argument 1 is invalid 512 | std::enable_if_t> * = nullptr) | ^~ /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:512:60: error: template argument 1 is invalid 512 | std::enable_if_t> * = nullptr) | ^~ /usr/include/llvm/Support/Error.h:512:17: error: 'std::enable_if_t' is not a type 512 | std::enable_if_t> * = nullptr) | ^~~~~~~~~~~ /usr/include/llvm/Support/Error.h:512:28: error: expected ',' or '...' before '<' token 512 | std::enable_if_t> * = nullptr) | ^ /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:59: error: template argument 1 is invalid 530 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:60: error: template argument 1 is invalid 530 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:34: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:530:60: error: template argument 1 is invalid 530 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:530:17: error: 'std::enable_if_t' is not a type 530 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~ /usr/include/llvm/Support/Error.h:530:28: error: expected ',' or '...' before '<' token 530 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:539:30: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:539:55: error: template argument 1 is invalid 539 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:539:30: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:539:56: error: template argument 1 is invalid 539 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:539:30: error: 'is_convertible_v' is not a member of 'std'; did you mean 'is_convertible'? 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~~~~~~ | is_convertible /usr/include/llvm/Support/Error.h:539:56: error: template argument 1 is invalid 539 | std::enable_if_t> * = nullptr) { | ^~ /usr/include/llvm/Support/Error.h:539:12: error: 'std::enable_if_t' is not a type 539 | std::enable_if_t> * = nullptr) { | ^~~~~~~~~~~ /usr/include/llvm/Support/Error.h:539:23: error: expected ',' or '...' before '<' token 539 | std::enable_if_t> * = nullptr) { | ^ /usr/include/llvm/Support/Error.h:537:12: error: 'template template llvm::Expected::Expected(llvm::Expected&&, int)' cannot be overloaded with 'template template llvm::Expected::Expected(llvm::Expected&&, int)' 537 | explicit Expected( | ^~~~~~~~ /usr/include/llvm/Support/Error.h:529:3: note: previous declaration 'template template llvm::Expected::Expected(llvm::Expected&&, int)' 529 | Expected(Expected &&Other, | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1054:28: error: 'optional' in namespace 'std' does not name a template type 1054 | template std::optional expectedToOptional(Expected &&E) { | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1054:23: note: 'std::optional' is only available from C++17 onwards 1054 | template std::optional expectedToOptional(Expected &&E) { | ^~~ /usr/include/llvm/Support/Error.h:1061:28: error: 'optional' in namespace 'std' does not name a template type 1061 | template std::optional expectedToStdOptional(Expected &&E) { | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1061:23: note: 'std::optional' is only available from C++17 onwards 1061 | template std::optional expectedToStdOptional(Expected &&E) { | ^~~ /usr/include/llvm/Support/Error.h:1301:34: error: 'std::optional' has not been declared 1301 | FileError(const Twine &F, std::optional LineNum, | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1301:42: error: expected ',' or '...' before '<' token 1301 | FileError(const Twine &F, std::optional LineNum, | ^ /usr/include/llvm/Support/Error.h:1309:43: error: 'std::optional' has not been declared 1309 | static Error build(const Twine &F, std::optional Line, Error E) { | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1309:51: error: expected ',' or '...' before '<' token 1309 | static Error build(const Twine &F, std::optional Line, Error E) { | ^ /usr/include/llvm/Support/Error.h:1321:8: error: 'optional' in namespace 'std' does not name a template type 1321 | std::optional Line; | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1321:3: note: 'std::optional' is only available from C++17 onwards 1321 | std::optional Line; | ^~~ /usr/include/llvm/Support/Error.h: In member function 'virtual void llvm::FileError::log(llvm::raw_ostream&) const': /usr/include/llvm/Support/Error.h:1279:9: error: 'Line' was not declared in this scope 1279 | if (Line) | ^~~~ In file included from /usr/include/c++/13/cassert:44, from /usr/include/llvm/Support/Error.h:28: /usr/include/llvm/Support/Error.h: In constructor 'llvm::FileError::FileError(const llvm::Twine&, int)': /usr/include/llvm/Support/Error.h:1303:5: error: 'E' was not declared in this scope 1303 | assert(E && "Cannot create FileError from Error success value."); | ^~~~~~ /usr/include/llvm/Support/Error.h:1306:5: error: 'Line' was not declared in this scope 1306 | Line = std::move(LineNum); | ^~~~ /usr/include/llvm/Support/Error.h:1306:22: error: 'LineNum' was not declared in this scope 1306 | Line = std::move(LineNum); | ^~~~~~~ /usr/include/llvm/Support/Error.h: In static member function 'static llvm::Error llvm::FileError::build(const llvm::Twine&, int)': /usr/include/llvm/Support/Error.h:1311:31: error: 'E' was not declared in this scope 1311 | handleAllErrors(std::move(E), | ^ /usr/include/llvm/Support/Error.h:1317:53: error: 'Line' was not declared in this scope 1317 | std::unique_ptr(new FileError(F, Line, std::move(Payload)))); | ^~~~ /usr/include/llvm/Support/Error.h: In function 'llvm::Error llvm::createFileError(const Twine&, Error)': /usr/include/llvm/Support/Error.h:1328:35: error: 'optional' is not a member of 'std' 1328 | return FileError::build(F, std::optional(), std::move(E)); | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1328:35: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Error.h:1328:50: error: expected primary-expression before '>' token 1328 | return FileError::build(F, std::optional(), std::move(E)); | ^ /usr/include/llvm/Support/Error.h:1328:52: error: expected primary-expression before ')' token 1328 | return FileError::build(F, std::optional(), std::move(E)); | ^ /usr/include/llvm/Support/Error.h: In function 'llvm::Error llvm::createFileError(const Twine&, size_t, Error)': /usr/include/llvm/Support/Error.h:1334:35: error: 'optional' is not a member of 'std' 1334 | return FileError::build(F, std::optional(Line), std::move(E)); | ^~~~~~~~ /usr/include/llvm/Support/Error.h:1334:35: note: 'std::optional' is only available from C++17 onwards /usr/include/llvm/Support/Error.h:1334:50: error: expected primary-expression before '>' token 1334 | return FileError::build(F, std::optional(Line), std::move(E)); | ^ In file included from /usr/include/llvm/Support/SourceMgr.h:19, from /usr/include/llvm/Support/VirtualFileSystem.h:26, from /usr/include/clang/Basic/FileManager.h:30: /usr/include/llvm/Support/MemoryBuffer.h: At global scope: /usr/include/llvm/Support/MemoryBuffer.h:100:16: error: 'std::optional' has not been declared 100 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:100:24: error: expected ',' or '...' before '<' token 100 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:114:25: error: 'std::optional' has not been declared 114 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:114:33: error: expected ',' or '...' before '<' token 114 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:128:20: error: 'std::optional' has not been declared 128 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:128:28: error: expected ',' or '...' before '<' token 128 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:152:23: error: 'std::optional' has not been declared 152 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:152:31: error: expected ',' or '...' before '<' token 152 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:158:21: error: 'std::optional' has not been declared 158 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:158:29: error: expected ',' or '...' before '<' token 158 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:100:11: error: default argument missing for parameter 5 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getFile(const llvm::Twine&, bool, bool, bool, int)' 100 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:98:39: note: ...following parameter 2 which has a default argument 98 | getFile(const Twine &Filename, bool IsText = false, | ~~~~~^~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:114:20: error: default argument missing for parameter 6 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getOpenFileSlice(llvm::sys::fs::file_t, const llvm::Twine&, uint64_t, int64_t, bool, int)' 114 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:113:41: note: ...following parameter 5 which has a default argument 113 | int64_t Offset, bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:128:15: error: default argument missing for parameter 6 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getOpenFile(llvm::sys::fs::file_t, const llvm::Twine&, uint64_t, bool, bool, int)' 128 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:127:20: note: ...following parameter 4 which has a default argument 127 | bool RequiresNullTerminator = true, bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:152:18: error: default argument missing for parameter 4 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getFileOrSTDIN(const llvm::Twine&, bool, bool, int)' 152 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:150:46: note: ...following parameter 2 which has a default argument 150 | getFileOrSTDIN(const Twine &Filename, bool IsText = false, | ~~~~~^~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:158:16: error: default argument missing for parameter 5 of 'static llvm::ErrorOr > llvm::MemoryBuffer::getFileSlice(const llvm::Twine&, uint64_t, uint64_t, bool, int)' 158 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:157:21: note: ...following parameter 4 which has a default argument 157 | bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:204:16: error: 'std::optional' has not been declared 204 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:204:24: error: expected ',' or '...' before '<' token 204 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:210:21: error: 'std::optional' has not been declared 210 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:210:29: error: expected ',' or '...' before '<' token 210 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:220:30: error: 'std::optional' has not been declared 220 | std::optional Alignment = std::nullopt); | ^~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:220:38: error: expected ',' or '...' before '<' token 220 | std::optional Alignment = std::nullopt); | ^ /usr/include/llvm/Support/MemoryBuffer.h:204:11: error: default argument missing for parameter 3 of 'static llvm::ErrorOr > llvm::WritableMemoryBuffer::getFile(const llvm::Twine&, bool, int)' 204 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:203:39: note: ...following parameter 2 which has a default argument 203 | getFile(const Twine &Filename, bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:210:16: error: default argument missing for parameter 5 of 'static llvm::ErrorOr > llvm::WritableMemoryBuffer::getFileSlice(const llvm::Twine&, uint64_t, uint64_t, bool, int)' 210 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:209:21: note: ...following parameter 4 which has a default argument 209 | bool IsVolatile = false, | ~~~~~^~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:220:25: error: default argument missing for parameter 3 of 'static std::unique_ptr llvm::WritableMemoryBuffer::getNewUninitMemBuffer(size_t, const llvm::Twine&, int)' 220 | std::optional Alignment = std::nullopt); | ^~~~~~~~~~~~~ /usr/include/llvm/Support/MemoryBuffer.h:219:51: note: ...following parameter 2 which has a default argument 219 | getNewUninitMemBuffer(size_t Size, const Twine &BufferName = "", | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~ In file included from /usr/include/llvm/Support/SourceMgr.h:20: /usr/include/llvm/Support/SMLoc.h:53:11: error: invalid use of '::' 53 | SMRange(std::nullopt_t) {} | ^~~ /usr/include/llvm/Support/SMLoc.h:53:28: error: expected ';' at end of member declaration 53 | SMRange(std::nullopt_t) {} | ^ | ; /usr/include/llvm/Support/SourceMgr.h: In constructor 'llvm::SMDiagnostic::SMDiagnostic(llvm::StringRef, llvm::SourceMgr::DiagKind, llvm::StringRef)': /usr/include/llvm/Support/SourceMgr.h:297:9: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/SourceMgr.h:297:9: note: candidate expects 3 arguments, 1 provided 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/SourceMgr.h:297:66: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/SourceMgr.h:297:66: note: candidate expects 3 arguments, 1 provided 297 | : Filename(filename), LineNo(-1), ColumnNo(-1), Kind(Knd), Message(Msg) {} | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/VirtualFileSystem.h: At global scope: /usr/include/llvm/Support/VirtualFileSystem.h:512:21: error: 'std::optional' has not been declared 512 | std::optional User, std::optional Group, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:512:29: error: expected ',' or '...' before '<' token 512 | std::optional User, std::optional Group, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:536:21: error: 'std::optional' has not been declared 536 | std::optional User = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:536:29: error: expected ',' or '...' before '<' token 536 | std::optional User = std::nullopt, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:534:8: error: 'bool llvm::vfs::InMemoryFileSystem::addFile(const llvm::Twine&, time_t, std::unique_ptr, int)' cannot be overloaded with 'bool llvm::vfs::InMemoryFileSystem::addFile(const llvm::Twine&, time_t, std::unique_ptr, int)' 534 | bool addFile(const Twine &Path, time_t ModificationTime, | ^~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:510:8: note: previous declaration 'bool llvm::vfs::InMemoryFileSystem::addFile(const llvm::Twine&, time_t, std::unique_ptr, int)' 510 | bool addFile(const Twine &Path, time_t ModificationTime, | ^~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:567:24: error: 'std::optional' has not been declared 567 | std::optional User = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:567:32: error: expected ',' or '...' before '<' token 567 | std::optional User = std::nullopt, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:579:26: error: 'std::optional' has not been declared 579 | std::optional User = std::nullopt, | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:579:34: error: expected ',' or '...' before '<' token 579 | std::optional User = std::nullopt, | ^ /usr/include/llvm/Support/VirtualFileSystem.h:882:10: error: 'optional' in namespace 'std' does not name a template type 882 | std::optional ExternalRedirect; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:882:5: note: 'std::optional' is only available from C++17 onwards 882 | std::optional ExternalRedirect; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h:891:10: error: 'optional' in namespace 'std' does not name a template type 891 | std::optional getExternalRedirect() const { | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:891:5: note: 'std::optional' is only available from C++17 onwards 891 | std::optional getExternalRedirect() const { | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h: In constructor 'llvm::vfs::RedirectingFileSystem::Entry::Entry(llvm::vfs::RedirectingFileSystem::EntryKind, llvm::StringRef)': /usr/include/llvm/Support/VirtualFileSystem.h:776:51: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 776 | Entry(EntryKind K, StringRef Name) : Kind(K), Name(Name) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/VirtualFileSystem.h:776:51: note: candidate expects 3 arguments, 1 provided 776 | Entry(EntryKind K, StringRef Name) : Kind(K), Name(Name) {} | ^~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/VirtualFileSystem.h: In constructor 'llvm::vfs::RedirectingFileSystem::RemapEntry::RemapEntry(llvm::vfs::RedirectingFileSystem::EntryKind, llvm::StringRef, llvm::StringRef, llvm::vfs::RedirectingFileSystem::NameKind)': /usr/include/llvm/Support/VirtualFileSystem.h:824:27: error: no matching function for call to 'std::__cxx11::basic_string::basic_string(llvm::StringRef&)' 824 | : Entry(K, Name), ExternalContentsPath(ExternalContentsPath), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: candidate: 'template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with = _InputIterator; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 761 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:761:9: note: template argument deduction/substitution failed: /usr/include/llvm/Support/VirtualFileSystem.h:824:27: note: candidate expects 3 arguments, 1 provided 824 | : Entry(K, Name), ExternalContentsPath(ExternalContentsPath), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 718 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:718:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 713 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:713:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:708:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:708:45: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::initializer_list' 708 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:680:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 680 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:680:35: note: no known conversion for argument 1 from 'llvm::StringRef' to 'std::__cxx11::basic_string&&' 680 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(size_type, _CharT, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 667 | basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:667:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:644:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:644:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const char*' 644 | basic_string(const _CharT* __s, const _Alloc& __a = _Alloc()) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 622 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:622:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 602 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:602:7: note: candidate expects 4 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 584 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:584:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; size_type = long unsigned int]' 567 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:567:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/13/bits/basic_string.h:550:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 550 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:550:40: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::__cxx11::basic_string&' 550 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/13/bits/basic_string.h:538:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:538:34: note: no known conversion for argument 1 from 'llvm::StringRef' to 'const std::allocator&' 538 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]' 525 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/13/bits/basic_string.h:525:7: note: candidate expects 0 arguments, 1 provided /usr/include/llvm/Support/VirtualFileSystem.h: At global scope: /usr/include/llvm/Support/VirtualFileSystem.h:1060:8: error: 'optional' in namespace 'std' does not name a template type 1060 | std::optional IsCaseSensitive; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:1060:3: note: 'std::optional' is only available from C++17 onwards 1060 | std::optional IsCaseSensitive; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h:1061:8: error: 'optional' in namespace 'std' does not name a template type 1061 | std::optional IsOverlayRelative; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:1061:3: note: 'std::optional' is only available from C++17 onwards 1061 | std::optional IsOverlayRelative; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h:1062:8: error: 'optional' in namespace 'std' does not name a template type 1062 | std::optional UseExternalNames; | ^~~~~~~~ /usr/include/llvm/Support/VirtualFileSystem.h:1062:3: note: 'std::optional' is only available from C++17 onwards 1062 | std::optional UseExternalNames; | ^~~ /usr/include/llvm/Support/VirtualFileSystem.h: In member function 'void llvm::vfs::YAMLVFSWriter::setCaseSensitivity(bool)': /usr/include/llvm/Support/VirtualFileSystem.h:1074:5: error: 'IsCaseSensitive' was not declared in this scope; did you mean 'CaseSensitive'? 1074 | IsCaseSensitive = CaseSensitive; | ^~~~~~~~~~~~~~~ | CaseSensitive /usr/include/llvm/Support/VirtualFileSystem.h: In member function 'void llvm::vfs::YAMLVFSWriter::setUseExternalNames(bool)': /usr/include/llvm/Support/VirtualFileSystem.h:1077:48: error: 'UseExternalNames' was not declared in this scope; did you mean 'setUseExternalNames'? 1077 | void setUseExternalNames(bool UseExtNames) { UseExternalNames = UseExtNames; } | ^~~~~~~~~~~~~~~~ | setUseExternalNames /usr/include/llvm/Support/VirtualFileSystem.h: In member function 'void llvm::vfs::YAMLVFSWriter::setOverlayDir(llvm::StringRef)': /usr/include/llvm/Support/VirtualFileSystem.h:1080:5: error: 'IsOverlayRelative' was not declared in this scope 1080 | IsOverlayRelative = true; | ^~~~~~~~~~~~~~~~~ /usr/include/clang/Basic/FileManager.h: In member function 'clang::OptionalDirectoryEntryRef clang::FileManager::getOptionalDirectoryRef(llvm::StringRef, bool)': /usr/include/clang/Basic/FileManager.h:171:18: error: 'expectedToOptional' is not a member of 'llvm' 171 | return llvm::expectedToOptional(getDirectoryRef(DirName, CacheFailure)); | ^~~~~~~~~~~~~~~~~~ /usr/include/clang/Basic/FileManager.h: In member function 'clang::OptionalFileEntryRef clang::FileManager::getOptionalFileRef(llvm::StringRef, bool, bool)': /usr/include/clang/Basic/FileManager.h:237:18: error: 'expectedToOptional' is not a member of 'llvm' 237 | return llvm::expectedToOptional( | ^~~~~~~~~~~~~~~~~~ /usr/include/clang/Basic/SourceManager.h: At global scope: /usr/include/clang/Basic/SourceManager.h:215:8: error: 'optional' in namespace 'std' does not name a template type 215 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:215:3: note: 'std::optional' is only available from C++17 onwards 215 | std::optional | ^~~ /usr/include/clang/Basic/SourceManager.h:238:8: error: 'optional' in namespace 'std' does not name a template type 238 | std::optional getBufferIfLoaded() const { | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:238:3: note: 'std::optional' is only available from C++17 onwards 238 | std::optional getBufferIfLoaded() const { | ^~~ /usr/include/clang/Basic/SourceManager.h:246:8: error: 'optional' in namespace 'std' does not name a template type 246 | std::optional getBufferDataIfLoaded() const { | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:246:3: note: 'std::optional' is only available from C++17 onwards 246 | std::optional getBufferDataIfLoaded() const { | ^~~ /usr/include/clang/Basic/SourceManager.h:261:30: error: 'std::optional' has not been declared 261 | void setUnownedBuffer(std::optional B) { | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:261:38: error: expected ',' or '...' before '<' token 261 | void setUnownedBuffer(std::optional B) { | ^ /usr/include/clang/Basic/SourceManager.h: In constructor 'clang::SrcMgr::ContentCache::ContentCache()': /usr/include/clang/Basic/SourceManager.h:183:24: error: 'nullopt' is not a member of 'std' 183 | : OrigEntry(std::nullopt), ContentsEntry(nullptr), | ^~~~~~~ /usr/include/clang/Basic/SourceManager.h:183:24: note: 'std::nullopt' is only available from C++17 onwards /usr/include/clang/Basic/SourceManager.h: In member function 'void clang::SrcMgr::ContentCache::setUnownedBuffer(int)': /usr/include/clang/Basic/SourceManager.h:263:9: error: 'B' was not declared in this scope 263 | if (B) | ^ /usr/include/clang/Basic/SourceManager.h: At global scope: /usr/include/clang/Basic/SourceManager.h:944:8: error: 'optional' in namespace 'std' does not name a template type 944 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:944:3: note: 'std::optional' is only available from C++17 onwards 944 | std::optional | ^~~ /usr/include/clang/Basic/SourceManager.h:1026:8: error: 'optional' in namespace 'std' does not name a template type 1026 | std::optional | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1026:3: note: 'std::optional' is only available from C++17 onwards 1026 | std::optional | ^~~ /usr/include/clang/Basic/SourceManager.h:1063:8: error: 'optional' in namespace 'std' does not name a template type 1063 | std::optional getNonBuiltinFilenameForID(FileID FID) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1063:3: note: 'std::optional' is only available from C++17 onwards 1063 | std::optional getNonBuiltinFilenameForID(FileID FID) const; | ^~~ /usr/include/clang/Basic/SourceManager.h:1082:8: error: 'optional' in namespace 'std' does not name a template type 1082 | std::optional getBufferDataOrNone(FileID FID) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1082:3: note: 'std::optional' is only available from C++17 onwards 1082 | std::optional getBufferDataOrNone(FileID FID) const; | ^~~ /usr/include/clang/Basic/SourceManager.h:1088:8: error: 'optional' in namespace 'std' does not name a template type 1088 | std::optional getBufferDataIfLoaded(FileID FID) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1088:3: note: 'std::optional' is only available from C++17 onwards 1088 | std::optional getBufferDataIfLoaded(FileID FID) const; | ^~~ /usr/include/clang/Basic/SourceManager.h:1699:39: error: 'std::optional' has not been declared 1699 | std::optional MaxNotes = 32) const; | ^~~~~~~~ /usr/include/clang/Basic/SourceManager.h:1699:47: error: expected ',' or '...' before '<' token 1699 | std::optional MaxNotes = 32) const; | ^ /usr/include/clang/Basic/SourceManager.h: In member function 'llvm::MemoryBufferRef clang::SourceManager::getMemoryBufferForFileOrFake(const clang::FileEntry*)': /usr/include/clang/Basic/SourceManager.h:951:18: error: 'getMemoryBufferForFileOrNone' was not declared in this scope; did you mean 'getMemoryBufferForFileOrFake'? 951 | if (auto B = getMemoryBufferForFileOrNone(File)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ | getMemoryBufferForFileOrFake /usr/include/clang/Basic/SourceManager.h: In member function 'llvm::MemoryBufferRef clang::SourceManager::getBufferOrFake(clang::FileID, clang::SourceLocation) const': /usr/include/clang/Basic/SourceManager.h:1040:18: error: 'getBufferOrNone' was not declared in this scope; did you mean 'getBufferOrFake'? 1040 | if (auto B = getBufferOrNone(FID, Loc)) | ^~~~~~~~~~~~~~~ | getBufferOrFake /usr/include/clang/Basic/SourceManager.h: In member function 'clang::OptionalFileEntryRef clang::SourceManager::getFileEntryRefForID(clang::FileID) const': /usr/include/clang/Basic/SourceManager.h:1056:17: error: 'nullopt' is not a member of 'std' 1056 | return std::nullopt; | ^~~~~~~ /usr/include/clang/Basic/SourceManager.h:1056:17: note: 'std::nullopt' is only available from C++17 onwards /usr/include/llvm/Support/MathExtras.h: In instantiation of 'constexpr size_t llvm::CTLog2() [with long unsigned int kValue = 8; size_t = long unsigned int]': /usr/include/llvm/Support/Alignment.h:97:56: required from 'static constexpr llvm::Align llvm::Align::Constant() [with long unsigned int kValue = 8]' /usr/include/llvm/Support/Alignment.h:103:49: required from 'static constexpr llvm::Align llvm::Align::Of() [with T = const clang::Expr*]' /usr/include/llvm/Support/TrailingObjects.h:168:73: required from 'static NextTy* llvm::trailing_objects_internal::TrailingObjectsImpl::getTrailingObjectsImpl(BaseTy*, llvm::trailing_objects_internal::TrailingObjectsBase::OverloadToken) [with int Align = 8; BaseTy = clang::ConstantArrayType; TopTrailingObj = llvm::TrailingObjects; PrevTy = clang::ConstantArrayType; NextTy = const clang::Expr*; MoreTys = {}]' /usr/include/llvm/Support/TrailingObjects.h:301:40: required from 'T* llvm::TrailingObjects::getTrailingObjects() [with T = const clang::Expr*; BaseTy = clang::ConstantArrayType; TrailingTys = {const clang::Expr*}]' /usr/include/clang/AST/Type.h:3077:39: required from here /usr/include/llvm/Support/MathExtras.h:399:28: error: non-constant condition for static assertion 399 | static_assert(kValue > 0 && llvm::isPowerOf2_64(kValue), | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/llvm/Support/MathExtras.h:399:50: in 'constexpr' expansion of 'llvm::isPowerOf2_64(8)' /usr/include/llvm/Support/MathExtras.h:399:28: error: 'constexpr' call flows off the end of the function /usr/include/llvm/Support/MathExtras.h: In instantiation of 'constexpr size_t llvm::CTLog2() [with long unsigned int kValue = 4; size_t = long unsigned int]': /usr/include/llvm/Support/MathExtras.h:401:32: required from 'static const NextTy* llvm::trailing_objects_internal::TrailingObjectsImpl::getTrailingObjectsImpl(const BaseTy*, llvm::trailing_objects_internal::TrailingObjectsBase::OverloadToken) [with int Align = 8; BaseTy = clang::ConstantArrayType; TopTrailingObj = llvm::TrailingObjects; PrevTy = clang::ConstantArrayType; NextTy = const clang::Expr*; MoreTys = {}]' /usr/include/llvm/Support/TrailingObjects.h:289:40: required from 'const T* llvm::TrailingObjects::getTrailingObjects() const [with T = const clang::Expr*; BaseTy = clang::ConstantArrayType; TrailingTys = {const clang::Expr*}]' /usr/include/clang/AST/Type.h:3089:51: required from here /usr/include/llvm/Support/TrailingObjects.h:154:43: in 'constexpr' expansion of 'llvm::Align::Of()' /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:399:28: error: non-constant condition for static assertion /usr/include/llvm/Support/TrailingObjects.h:154:43: in 'constexpr' expansion of 'llvm::Align::Of()' /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:399:50: in 'constexpr' expansion of 'llvm::isPowerOf2_64(4)' /usr/include/llvm/Support/MathExtras.h:399:28: error: 'constexpr' call flows off the end of the function /usr/include/llvm/Support/MathExtras.h: In instantiation of 'constexpr size_t llvm::CTLog2() [with long unsigned int kValue = 2; size_t = long unsigned int]': /usr/include/llvm/Support/MathExtras.h:401:32: required from 'static constexpr llvm::Align llvm::Align::Of() [with T = clang::FunctionType::FunctionTypeExtraBitfields]' /usr/include/llvm/Support/TrailingObjects.h:154:43: required from 'static const NextTy* llvm::trailing_objects_internal::TrailingObjectsImpl::getTrailingObjectsImpl(const BaseTy*, llvm::trailing_objects_internal::TrailingObjectsBase::OverloadToken) [with int Align = 8; BaseTy = clang::FunctionProtoType; TopTrailingObj = llvm::TrailingObjects; PrevTy = clang::SourceLocation; NextTy = clang::FunctionType::FunctionTypeExtraBitfields; MoreTys = {clang::FunctionType::ExceptionType, clang::Expr*, clang::FunctionDecl*, clang::FunctionType::ExtParameterInfo, clang::Qualifiers}]' /usr/include/llvm/Support/TrailingObjects.h:289:40: required from 'const T* llvm::TrailingObjects::getTrailingObjects() const [with T = clang::FunctionType::FunctionTypeExtraBitfields; BaseTy = clang::FunctionProtoType; TrailingTys = {clang::QualType, clang::SourceLocation, clang::FunctionType::FunctionTypeExtraBitfields, clang::FunctionType::ExceptionType, clang::Expr*, clang::FunctionDecl*, clang::FunctionType::ExtParameterInfo, clang::Qualifiers}]' /usr/include/clang/AST/Type.h:4302:64: required from here /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:401:32: in 'constexpr' expansion of 'llvm::CTLog2<4>()' /usr/include/llvm/Support/MathExtras.h:399:28: error: non-constant condition for static assertion /usr/include/llvm/Support/Alignment.h:103:49: in 'constexpr' expansion of 'llvm::Align::Constant<8>()' /usr/include/llvm/Support/Alignment.h:97:56: in 'constexpr' expansion of 'llvm::CTLog2<8>()' /usr/include/llvm/Support/MathExtras.h:401:32: in 'constexpr' expansion of 'llvm::CTLog2<4>()' /usr/include/llvm/Support/MathExtras.h:399:50: in 'constexpr' expansion of 'llvm::isPowerOf2_64(2)' /usr/include/llvm/Support/MathExtras.h:399:28: error: 'constexpr' call flows off the end of the function /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'llvm::mapped_iterator::mapped_iterator(ItTy, FuncTy) [with ItTy = const clang::ParmVarDecl* const*; FuncTy = clang::ObjCMethodDecl::GetTypeFn; ReferenceTy = clang::QualType]': /usr/include/llvm/ADT/STLExtras.h:430:10: required from 'llvm::mapped_iterator llvm::map_iterator(ItTy, FuncTy) [with ItTy = const clang::ParmVarDecl* const*; FuncTy = clang::ObjCMethodDecl::GetTypeFn; decltype (declval()((* declval()))) = clang::QualType]' /usr/include/clang/AST/DeclObjC.h:402:30: required from here /usr/include/llvm/ADT/STLExtras.h:414:61: error: cannot convert 'std::remove_reference::type' {aka 'clang::ObjCMethodDecl::GetTypeFn'} to 'int' in initialization 414 | : mapped_iterator::iterator_adaptor_base(std::move(U)), F(std::move(F)) {} | ^~~~~~~~~~~~~~~ make[2]: *** [clang_delta/CMakeFiles/clang_delta.dir/build.make:93: clang_delta/CMakeFiles/clang_delta.dir/BinOpSimplification.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:292: clang_delta/CMakeFiles/clang_delta.dir/all] Error 2 make[2]: Leaving directory '/builddir/build/BUILD/cvise-2.4.0/objdir/riscv64-redhat-linux-gnu' RPM build errors: make: *** [Makefile:149: all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.mcO6tg (%build) Bad exit status from /var/tmp/rpm-tmp.mcO6tg (%build) Child return code was: 1 EXCEPTION: [Error()] Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/mockbuild/trace_decorator.py", line 93, in trace result = func(*args, **kw) File "/usr/lib/python3.9/site-packages/mockbuild/util.py", line 600, in do_with_status raise exception.Error("Command failed: \n # %s\n%s" % (command, output), child.returncode) mockbuild.exception.Error: Command failed: # bash --login -c /usr/bin/rpmbuild -bb --target riscv64 --nodeps /builddir/build/SPECS/cvise.spec