[INFO] cloning repository https://github.com/muke101/llook
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/muke101/llook" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmuke101%2Fllook", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmuke101%2Fllook'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] eb09488c536a76bbb0ef3d1e63f7bf6ecbda0a4e
[INFO] testing muke101/llook against 1.95.0 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmuke101%2Fllook" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-2-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/muke101/llook
[INFO] finished tweaking git repo https://github.com/muke101/llook
[INFO] tweaked toml for git repo https://github.com/muke101/llook written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/muke101/llook on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/muke101/llook already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/TheDan64/inkwell`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded instant v0.1.11
[INFO] [stderr]   Downloaded cc v1.0.71
[INFO] [stderr]   Downloaded proc-macro2 v1.0.30
[INFO] [stderr]   Downloaded enum_dispatch v0.3.7
[INFO] [stderr]   Downloaded llvm-sys v120.2.1
[INFO] [stderr]   Downloaded syn v1.0.80
[INFO] [stderr]   Downloaded libc v0.2.103
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c4453715e123a0c0868e5ffac3cb0fd6be05ba6b3310c07cf9108634e9893aef
[INFO] running `Command { std: "docker" "start" "-a" "c4453715e123a0c0868e5ffac3cb0fd6be05ba6b3310c07cf9108634e9893aef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4453715e123a0c0868e5ffac3cb0fd6be05ba6b3310c07cf9108634e9893aef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c4453715e123a0c0868e5ffac3cb0fd6be05ba6b3310c07cf9108634e9893aef", kill_on_drop: false }`
[INFO] [stdout] c4453715e123a0c0868e5ffac3cb0fd6be05ba6b3310c07cf9108634e9893aef
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f102ff7ee2be35829ca2759464122b2b8b390c0dc0ec03a8f8bbf2c74eb6a770
[INFO] running `Command { std: "docker" "start" "-a" "f102ff7ee2be35829ca2759464122b2b8b390c0dc0ec03a8f8bbf2c74eb6a770", kill_on_drop: false }`
[INFO] [stderr]    Compiling ucd-trie v0.1.3
[INFO] [stderr]    Compiling proc-macro2 v1.0.30
[INFO] [stderr]    Compiling cc v1.0.71
[INFO] [stderr]    Compiling regex-syntax v0.6.25
[INFO] [stderr]    Compiling libc v0.2.103
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling syn v1.0.80
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr]    Compiling instant v0.1.11
[INFO] [stderr]    Compiling smallvec v1.7.0
[INFO] [stderr]    Compiling pest v2.1.3
[INFO] [stderr]    Compiling lock_api v0.4.5
[INFO] [stderr]    Compiling once_cell v1.8.0
[INFO] [stderr]    Compiling inkwell v0.1.0 (https://github.com/TheDan64/inkwell?branch=master#27a64448)
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling llook v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling parking_lot_core v0.8.5
[INFO] [stderr]    Compiling quote v1.0.10
[INFO] [stderr]    Compiling parking_lot v0.11.2
[INFO] [stderr]    Compiling semver-parser v0.10.2
[INFO] [stderr]    Compiling semver v0.11.0
[INFO] [stderr]    Compiling regex v1.5.4
[INFO] [stderr]    Compiling llvm-sys v120.2.1
[INFO] [stderr]    Compiling inkwell_internals v0.3.0 (https://github.com/TheDan64/inkwell?branch=master#27a64448)
[INFO] [stderr]    Compiling enum_dispatch v0.3.7
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/Support/SwapByteOrder.h:17,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/ADT/Hashing.h:49,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/ADT/ArrayRef.h:12,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/IR/Instruction.h:17,
[INFO] [stderr] warning: llook@0.1.0:                  from src/llvm_wrapper.h:2,
[INFO] [stderr] warning: llook@0.1.0:                  from src/llvm_wrapper.cpp:1:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:46:35: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:    46 | auto transformOptional(const std::optional<T> &O, const Function &F)
[INFO] [stderr] warning: llook@0.1.0:       |                                   ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:46:30: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:    46 | auto transformOptional(const std::optional<T> &O, const Function &F)
[INFO] [stderr] warning: llook@0.1.0:       |                              ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:46:43: error: expected ',' or '...' before '<' token
[INFO] [stderr] warning: llook@0.1.0:    46 | auto transformOptional(const std::optional<T> &O, const Function &F)
[INFO] [stderr] warning: llook@0.1.0:       |                                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:47:13: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:    47 |     -> std::optional<decltype(F(*O))> {
[INFO] [stderr] warning: llook@0.1.0:       |             ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:47:8: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:    47 |     -> std::optional<decltype(F(*O))> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:47:21: error: expected initializer before '<' token
[INFO] [stderr] warning: llook@0.1.0:    47 |     -> std::optional<decltype(F(*O))> {
[INFO] [stderr] warning: llook@0.1.0:       |                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:56:29: error: 'optional' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:    56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr] warning: llook@0.1.0:       |                             ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:56:29: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:56:39: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:    56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr] warning: llook@0.1.0:       |                                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:56:43: error: label 'O' referenced outside of any function
[INFO] [stderr] warning: llook@0.1.0:    56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr] warning: llook@0.1.0:       |                                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:56:46: error: expected primary-expression before 'const'
[INFO] [stderr] warning: llook@0.1.0:    56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr] warning: llook@0.1.0:       |                                              ^~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:56:63: error: expression list treated as compound expression in initializer [-fpermissive]
[INFO] [stderr] warning: llook@0.1.0:    56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr] warning: llook@0.1.0:       |                                                               ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLForwardCompat.h:56:64: error: expected ';' before '->' token
[INFO] [stderr] warning: llook@0.1.0:    56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr] warning: llook@0.1.0:       |                                                                ^
[INFO] [stderr] warning: llook@0.1.0:       |                                                                ;
[INFO] [stderr] warning: llook@0.1.0:    57 |     -> std::optional<decltype(F(*std::move(O)))> {
[INFO] [stderr] warning: llook@0.1.0:       |     ~~                                                          
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/Support/SwapByteOrder.h:18:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:100:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'?
[INFO] [stderr] warning: llook@0.1.0:   100 | template <typename T, typename = std::enable_if_t<std::is_integral_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_integral
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:100:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'?
[INFO] [stderr] warning: llook@0.1.0:   100 | template <typename T, typename = std::enable_if_t<std::is_integral_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_integral
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:100:70: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   100 | template <typename T, typename = std::enable_if_t<std::is_integral_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:100:73: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:   100 | template <typename T, typename = std::enable_if_t<std::is_integral_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                         ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:145:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   145 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:145:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   145 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:145:70: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   145 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:145:73: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:   145 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                         ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_zero(T)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:216:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   216 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                      ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                      is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:216:37: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   216 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:216:38: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   216 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_zero(T)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:282:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   282 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                      ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                      is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:282:37: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   282 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:282:38: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   282 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_one(T)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:295:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   295 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                      ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                      is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:295:37: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   295 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:295:38: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   295 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_one(T)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:308:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   308 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                      ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                      is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:308:37: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   308 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:308:38: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   308 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h: In function 'int llvm::bit_width(T)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:318:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   318 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                      ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                      is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:318:37: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   318 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:318:38: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   318 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_floor(T)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:328:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   328 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                      ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                      is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:328:37: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   328 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:328:38: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   328 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_ceil(T)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:343:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   343 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                      ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                      is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:343:37: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   343 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:343:38: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   343 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:384:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   384 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:384:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   384 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:384:70: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   384 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:384:73: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:   384 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                         ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:390:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   390 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:390:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   390 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:390:70: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   390 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:390:73: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:   390 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                         ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:393:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   393 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:393:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   393 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:393:70: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   393 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:393:73: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:   393 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                         ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h: In function 'constexpr T llvm::rotr(T, int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:415:18: error: 'rotl' is not a member of 'llvm'; did you mean 'rotr'?
[INFO] [stderr] warning: llook@0.1.0:   415 |     return llvm::rotl(V, -R);
[INFO] [stderr] warning: llook@0.1.0:       |                  ^~~~
[INFO] [stderr] warning: llook@0.1.0:       |                  rotr
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned char llvm::sys::getSwappedBytes(unsigned char)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:31:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    31 | inline unsigned char      getSwappedBytes(unsigned char      C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'signed char llvm::sys::getSwappedBytes(signed char)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:32:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    32 | inline   signed char      getSwappedBytes( signed  char      C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'char llvm::sys::getSwappedBytes(char)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:33:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    33 | inline          char      getSwappedBytes(         char      C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'short unsigned int llvm::sys::getSwappedBytes(short unsigned int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:35:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    35 | inline unsigned short     getSwappedBytes(unsigned short     C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'short int llvm::sys::getSwappedBytes(short int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:36:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    36 | inline   signed short     getSwappedBytes(  signed short     C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned int llvm::sys::getSwappedBytes(unsigned int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:38:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    38 | inline unsigned int       getSwappedBytes(unsigned int       C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'int llvm::sys::getSwappedBytes(int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:39:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    39 | inline   signed int       getSwappedBytes(  signed int       C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'long unsigned int llvm::sys::getSwappedBytes(long unsigned int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:41:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    41 | inline unsigned long      getSwappedBytes(unsigned long      C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'long int llvm::sys::getSwappedBytes(long int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:42:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    42 | inline   signed long      getSwappedBytes(  signed long      C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'long long unsigned int llvm::sys::getSwappedBytes(long long unsigned int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:44:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    44 | inline unsigned long long getSwappedBytes(unsigned long long C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'long long int llvm::sys::getSwappedBytes(long long int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:45:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    45 | inline   signed long long getSwappedBytes(  signed long long C) { return llvm::byteswap(C); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'float llvm::sys::getSwappedBytes(float)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:48:38: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    48 |   return llvm::bit_cast<float>(llvm::byteswap(llvm::bit_cast<uint32_t>(C)));
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: In function 'double llvm::sys::getSwappedBytes(double)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:52:39: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:    52 |   return llvm::bit_cast<double>(llvm::byteswap(llvm::bit_cast<uint64_t>(C)));
[INFO] [stderr] warning: llook@0.1.0:       |                                       ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:56:30: error: 'is_enum_v' is not a member of 'std'; did you mean 'is_enum'?
[INFO] [stderr] warning: llook@0.1.0:    56 | inline std::enable_if_t<std::is_enum_v<T>, T> getSwappedBytes(T C) {
[INFO] [stderr] warning: llook@0.1.0:       |                              ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                              is_enum
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:56:30: error: 'is_enum_v' is not a member of 'std'; did you mean 'is_enum'?
[INFO] [stderr] warning: llook@0.1.0:    56 | inline std::enable_if_t<std::is_enum_v<T>, T> getSwappedBytes(T C) {
[INFO] [stderr] warning: llook@0.1.0:       |                              ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                              is_enum
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:56:41: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:    56 | inline std::enable_if_t<std::is_enum_v<T>, T> getSwappedBytes(T C) {
[INFO] [stderr] warning: llook@0.1.0:       |                                         ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/SwapByteOrder.h:56:42: error: expected unqualified-id before ',' token
[INFO] [stderr] warning: llook@0.1.0:    56 | inline std::enable_if_t<std::is_enum_v<T>, T> getSwappedBytes(T C) {
[INFO] [stderr] warning: llook@0.1.0:       |                                          ^
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/ADT/Hashing.h:50:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:35:13: error: 'is_class_v' is not a member of 'std'; did you mean 'is_class'?
[INFO] [stderr] warning: llook@0.1.0:    35 |       !std::is_class_v<UnderlyingT> && // Filter conversion operators.
[INFO] [stderr] warning: llook@0.1.0:       |             ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |             is_class
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:35:35: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:    35 |       !std::is_class_v<UnderlyingT> && // Filter conversion operators.
[INFO] [stderr] warning: llook@0.1.0:       |                                   ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:36:7: error: expected identifier before '!' token
[INFO] [stderr] warning: llook@0.1.0:    36 |       !std::is_pointer_v<UnderlyingT> &&
[INFO] [stderr] warning: llook@0.1.0:       |       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:35:37: error: expected ';' at end of member declaration
[INFO] [stderr] warning: llook@0.1.0:    35 |       !std::is_class_v<UnderlyingT> && // Filter conversion operators.
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^~
[INFO] [stderr] warning: llook@0.1.0:       |                                       ;
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:36:7: error: expected unqualified-id before '!' token
[INFO] [stderr] warning: llook@0.1.0:    36 |       !std::is_pointer_v<UnderlyingT> &&
[INFO] [stderr] warning: llook@0.1.0:       |       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:48:30: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:    48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                              ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                              is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:48:30: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:    48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                              ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                              is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:48:43: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:    48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:48:44: error: template argument 2 is invalid
[INFO] [stderr] warning: llook@0.1.0:    48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                            ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:48:46: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:    48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                              ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:58:56: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:    58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:58:56: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:    58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                        is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:58:69: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:    58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:58:70: error: template argument 2 is invalid
[INFO] [stderr] warning: llook@0.1.0:    58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:58:72: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:    58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                        ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:67:60: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:    67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                            ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                            is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:67:60: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:    67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                            ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                            is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:67:73: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:    67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                         ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:67:74: error: template argument 2 is invalid
[INFO] [stderr] warning: llook@0.1.0:    67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                          ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/type_traits.h:67:76: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:    67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                            ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:127:55: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   127 | template <typename T> hash_code hash_value(const std::optional<T> &arg);
[INFO] [stderr] warning: llook@0.1.0:       |                                                       ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:127:50: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:   127 | template <typename T> hash_code hash_value(const std::optional<T> &arg);
[INFO] [stderr] warning: llook@0.1.0:       |                                                  ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:127:63: error: expected ',' or '...' before '<' token
[INFO] [stderr] warning: llook@0.1.0:   127 | template <typename T> hash_code hash_value(const std::optional<T> &arg);
[INFO] [stderr] warning: llook@0.1.0:       |                                                               ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h: In function 'uint64_t llvm::hashing::detail::hash_17to32_bytes(const char*, size_t, uint64_t)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:222:44: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   222 |   return hash_16_bytes(llvm::rotr<uint64_t>(a - b, 43) +
[INFO] [stderr] warning: llook@0.1.0:       |                        ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:222:44: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   222 |   return hash_16_bytes(llvm::rotr<uint64_t>(a - b, 43) +
[INFO] [stderr] warning: llook@0.1.0:       |                        ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:223:48: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   223 |                            llvm::rotr<uint64_t>(c ^ seed, 30) + d,
[INFO] [stderr] warning: llook@0.1.0:       |                            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:223:48: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   223 |                            llvm::rotr<uint64_t>(c ^ seed, 30) + d,
[INFO] [stderr] warning: llook@0.1.0:       |                            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:224:48: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   224 |                        a + llvm::rotr<uint64_t>(b ^ k3, 20) - c + len + seed);
[INFO] [stderr] warning: llook@0.1.0:       |                            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:224:48: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   224 |                        a + llvm::rotr<uint64_t>(b ^ k3, 20) - c + len + seed);
[INFO] [stderr] warning: llook@0.1.0:       |                            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h: In function 'uint64_t llvm::hashing::detail::hash_33to64_bytes(const char*, size_t, uint64_t)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:230:36: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   230 |   uint64_t b = llvm::rotr<uint64_t>(a + z, 52);
[INFO] [stderr] warning: llook@0.1.0:       |                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:230:36: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   230 |   uint64_t b = llvm::rotr<uint64_t>(a + z, 52);
[INFO] [stderr] warning: llook@0.1.0:       |                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:231:36: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr] warning: llook@0.1.0:   231 |   uint64_t c = llvm::rotr<uint64_t>(a, 37);
[INFO] [stderr] warning: llook@0.1.0:       |                ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:231:36: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   231 |   uint64_t c = llvm::rotr<uint64_t>(a, 37);
[INFO] [stderr] warning: llook@0.1.0:       |                ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:233:28: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr] warning: llook@0.1.0:   233 |   c += llvm::rotr<uint64_t>(a, 7);
[INFO] [stderr] warning: llook@0.1.0:       |        ~~~~~~~~~~~~~~~~~~~~^~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:233:28: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   233 |   c += llvm::rotr<uint64_t>(a, 7);
[INFO] [stderr] warning: llook@0.1.0:       |        ~~~~~~~~~~~~~~~~~~~~^~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:236:41: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr] warning: llook@0.1.0:   236 |   uint64_t vs = b + llvm::rotr<uint64_t>(a, 31) + c;
[INFO] [stderr] warning: llook@0.1.0:       |                     ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:236:41: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   236 |   uint64_t vs = b + llvm::rotr<uint64_t>(a, 31) + c;
[INFO] [stderr] warning: llook@0.1.0:       |                     ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:239:27: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   239 |   b = llvm::rotr<uint64_t>(a + z, 52);
[INFO] [stderr] warning: llook@0.1.0:       |       ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:239:27: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   239 |   b = llvm::rotr<uint64_t>(a + z, 52);
[INFO] [stderr] warning: llook@0.1.0:       |       ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:240:27: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr] warning: llook@0.1.0:   240 |   c = llvm::rotr<uint64_t>(a, 37);
[INFO] [stderr] warning: llook@0.1.0:       |       ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:240:27: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   240 |   c = llvm::rotr<uint64_t>(a, 37);
[INFO] [stderr] warning: llook@0.1.0:       |       ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:242:28: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr] warning: llook@0.1.0:   242 |   c += llvm::rotr<uint64_t>(a, 7);
[INFO] [stderr] warning: llook@0.1.0:       |        ~~~~~~~~~~~~~~~~~~~~^~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:242:28: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   242 |   c += llvm::rotr<uint64_t>(a, 7);
[INFO] [stderr] warning: llook@0.1.0:       |        ~~~~~~~~~~~~~~~~~~~~^~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:245:41: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr] warning: llook@0.1.0:   245 |   uint64_t ws = b + llvm::rotr<uint64_t>(a, 31) + c;
[INFO] [stderr] warning: llook@0.1.0:       |                     ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:245:41: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   245 |   uint64_t ws = b + llvm::rotr<uint64_t>(a, 31) + c;
[INFO] [stderr] warning: llook@0.1.0:       |                     ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h: In static member function 'static llvm::hashing::detail::hash_state llvm::hashing::detail::hash_state::create(const char*, uint64_t)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:278:45: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   278 |                         llvm::rotr<uint64_t>(seed ^ k1, 49),
[INFO] [stderr] warning: llook@0.1.0:       |                         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:278:45: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   278 |                         llvm::rotr<uint64_t>(seed ^ k1, 49),
[INFO] [stderr] warning: llook@0.1.0:       |                         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h: In static member function 'static void llvm::hashing::detail::hash_state::mix_32_bytes(const char*, uint64_t&, uint64_t&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:292:29: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   292 |     b = llvm::rotr<uint64_t>(b + a + c, 21);
[INFO] [stderr] warning: llook@0.1.0:       |         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:292:29: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   292 |     b = llvm::rotr<uint64_t>(b + a + c, 21);
[INFO] [stderr] warning: llook@0.1.0:       |         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:295:30: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr] warning: llook@0.1.0:   295 |     b += llvm::rotr<uint64_t>(a, 44) + d;
[INFO] [stderr] warning: llook@0.1.0:       |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:295:30: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   295 |     b += llvm::rotr<uint64_t>(a, 44) + d;
[INFO] [stderr] warning: llook@0.1.0:       |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h: In member function 'void llvm::hashing::detail::hash_state::mix(const char*)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:303:30: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   303 |     h0 = llvm::rotr<uint64_t>(h0 + h1 + h3 + fetch64(s + 8), 37) * k1;
[INFO] [stderr] warning: llook@0.1.0:       |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:303:30: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   303 |     h0 = llvm::rotr<uint64_t>(h0 + h1 + h3 + fetch64(s + 8), 37) * k1;
[INFO] [stderr] warning: llook@0.1.0:       |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:304:30: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   304 |     h1 = llvm::rotr<uint64_t>(h1 + h4 + fetch64(s + 48), 42) * k1;
[INFO] [stderr] warning: llook@0.1.0:       |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:304:30: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   304 |     h1 = llvm::rotr<uint64_t>(h1 + h4 + fetch64(s + 48), 42) * k1;
[INFO] [stderr] warning: llook@0.1.0:       |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:307:30: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr] warning: llook@0.1.0:   307 |     h2 = llvm::rotr<uint64_t>(h2 + h5, 33) * k1;
[INFO] [stderr] warning: llook@0.1.0:       |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr] warning: llook@0.1.0:   407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:307:30: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr] warning: llook@0.1.0:   307 |     h2 = llvm::rotr<uint64_t>(h2 + h5, 33) * k1;
[INFO] [stderr] warning: llook@0.1.0:       |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(const std::tuple<_Elements ...>&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:663:15: error: 'apply' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   663 |   return std::apply([](const auto &...xs) { return hash_combine(xs...); }, arg);
[INFO] [stderr] warning: llook@0.1.0:       |               ^~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:663:15: note: 'std::apply' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:673:55: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   673 | template <typename T> hash_code hash_value(const std::optional<T> &arg) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                       ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:673:50: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:   673 | template <typename T> hash_code hash_value(const std::optional<T> &arg) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                  ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:673:63: error: expected ',' or '...' before '<' token
[INFO] [stderr] warning: llook@0.1.0:   673 | template <typename T> hash_code hash_value(const std::optional<T> &arg) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                               ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:674:10: error: 'arg' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr] warning: llook@0.1.0:       |          ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:674:53: error: no matching function for call to 'hash_value(bool)'
[INFO] [stderr] warning: llook@0.1.0:   674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr] warning: llook@0.1.0:       |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:643:60: note: candidate: 'template<class T> std::enable_if_t<llvm::is_integral_or_enum<T>::value, llvm::hash_code> llvm::hash_value(T)'
[INFO] [stderr] warning: llook@0.1.0:   643 | std::enable_if_t<is_integral_or_enum<T>::value, hash_code> hash_value(T value) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                            ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:643:60: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:650:33: note: candidate: 'template<class T> llvm::hash_code llvm::hash_value(const T*)'
[INFO] [stderr] warning: llook@0.1.0:   650 | template <typename T> hash_code hash_value(const T *ptr) {
[INFO] [stderr] warning: llook@0.1.0:       |                                 ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:650:33: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:674:53: note:   mismatched types 'const T*' and 'bool'
[INFO] [stderr] warning: llook@0.1.0:   674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr] warning: llook@0.1.0:       |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:658:11: note: candidate: 'template<class T, class U> llvm::hash_code llvm::hash_value(const std::pair<_T1, _T2>&)'
[INFO] [stderr] warning: llook@0.1.0:   658 | hash_code hash_value(const std::pair<T, U> &arg) {
[INFO] [stderr] warning: llook@0.1.0:       |           ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:658:11: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:674:53: note:   mismatched types 'const std::pair<_T1, _T2>' and 'bool'
[INFO] [stderr] warning: llook@0.1.0:   674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr] warning: llook@0.1.0:       |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:662:37: note: candidate: 'template<class ... Ts> llvm::hash_code llvm::hash_value(const std::tuple<_Elements ...>&)'
[INFO] [stderr] warning: llook@0.1.0:   662 | template <typename... Ts> hash_code hash_value(const std::tuple<Ts...> &arg) {
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:662:37: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:674:53: note:   mismatched types 'const std::tuple<_Elements ...>' and 'bool'
[INFO] [stderr] warning: llook@0.1.0:   674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr] warning: llook@0.1.0:       |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:669:11: note: candidate: 'template<class T> llvm::hash_code llvm::hash_value(const std::__cxx11::basic_string<T>&)'
[INFO] [stderr] warning: llook@0.1.0:   669 | hash_code hash_value(const std::basic_string<T> &arg) {
[INFO] [stderr] warning: llook@0.1.0:       |           ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:669:11: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:674:53: note:   mismatched types 'const std::__cxx11::basic_string<T>' and 'bool'
[INFO] [stderr] warning: llook@0.1.0:   674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr] warning: llook@0.1.0:       |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:673:33: note: candidate: 'template<class T> llvm::hash_code llvm::hash_value(int)'
[INFO] [stderr] warning: llook@0.1.0:   673 | template <typename T> hash_code hash_value(const std::optional<T> &arg) {
[INFO] [stderr] warning: llook@0.1.0:       |                                 ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:673:33: note:   template argument deduction/substitution failed:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/Hashing.h:674:53: note:   couldn't deduce template parameter 'T'
[INFO] [stderr] warning: llook@0.1.0:   674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr] warning: llook@0.1.0:       |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/ADT/ArrayRef.h:13:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/SmallVector.h: In static member function 'static void llvm::SmallVectorTemplateBase<T, <anonymous> >::uninitialized_move(It1, It1, It2)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/SmallVector.h:362:10: error: 'uninitialized_move' is not a member of 'std'; did you mean 'uninitialized_copy'?
[INFO] [stderr] warning: llook@0.1.0:   362 |     std::uninitialized_move(I, E, Dest);
[INFO] [stderr] warning: llook@0.1.0:       |          ^~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |          uninitialized_copy
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/ADT/STLExtras.h:20,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/ADT/ArrayRef.h:14:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ADL.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ADL.h:49:12: error: 'size' has not been declared in 'std'
[INFO] [stderr] warning: llook@0.1.0:    49 | using std::size;
[INFO] [stderr] warning: llook@0.1.0:       |            ^~~~
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/ADT/iterator.h:12,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/ADT/STLExtras.h:24:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/iterator_range.h:33:10: error: 'void_t' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:    33 |     std::void_t<decltype(static_cast<To>(
[INFO] [stderr] warning: llook@0.1.0:       |          ^~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/iterator_range.h:33:10: note: 'std::void_t' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/iterator_range.h:33:10: error: 'void_t' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/iterator_range.h:33:10: note: 'std::void_t' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/iterator_range.h:34:60: error: template argument 3 is invalid
[INFO] [stderr] warning: llook@0.1.0:    34 |         std::declval<std::add_rvalue_reference_t<From>>()))>> : std::true_type {
[INFO] [stderr] warning: llook@0.1.0:       |                                                            ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/iterator_range.h:68:79: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:    68 | iterator_range(Container &&) -> iterator_range<detail::IterOfRange<Container>>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                               ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:66:22: error: 'void_t' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:    66 | struct detector<std::void_t<Op<Args...>>, Op, Args...> {
[INFO] [stderr] warning: llook@0.1.0:       |                      ^~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:66:22: note: 'std::void_t' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:66:22: error: 'void_t' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:66:22: note: 'std::void_t' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:66:39: error: wrong number of template arguments (1, should be at least 2)
[INFO] [stderr] warning: llook@0.1.0:    66 | struct detector<std::void_t<Op<Args...>>, Op, Args...> {
[INFO] [stderr] warning: llook@0.1.0:       |                                       ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:62:70: note: provided for 'template<class, template<class ...> class Op, class ... Args> struct llvm::detail::detector'
[INFO] [stderr] warning: llook@0.1.0:    62 | template <class, template <class...> class Op, class... Args> struct detector {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:129:24: error: 'disjunction' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   129 | using is_one_of = std::disjunction<std::is_same<T, Ts>...>;
[INFO] [stderr] warning: llook@0.1.0:       |                        ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:129:19: note: 'std::disjunction' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:   129 | using is_one_of = std::disjunction<std::is_same<T, Ts>...>;
[INFO] [stderr] warning: llook@0.1.0:       |                   ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:134:26: error: 'conjunction' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   134 | using are_base_of = std::conjunction<std::is_base_of<T, Ts>...>;
[INFO] [stderr] warning: llook@0.1.0:       |                          ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:134:21: note: 'std::conjunction' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:   134 | using are_base_of = std::conjunction<std::is_base_of<T, Ts>...>;
[INFO] [stderr] warning: llook@0.1.0:       |                     ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:140:37: error: 'is_one_of' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   140 |     : std::integral_constant<bool, !is_one_of<T, Us...>::value &&
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:140:55: error: template argument 2 is invalid
[INFO] [stderr] warning: llook@0.1.0:   140 |     : std::integral_constant<bool, !is_one_of<T, Us...>::value &&
[INFO] [stderr] warning: llook@0.1.0:       |                                                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:140:56: error: expected '{' before '::' token
[INFO] [stderr] warning: llook@0.1.0:   140 |     : std::integral_constant<bool, !is_one_of<T, Us...>::value &&
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:209:23: error: 'is_function_v' is not a member of 'std'; did you mean 'is_function'?
[INFO] [stderr] warning: llook@0.1.0:   209 |           bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t<T>>>>
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_function
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:209:77: error: expected primary-expression before '>>' token
[INFO] [stderr] warning: llook@0.1.0:   209 |           bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t<T>>>>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                             ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:209:77: error: expected '>' before '>>' token
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:215:8: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   215 |   std::optional<value_type> Obj;
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:215:3: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:   215 |   std::optional<value_type> Obj;
[INFO] [stderr] warning: llook@0.1.0:       |   ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:217:23: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:   217 |   static_assert(!std::is_pointer_v<value_type>,
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:217:46: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   217 |   static_assert(!std::is_pointer_v<value_type>,
[INFO] [stderr] warning: llook@0.1.0:       |                                              ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:217:47: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   217 |   static_assert(!std::is_pointer_v<value_type>,
[INFO] [stderr] warning: llook@0.1.0:       |                                               ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:242:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   242 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr] warning: llook@0.1.0:       |                                   ^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:242:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:242:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template<bool _Cond, class _Tp> using std::enable_if_t = typename std::enable_if::type'
[INFO] [stderr] warning: llook@0.1.0:   242 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr] warning: llook@0.1.0:       |                                                          ^
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/ADT/STLForwardCompat.h:21:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/c++/13/type_traits:2609:24: note: declared here
[INFO] [stderr] warning: llook@0.1.0:  2609 |   template<bool _Cond, typename _Tp = void>
[INFO] [stderr] warning: llook@0.1.0:       |                        ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:242:66: error: expected unqualified-id before '=' token
[INFO] [stderr] warning: llook@0.1.0:   242 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                  ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:248:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   248 |             std::enable_if_t<std::is_invocable_v<T const, Pn...>, int> = 0>
[INFO] [stderr] warning: llook@0.1.0:       |                                   ^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:248:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:248:64: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   248 |             std::enable_if_t<std::is_invocable_v<T const, Pn...>, int> = 0>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:248:72: error: expected unqualified-id before '=' token
[INFO] [stderr] warning: llook@0.1.0:   248 |             std::enable_if_t<std::is_invocable_v<T const, Pn...>, int> = 0>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                        ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In constructor 'llvm::callable_detail::Callable<T, <anonymous> >::Callable(const T&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:222:26: error: class 'llvm::callable_detail::Callable<T, <anonymous> >' does not have any field named 'Obj'
[INFO] [stderr] warning: llook@0.1.0:   222 |   Callable(T const &O) : Obj(std::in_place, O) {}
[INFO] [stderr] warning: llook@0.1.0:       |                          ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:222:35: error: 'in_place' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   222 |   Callable(T const &O) : Obj(std::in_place, O) {}
[INFO] [stderr] warning: llook@0.1.0:       |                                   ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:222:35: note: 'std::in_place' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, <anonymous> >& llvm::callable_detail::Callable<T, <anonymous> >::operator=(const llvm::callable_detail::Callable<T, <anonymous> >&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:228:5: error: 'Obj' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   228 |     Obj = std::nullopt;
[INFO] [stderr] warning: llook@0.1.0:       |     ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:228:16: error: 'nullopt' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   228 |     Obj = std::nullopt;
[INFO] [stderr] warning: llook@0.1.0:       |                ^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:228:16: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, <anonymous> >& llvm::callable_detail::Callable<T, <anonymous> >::operator=(llvm::callable_detail::Callable<T, <anonymous> >&&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:235:5: error: 'Obj' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   235 |     Obj = std::nullopt;
[INFO] [stderr] warning: llook@0.1.0:       |     ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:235:16: error: 'nullopt' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   235 |     Obj = std::nullopt;
[INFO] [stderr] warning: llook@0.1.0:       |                ^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:235:16: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable<T, <anonymous> >::valid() const':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:253:31: error: 'Obj' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   253 |   bool valid() const { return Obj != std::nullopt; }
[INFO] [stderr] warning: llook@0.1.0:       |                               ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:253:43: error: 'nullopt' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   253 |   bool valid() const { return Obj != std::nullopt; }
[INFO] [stderr] warning: llook@0.1.0:       |                                           ^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:253:43: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable<T, <anonymous> >::reset()':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:254:25: error: 'Obj' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   254 |   bool reset() { return Obj = std::nullopt; }
[INFO] [stderr] warning: llook@0.1.0:       |                         ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:254:36: error: 'nullopt' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   254 |   bool reset() { return Obj = std::nullopt; }
[INFO] [stderr] warning: llook@0.1.0:       |                                    ^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:254:36: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, <anonymous> >::operator reference()':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:256:34: error: 'Obj' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   256 |   operator reference() { return *Obj; }
[INFO] [stderr] warning: llook@0.1.0:       |                                  ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, <anonymous> >::operator const_reference() const':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:257:46: error: 'Obj' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   257 |   operator const_reference() const { return *Obj; }
[INFO] [stderr] warning: llook@0.1.0:       |                                              ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:263:38: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:   263 |   static constexpr bool IsPtr = std::is_pointer_v<remove_cvref_t<T>>;
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                      is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:263:67: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   263 |   static constexpr bool IsPtr = std::is_pointer_v<remove_cvref_t<T>>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                   ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:263:69: error: expected primary-expression before ';' token
[INFO] [stderr] warning: llook@0.1.0:   263 |   static constexpr bool IsPtr = std::is_pointer_v<remove_cvref_t<T>>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:269:3: error: 'StorageT' does not name a type
[INFO] [stderr] warning: llook@0.1.0:   269 |   StorageT Func = nullptr;
[INFO] [stderr] warning: llook@0.1.0:       |   ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:292:13: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
[INFO] [stderr] warning: llook@0.1.0:   292 |       !std::is_same_v<remove_cvref_t<FnPtrOrRef>, Callable>, int
[INFO] [stderr] warning: llook@0.1.0:       |             ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |             is_same
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:292:59: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   292 |       !std::is_same_v<remove_cvref_t<FnPtrOrRef>, Callable>, int
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:293:7: error: expected unqualified-id before '=' token
[INFO] [stderr] warning: llook@0.1.0:   293 |     > = 0
[INFO] [stderr] warning: llook@0.1.0:       |       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:298:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   298 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr] warning: llook@0.1.0:       |                                   ^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:298:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:298:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template<bool _Cond, class _Tp> using std::enable_if_t = typename std::enable_if::type'
[INFO] [stderr] warning: llook@0.1.0:   298 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr] warning: llook@0.1.0:       |                                                          ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/c++/13/type_traits:2609:24: note: declared here
[INFO] [stderr] warning: llook@0.1.0:  2609 |   template<bool _Cond, typename _Tp = void>
[INFO] [stderr] warning: llook@0.1.0:       |                        ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:298:66: error: expected unqualified-id before '=' token
[INFO] [stderr] warning: llook@0.1.0:   298 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr] warning: llook@0.1.0:       |                                                                  ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable<T, true>::valid() const':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:303:31: error: 'Func' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   303 |   bool valid() const { return Func != nullptr; }
[INFO] [stderr] warning: llook@0.1.0:       |                               ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In member function 'void llvm::callable_detail::Callable<T, true>::reset()':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:304:18: error: 'Func' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   304 |   void reset() { Func = nullptr; }
[INFO] [stderr] warning: llook@0.1.0:       |                  ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, true>::operator const T&() const':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:309:14: error: 'Func' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   309 |       return Func;
[INFO] [stderr] warning: llook@0.1.0:       |              ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:311:26: error: 'is_reference_v' is not a member of 'std'; did you mean 'is_reference'?
[INFO] [stderr] warning: llook@0.1.0:   311 |       static_assert(std::is_reference_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                          ^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                          is_reference
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:311:42: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   311 |       static_assert(std::is_reference_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                          ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:311:43: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   311 |       static_assert(std::is_reference_v<T>,
[INFO] [stderr] warning: llook@0.1.0:       |                                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:314:15: error: 'Func' was not declared in this scope
[INFO] [stderr] warning: llook@0.1.0:   314 |       return *Func;
[INFO] [stderr] warning: llook@0.1.0:       |               ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:366:35: error: template argument 2 is invalid
[INFO] [stderr] warning: llook@0.1.0:   366 |   callable_detail::Callable<FuncTy> F{};
[INFO] [stderr] warning: llook@0.1.0:       |                                   ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:903:60: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   903 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional<
[INFO] [stderr] warning: llook@0.1.0:       |                                                            ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:903:55: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:   903 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional<
[INFO] [stderr] warning: llook@0.1.0:       |                                                       ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:903:68: error: expected initializer before '<' token
[INFO] [stderr] warning: llook@0.1.0:   903 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional<
[INFO] [stderr] warning: llook@0.1.0:       |                                                                    ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:911:21: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   911 |   using type = std::optional<std::remove_const_t<
[INFO] [stderr] warning: llook@0.1.0:       |                     ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:911:16: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:   911 |   using type = std::optional<std::remove_const_t<
[INFO] [stderr] warning: llook@0.1.0:       |                ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:1648:38: error: 'conjunction' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:  1648 | using sort_trivially_copyable = std::conjunction<
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:1648:33: note: 'std::conjunction' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:  1648 | using sort_trivially_copyable = std::conjunction<
[INFO] [stderr] warning: llook@0.1.0:       |                                 ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In function 'void llvm::sort(IteratorTy, IteratorTy)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:1657:25: error: 'sort_trivially_copyable' is not a member of 'llvm::detail'
[INFO] [stderr] warning: llook@0.1.0:  1657 |   if constexpr (detail::sort_trivially_copyable<IteratorTy>::value) {
[INFO] [stderr] warning: llook@0.1.0:       |                         ^~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:1657:59: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:  1657 |   if constexpr (detail::sort_trivially_copyable<IteratorTy>::value) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:1657:62: error: '::value' has not been declared
[INFO] [stderr] warning: llook@0.1.0:  1657 |   if constexpr (detail::sort_trivially_copyable<IteratorTy>::value) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                              ^~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In function 'bool llvm::detail::all_of_zip_predicate_first(Predicate&&, Args&& ...)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:2403:15: error: 'apply' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:  2403 |     if (!std::apply([&](auto &&...args) { return P(args...); }, *it))
[INFO] [stderr] warning: llook@0.1.0:       |               ^~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:2403:15: note: 'std::apply' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:70:27: error: invalid use of '::'
[INFO] [stderr] warning: llook@0.1.0:    70 |     /*implicit*/ ArrayRef(std::nullopt_t) {}
[INFO] [stderr] warning: llook@0.1.0:       |                           ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:70:44: error: expected ';' at end of member declaration
[INFO] [stderr] warning: llook@0.1.0:    70 |     /*implicit*/ ArrayRef(std::nullopt_t) {}
[INFO] [stderr] warning: llook@0.1.0:       |                                            ^
[INFO] [stderr] warning: llook@0.1.0:       |                                             ;
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:325:34: error: invalid use of '::'
[INFO] [stderr] warning: llook@0.1.0:   325 |     /*implicit*/ MutableArrayRef(std::nullopt_t) : ArrayRef<T>() {}
[INFO] [stderr] warning: llook@0.1.0:       |                                  ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:474:65: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   474 |   template <typename T> ArrayRef(const T &OneElt) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                 ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:477:78: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   477 |   template <typename T> ArrayRef(const T *data, size_t length) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                              ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:480:77: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   480 |   template <typename T> ArrayRef(const T *data, const T *end) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                             ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:483:79: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   483 |   template <typename T> ArrayRef(const SmallVectorImpl<T> &Vec) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                               ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:487:56: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   487 |   ArrayRef(const SmallVector<T, N> &Vec) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                        ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:490:75: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   490 |   template <typename T> ArrayRef(const std::vector<T> &Vec) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:494:55: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   494 |   ArrayRef(const std::array<T, N> &Vec) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:497:72: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   497 |   template <typename T> ArrayRef(const ArrayRef<T> &Vec) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                        ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:500:66: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   500 |   template <typename T> ArrayRef(ArrayRef<T> &Vec) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                  ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:503:77: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   503 |   template <typename T, size_t N> ArrayRef(const T (&Arr)[N]) -> ArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                             ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:582:70: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   582 |   template <class T> MutableArrayRef(T &OneElt) -> MutableArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:587:64: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   587 |   MutableArrayRef(T *data, size_t length) -> MutableArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:591:65: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   591 |   MutableArrayRef(SmallVectorImpl<T> &Vec) -> MutableArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                 ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:594:64: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   594 |   MutableArrayRef(SmallVector<T, N> &Vec) -> MutableArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:597:80: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   597 |   template <class T> MutableArrayRef(std::vector<T> &Vec) -> MutableArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                                                ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:601:63: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   601 |   MutableArrayRef(std::array<T, N> &Vec) -> MutableArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                               ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/ArrayRef.h:605:53: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr] warning: llook@0.1.0:   605 |   MutableArrayRef(T (&Arr)[N]) -> MutableArrayRef<T>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                     ^
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/IR/Instruction.h:19:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/StringRef.h:104:54: error: expected ')' before 'Str'
[INFO] [stderr] warning: llook@0.1.0:   104 |     /*implicit*/ constexpr StringRef(std::string_view Str)
[INFO] [stderr] warning: llook@0.1.0:       |                                     ~                ^~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                      )
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/StringRef.h:248:24: error: expected type-specifier
[INFO] [stderr] warning: llook@0.1.0:   248 |     constexpr operator std::string_view() const {
[INFO] [stderr] warning: llook@0.1.0:       |                        ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/StringRef.h: In member function 'size_t llvm::StringRef::find(char, size_t) const':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/StringRef.h:294:19: error: 'string_view' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   294 |       return std::string_view(*this).find(C, From);
[INFO] [stderr] warning: llook@0.1.0:       |                   ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/StringRef.h:294:19: note: 'std::string_view' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/StringRef.h: In member function 'llvm::StringRef llvm::StringRef::slice(size_t, size_t) const':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/StringRef.h:682:18: error: 'clamp' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   682 |       End = std::clamp(End, Start, Length);
[INFO] [stderr] warning: llook@0.1.0:       |                  ^~~~~
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/ADT/DenseMap.h:21,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/IR/Metadata.h:19,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/IR/TrackingMDRef.h:16,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/IR/DebugLoc.h:17,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/IR/Instruction.h:21:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h: In function 'T llvm::maskTrailingOnes(unsigned int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:66:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:    66 |   static_assert(std::is_unsigned_v<T>, "Invalid type!");
[INFO] [stderr] warning: llook@0.1.0:       |                      ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                      is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:66:37: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:    66 |   static_assert(std::is_unsigned_v<T>, "Invalid type!");
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:66:38: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:    66 |   static_assert(std::is_unsigned_v<T>, "Invalid type!");
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_32(uint32_t)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:265:16: error: 'has_single_bit' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:   265 |   return llvm::has_single_bit(Value);
[INFO] [stderr] warning: llook@0.1.0:       |                ^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_64(uint64_t)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:270:16: error: 'has_single_bit' is not a member of 'llvm'
[INFO] [stderr] warning: llook@0.1.0:   270 |   return llvm::has_single_bit(Value);
[INFO] [stderr] warning: llook@0.1.0:       |                ^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_32(uint32_t, unsigned int&, unsigned int&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:283:19: error: 'popcount' is not a member of 'llvm'; did you mean 'count'?
[INFO] [stderr] warning: llook@0.1.0:   283 |   MaskLen = llvm::popcount(Value);
[INFO] [stderr] warning: llook@0.1.0:       |                   ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                   count
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_64(uint64_t, unsigned int&, unsigned int&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:296:19: error: 'popcount' is not a member of 'llvm'; did you mean 'count'?
[INFO] [stderr] warning: llook@0.1.0:   296 |   MaskLen = llvm::popcount(Value);
[INFO] [stderr] warning: llook@0.1.0:       |                   ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                   count
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:469:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   469 | std::enable_if_t<std::is_unsigned_v<T>, T> AbsoluteDifference(T X, T Y) {
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:469:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   469 | std::enable_if_t<std::is_unsigned_v<T>, T> AbsoluteDifference(T X, T Y) {
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:469:38: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   469 | std::enable_if_t<std::is_unsigned_v<T>, T> AbsoluteDifference(T X, T Y) {
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:469:39: error: expected unqualified-id before ',' token
[INFO] [stderr] warning: llook@0.1.0:   469 | std::enable_if_t<std::is_unsigned_v<T>, T> AbsoluteDifference(T X, T Y) {
[INFO] [stderr] warning: llook@0.1.0:       |                                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:477:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   477 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:477:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   477 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:477:38: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   477 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:477:39: error: expected unqualified-id before ',' token
[INFO] [stderr] warning: llook@0.1.0:   477 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:493:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   493 | std::enable_if_t<std::is_unsigned_v<T>, T> SaturatingAdd(T X, T Y, T Z,
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:493:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   493 | std::enable_if_t<std::is_unsigned_v<T>, T> SaturatingAdd(T X, T Y, T Z,
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:493:38: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   493 | std::enable_if_t<std::is_unsigned_v<T>, T> SaturatingAdd(T X, T Y, T Z,
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:493:39: error: expected unqualified-id before ',' token
[INFO] [stderr] warning: llook@0.1.0:   493 | std::enable_if_t<std::is_unsigned_v<T>, T> SaturatingAdd(T X, T Y, T Z,
[INFO] [stderr] warning: llook@0.1.0:       |                                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:506:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   506 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:506:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   506 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:506:38: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   506 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:506:39: error: expected unqualified-id before ',' token
[INFO] [stderr] warning: llook@0.1.0:   506 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:552:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   552 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:552:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr] warning: llook@0.1.0:   552 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_unsigned
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:552:38: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   552 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:552:39: error: expected unqualified-id before ',' token
[INFO] [stderr] warning: llook@0.1.0:   552 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr] warning: llook@0.1.0:       |                                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:571:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr] warning: llook@0.1.0:   571 | std::enable_if_t<std::is_signed_v<T>, T> AddOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_signed
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:571:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr] warning: llook@0.1.0:   571 | std::enable_if_t<std::is_signed_v<T>, T> AddOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_signed
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:571:36: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   571 | std::enable_if_t<std::is_signed_v<T>, T> AddOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                                    ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:571:37: error: expected unqualified-id before ',' token
[INFO] [stderr] warning: llook@0.1.0:   571 | std::enable_if_t<std::is_signed_v<T>, T> AddOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:597:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr] warning: llook@0.1.0:   597 | std::enable_if_t<std::is_signed_v<T>, T> SubOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_signed
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:597:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr] warning: llook@0.1.0:   597 | std::enable_if_t<std::is_signed_v<T>, T> SubOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_signed
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:597:36: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   597 | std::enable_if_t<std::is_signed_v<T>, T> SubOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                                    ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:597:37: error: expected unqualified-id before ',' token
[INFO] [stderr] warning: llook@0.1.0:   597 | std::enable_if_t<std::is_signed_v<T>, T> SubOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:623:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr] warning: llook@0.1.0:   623 | std::enable_if_t<std::is_signed_v<T>, T> MulOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_signed
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:623:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr] warning: llook@0.1.0:   623 | std::enable_if_t<std::is_signed_v<T>, T> MulOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                       ^~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                       is_signed
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:623:36: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   623 | std::enable_if_t<std::is_signed_v<T>, T> MulOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                                    ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/MathExtras.h:623:37: error: expected unqualified-id before ',' token
[INFO] [stderr] warning: llook@0.1.0:   623 | std::enable_if_t<std::is_signed_v<T>, T> MulOverflow(T X, T Y, T &Result) {
[INFO] [stderr] warning: llook@0.1.0:       |                                     ^
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/ADT/PointerUnion.h:21,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/IR/Metadata.h:21:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:69:49: error: 'is_base_of_v' is not a member of 'std'; did you mean 'is_base_of'?
[INFO] [stderr] warning: llook@0.1.0:    69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                 ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                 is_base_of
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:69:49: error: 'is_base_of_v' is not a member of 'std'; did you mean 'is_base_of'?
[INFO] [stderr] warning: llook@0.1.0:    69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                 ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                 is_base_of
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:69:66: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:    69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                  ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:69:70: error: template argument 3 is invalid
[INFO] [stderr] warning: llook@0.1.0:    69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:69:72: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:    69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                        ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:234:12: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
[INFO] [stderr] warning: llook@0.1.0:   234 |       std::is_same_v<X, typename simplify_type<X>::SimpleType>;
[INFO] [stderr] warning: llook@0.1.0:       |            ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |            is_same
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:234:23: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   234 |       std::is_same_v<X, typename simplify_type<X>::SimpleType>;
[INFO] [stderr] warning: llook@0.1.0:       |                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:234:25: error: expected unqualified-id before 'typename'
[INFO] [stderr] warning: llook@0.1.0:   234 |       std::is_same_v<X, typename simplify_type<X>::SimpleType>;
[INFO] [stderr] warning: llook@0.1.0:       |                         ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   266 | struct CastIsPossible<To, std::optional<From>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:266:41: error: template argument 2 is invalid
[INFO] [stderr] warning: llook@0.1.0:   266 | struct CastIsPossible<To, std::optional<From>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                         ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:266:45: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:   266 | struct CastIsPossible<To, std::optional<From>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                             ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:278:55: error: 'is_base_of_v' is not a member of 'std'; did you mean 'is_base_of'?
[INFO] [stderr] warning: llook@0.1.0:   278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                       ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                       is_base_of
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:278:55: error: 'is_base_of_v' is not a member of 'std'; did you mean 'is_base_of'?
[INFO] [stderr] warning: llook@0.1.0:   278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                       ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                                       is_base_of
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:278:72: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                        ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:278:76: error: template argument 3 is invalid
[INFO] [stderr] warning: llook@0.1.0:   278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                            ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:278:78: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:   278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                              ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:321:42: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
[INFO] [stderr] warning: llook@0.1.0:   321 | using SelfType = std::conditional_t<std::is_same_v<OptionalDerived, void>,
[INFO] [stderr] warning: llook@0.1.0:       |                                          ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                          is_same
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:321:42: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
[INFO] [stderr] warning: llook@0.1.0:   321 | using SelfType = std::conditional_t<std::is_same_v<OptionalDerived, void>,
[INFO] [stderr] warning: llook@0.1.0:       |                                          ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                          is_same
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:321:73: error: wrong number of template arguments (2, should be 3)
[INFO] [stderr] warning: llook@0.1.0:   321 | using SelfType = std::conditional_t<std::is_same_v<OptionalDerived, void>,
[INFO] [stderr] warning: llook@0.1.0:       |                                                                         ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/c++/13/type_traits:2614:11: note: provided for 'template<bool _Cond, class _Iftrue, class _Iffalse> using std::conditional_t = typename std::conditional::type'
[INFO] [stderr] warning: llook@0.1.0:  2614 |     using conditional_t = typename conditional<_Cond, _Iftrue, _Iffalse>::type;
[INFO] [stderr] warning: llook@0.1.0:       |           ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:334:19: error: 'SelfType' is not a member of 'llvm::detail'
[INFO] [stderr] warning: llook@0.1.0:   334 |           detail::SelfType<Derived, ValueFromPointerCast<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                   ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:334:19: error: 'SelfType' is not a member of 'llvm::detail'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:334:66: error: wrong number of template arguments (4, should be 3)
[INFO] [stderr] warning: llook@0.1.0:   334 |           detail::SelfType<Derived, ValueFromPointerCast<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                  ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:309:8: note: provided for 'template<class To, class From, class Derived> struct llvm::DefaultDoCastIfPossible'
[INFO] [stderr] warning: llook@0.1.0:   309 | struct DefaultDoCastIfPossible {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:334:68: error: expected '{' before '>' token
[INFO] [stderr] warning: llook@0.1.0:   334 |           detail::SelfType<Derived, ValueFromPointerCast<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                                    ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:344:24: error: 'SelfType' in namespace 'llvm::detail' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   344 |   using Self = detail::SelfType<Derived, UniquePtrCast<To, From>>;
[INFO] [stderr] warning: llook@0.1.0:       |                        ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h: In static member function 'static llvm::UniquePtrCast<To, From, Derived>::CastResultType llvm::UniquePtrCast<To, From, Derived>::doCastIfPossible(std::unique_ptr<From>&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:355:10: error: 'Self' has not been declared
[INFO] [stderr] warning: llook@0.1.0:   355 |     if (!Self::isPossible(f.get()))
[INFO] [stderr] warning: llook@0.1.0:       |          ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:368:16: error: 'optional' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   368 |           std::optional<To>, From,
[INFO] [stderr] warning: llook@0.1.0:       |                ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:368:16: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:368:16: error: 'optional' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:368:16: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:368:27: error: wrong number of template arguments (1, should be 3)
[INFO] [stderr] warning: llook@0.1.0:   368 |           std::optional<To>, From,
[INFO] [stderr] warning: llook@0.1.0:       |                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:309:8: note: provided for 'template<class To, class From, class Derived> struct llvm::DefaultDoCastIfPossible'
[INFO] [stderr] warning: llook@0.1.0:   309 | struct DefaultDoCastIfPossible {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:369:27: error: expected template-name before '<' token
[INFO] [stderr] warning: llook@0.1.0:   369 |           detail::SelfType<Derived, OptionalValueCast<To, From>>> {
[INFO] [stderr] warning: llook@0.1.0:       |                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:369:27: error: expected '{' before '<' token
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:393:31: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:   393 |       std::conditional_t<std::is_pointer_v<From>, DecayedFrom *, DecayedFrom &>;
[INFO] [stderr] warning: llook@0.1.0:       |                               ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                               is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:393:31: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:   393 |       std::conditional_t<std::is_pointer_v<From>, DecayedFrom *, DecayedFrom &>;
[INFO] [stderr] warning: llook@0.1.0:       |                               ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                               is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:393:48: error: wrong number of template arguments (1, should be 3)
[INFO] [stderr] warning: llook@0.1.0:   393 |       std::conditional_t<std::is_pointer_v<From>, DecayedFrom *, DecayedFrom &>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/c++/13/type_traits:2614:11: note: provided for 'template<bool _Cond, class _Iftrue, class _Iffalse> using std::conditional_t = typename std::conditional::type'
[INFO] [stderr] warning: llook@0.1.0:  2614 |     using conditional_t = typename conditional<_Cond, _Iftrue, _Iffalse>::type;
[INFO] [stderr] warning: llook@0.1.0:       |           ^~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h: In static member function 'static bool llvm::ConstStrippingForwardingCast<To, From, ForwardTo>::isPossible(const From&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:396:45: error: 'NonConstFrom' does not name a type
[INFO] [stderr] warning: llook@0.1.0:   396 |     return ForwardTo::isPossible(const_cast<NonConstFrom>(f));
[INFO] [stderr] warning: llook@0.1.0:       |                                             ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h: In static member function 'static decltype(auto) llvm::ConstStrippingForwardingCast<To, From, ForwardTo>::doCast(const From&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:402:41: error: 'NonConstFrom' does not name a type
[INFO] [stderr] warning: llook@0.1.0:   402 |     return ForwardTo::doCast(const_cast<NonConstFrom>(f));
[INFO] [stderr] warning: llook@0.1.0:       |                                         ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h: In static member function 'static decltype(auto) llvm::ConstStrippingForwardingCast<To, From, ForwardTo>::doCastIfPossible(const From&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:406:51: error: 'NonConstFrom' does not name a type
[INFO] [stderr] warning: llook@0.1.0:   406 |     return ForwardTo::doCastIfPossible(const_cast<NonConstFrom>(f));
[INFO] [stderr] warning: llook@0.1.0:       |                                                   ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:539:26: error: 'optional' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   539 | struct CastInfo<To, std::optional<From>> : public OptionalValueCast<To, From> {
[INFO] [stderr] warning: llook@0.1.0:       |                          ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:539:26: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:539:26: error: 'optional' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:539:26: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:539:35: error: template argument 2 is invalid
[INFO] [stderr] warning: llook@0.1.0:   539 | struct CastInfo<To, std::optional<From>> : public OptionalValueCast<To, From> {
[INFO] [stderr] warning: llook@0.1.0:       |                                   ^~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:539:39: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:   539 | struct CastInfo<To, std::optional<From>> : public OptionalValueCast<To, From> {
[INFO] [stderr] warning: llook@0.1.0:       |                                       ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:594:10: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr] warning: llook@0.1.0:   594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr] warning: llook@0.1.0:       |          ^~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |          is_pointer
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:594:24: error: expected primary-expression before '>' token
[INFO] [stderr] warning: llook@0.1.0:   594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr] warning: llook@0.1.0:       |                        ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:594:26: error: expected primary-expression before '||' token
[INFO] [stderr] warning: llook@0.1.0:   594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr] warning: llook@0.1.0:       |                          ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:594:34: error: 'is_constructible_v' is not a member of 'std'; did you mean 'is_constructible'?
[INFO] [stderr] warning: llook@0.1.0:   594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr] warning: llook@0.1.0:       |                                  ^~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                                  is_constructible
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:594:54: error: expected primary-expression before ',' token
[INFO] [stderr] warning: llook@0.1.0:   594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr] warning: llook@0.1.0:       |                                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:609:50: error: 'optional' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   609 | template <typename T> struct ValueIsPresent<std::optional<T>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                  ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:609:50: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:609:50: error: 'optional' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:609:50: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:609:59: error: template argument 1 is invalid
[INFO] [stderr] warning: llook@0.1.0:   609 | template <typename T> struct ValueIsPresent<std::optional<T>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                           ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:609:60: error: expected unqualified-id before '>' token
[INFO] [stderr] warning: llook@0.1.0:   609 | template <typename T> struct ValueIsPresent<std::optional<T>> {
[INFO] [stderr] warning: llook@0.1.0:       |                                                            ^~
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/IR/Value.h:21,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/IR/User.h:24,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/IR/Constant.h:16,
[INFO] [stderr] warning: llook@0.1.0:                  from /usr/include/llvm/IR/Metadata.h:26:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h: In static member function 'static constexpr llvm::Align llvm::Align::Of()':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:103:26: error: 'alignment_of_v' is not a member of 'std'; did you mean 'alignment_of'?
[INFO] [stderr] warning: llook@0.1.0:   103 |     return Constant<std::alignment_of_v<T>>();
[INFO] [stderr] warning: llook@0.1.0:       |                          ^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                          alignment_of
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:103:26: error: 'alignment_of_v' is not a member of 'std'; did you mean 'alignment_of'?
[INFO] [stderr] warning: llook@0.1.0:   103 |     return Constant<std::alignment_of_v<T>>();
[INFO] [stderr] warning: llook@0.1.0:       |                          ^~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                          alignment_of
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:103:12: error: parse error in template argument list
[INFO] [stderr] warning: llook@0.1.0:   103 |     return Constant<std::alignment_of_v<T>>();
[INFO] [stderr] warning: llook@0.1.0:       |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:103:45: error: expected primary-expression before ')' token
[INFO] [stderr] warning: llook@0.1.0:   103 |     return Constant<std::alignment_of_v<T>>();
[INFO] [stderr] warning: llook@0.1.0:       |                                             ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:41: error: expected template-name before '<' token
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |                                         ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:41: error: expected '{' before '<' token
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:41: error: expected unqualified-id before '<' token
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:217:35: error: 'A' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   217 | inline unsigned encode(MaybeAlign A) { return A ? A->ShiftValue + 1 : 0; }
[INFO] [stderr] warning: llook@0.1.0:       |                        ~~~~~~~~~~~^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:220:50: error: return type 'struct llvm::MaybeAlign' is incomplete
[INFO] [stderr] warning: llook@0.1.0:   220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) {
[INFO] [stderr] warning: llook@0.1.0:       |                                                  ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:220:19: error: ambiguating new declaration of 'void llvm::decodeMaybeAlign(unsigned int)'
[INFO] [stderr] warning: llook@0.1.0:   220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) {
[INFO] [stderr] warning: llook@0.1.0:       |                   ^~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:53:28: note: old declaration 'llvm::MaybeAlign llvm::decodeMaybeAlign(unsigned int)'
[INFO] [stderr] warning: llook@0.1.0:    53 |   friend struct MaybeAlign decodeMaybeAlign(unsigned Value);
[INFO] [stderr] warning: llook@0.1.0:       |                            ^~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h: In function 'void llvm::decodeMaybeAlign(unsigned int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:222:23: error: invalid use of incomplete type 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   222 |     return MaybeAlign();
[INFO] [stderr] warning: llook@0.1.0:       |                       ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:224:7: error: 'uint8_t llvm::Align::ShiftValue' is private within this context
[INFO] [stderr] warning: llook@0.1.0:   224 |   Out.ShiftValue = Value - 1;
[INFO] [stderr] warning: llook@0.1.0:       |       ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:41:11: note: declared private here
[INFO] [stderr] warning: llook@0.1.0:    41 |   uint8_t ShiftValue = 0; /// The log2 of the required alignment.
[INFO] [stderr] warning: llook@0.1.0:       |           ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h: In function 'unsigned int llvm::encode(Align)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:230:61: error: invalid use of incomplete type 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   230 | inline unsigned encode(Align A) { return encode(MaybeAlign(A)); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                             ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:295:35: error: 'Lhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   295 | inline bool operator==(MaybeAlign Lhs, Align Rhs) { return Lhs && *Lhs == Rhs; }
[INFO] [stderr] warning: llook@0.1.0:       |                        ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:296:35: error: 'Lhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   296 | inline bool operator!=(MaybeAlign Lhs, Align Rhs) { return !(Lhs == Rhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                        ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:297:46: error: 'Rhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   297 | inline bool operator==(Align Lhs, MaybeAlign Rhs) { return Rhs == Lhs; }
[INFO] [stderr] warning: llook@0.1.0:       |                                   ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:298:46: error: 'Rhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   298 | inline bool operator!=(Align Lhs, MaybeAlign Rhs) { return !(Rhs == Lhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                                   ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:300:35: error: 'Lhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) {
[INFO] [stderr] warning: llook@0.1.0:       |                        ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:300:51: error: 'Rhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) {
[INFO] [stderr] warning: llook@0.1.0:       |                                        ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:303:35: error: 'Lhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                        ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:303:51: error: 'Rhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                                        ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:305:45: error: 'std::nullopt_t' has not been declared
[INFO] [stderr] warning: llook@0.1.0:   305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                                             ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:305:35: error: 'Lhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                        ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:306:45: error: 'std::nullopt_t' has not been declared
[INFO] [stderr] warning: llook@0.1.0:   306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                                             ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:306:35: error: 'Lhs' has incomplete type
[INFO] [stderr] warning: llook@0.1.0:   306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                        ~~~~~~~~~~~^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:307:13: error: declaration of 'operator==' as non-function
[INFO] [stderr] warning: llook@0.1.0:   307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); }
[INFO] [stderr] warning: llook@0.1.0:       |             ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:307:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'?
[INFO] [stderr] warning: llook@0.1.0:   307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                             ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                             nullptr_t
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:307:51: error: expected primary-expression before 'Rhs'
[INFO] [stderr] warning: llook@0.1.0:   307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                   ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:308:13: error: declaration of 'operator!=' as non-function
[INFO] [stderr] warning: llook@0.1.0:   308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); }
[INFO] [stderr] warning: llook@0.1.0:       |             ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:308:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'?
[INFO] [stderr] warning: llook@0.1.0:   308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                             ^~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0:       |                             nullptr_t
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:308:51: error: expected primary-expression before 'Rhs'
[INFO] [stderr] warning: llook@0.1.0:   308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                   ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h: In function 'std::string llvm::DebugStr(const MaybeAlign&)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:317:7: error: could not convert 'MA' from 'const llvm::MaybeAlign' to 'bool'
[INFO] [stderr] warning: llook@0.1.0:   317 |   if (MA)
[INFO] [stderr] warning: llook@0.1.0:       |       ^~
[INFO] [stderr] warning: llook@0.1.0:       |       |
[INFO] [stderr] warning: llook@0.1.0:       |       const llvm::MaybeAlign
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Alignment.h:318:29: error: base operand of '->' has non-pointer type 'const llvm::MaybeAlign'
[INFO] [stderr] warning: llook@0.1.0:   318 |     return std::to_string(MA->value());
[INFO] [stderr] warning: llook@0.1.0:       |                             ^~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Value.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Value.h:761:8: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   761 |   std::optional<int64_t> getPointerOffsetFrom(const Value *Other,
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Value.h:761:3: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:   761 |   std::optional<int64_t> getPointerOffsetFrom(const Value *Other,
[INFO] [stderr] warning: llook@0.1.0:       |   ^~~
[INFO] [stderr] warning: llook@0.1.0: In file included from /usr/include/llvm/IR/Metadata.h:27:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/LLVMContext.h:209:46: error: 'std::optional' has not been declared
[INFO] [stderr] warning: llook@0.1.0:   209 |   void setDiagnosticsMisExpectTolerance(std::optional<uint32_t> Tolerance);
[INFO] [stderr] warning: llook@0.1.0:       |                                              ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/LLVMContext.h:209:54: error: expected ',' or '...' before '<' token
[INFO] [stderr] warning: llook@0.1.0:   209 |   void setDiagnosticsMisExpectTolerance(std::optional<uint32_t> Tolerance);
[INFO] [stderr] warning: llook@0.1.0:       |                                                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/LLVMContext.h:226:44: error: 'std::optional' has not been declared
[INFO] [stderr] warning: llook@0.1.0:   226 |   void setDiagnosticsHotnessThreshold(std::optional<uint64_t> Threshold);
[INFO] [stderr] warning: llook@0.1.0:       |                                            ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/LLVMContext.h:226:52: error: expected ',' or '...' before '<' token
[INFO] [stderr] warning: llook@0.1.0:   226 |   void setDiagnosticsHotnessThreshold(std::optional<uint64_t> Threshold);
[INFO] [stderr] warning: llook@0.1.0:       |                                                    ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/PointerUnion.h:119:43:   required from 'class llvm::PointerUnion<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:316:17:   required from here
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:155:8: error: incomplete type 'llvm::detail::TypesAreDistinct<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>' used in nested name specifier
[INFO] [stderr] warning: llook@0.1.0:   155 | struct TypesAreDistinct
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:316:17:   required from here
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>'
[INFO] [stderr] warning: llook@0.1.0:   119 |   static_assert(TypesAreDistinct<PTs...>::value,
[INFO] [stderr] warning: llook@0.1.0:       |                                           ^~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/DenseMap.h: In instantiation of 'class llvm::SmallDenseMap<void*, std::pair<llvm::PointerUnion<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>, long unsigned int>, 4>':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:391:58:   required from here
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/DenseMap.h:917:30: error: non-constant condition for static assertion
[INFO] [stderr] warning: llook@0.1.0:   917 |   static_assert(isPowerOf2_64(InlineBuckets),
[INFO] [stderr] warning: llook@0.1.0:       |                 ~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/DenseMap.h:917:30:   in 'constexpr' expansion of 'llvm::isPowerOf2_64(4)'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/DenseMap.h:917:30: error: 'constexpr' call flows off the end of the function
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/PointerUnion.h:119:43:   required from 'class llvm::PointerUnion<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:959:58:   required from here
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/STLExtras.h:155:8: error: incomplete type 'llvm::detail::TypesAreDistinct<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>' used in nested name specifier
[INFO] [stderr] warning: llook@0.1.0:   155 | struct TypesAreDistinct
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~~~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:959:58:   required from here
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>'
[INFO] [stderr] warning: llook@0.1.0:   119 |   static_assert(TypesAreDistinct<PTs...>::value,
[INFO] [stderr] warning: llook@0.1.0:       |                                           ^~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:1174:70: error: 'nullopt' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:  1174 |          ArrayRef<Metadata *> Ops1, ArrayRef<Metadata *> Ops2 = std::nullopt);
[INFO] [stderr] warning: llook@0.1.0:       |                                                                      ^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:1174:70: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h: In member function 'llvm::MutableArrayRef<llvm::MDOperand> llvm::MDNode::Header::operands()':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:1146:29: error: missing template arguments before '(' token
[INFO] [stderr] warning: llook@0.1.0:  1146 |       return MutableArrayRef(
[INFO] [stderr] warning: llook@0.1.0:       |                             ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h: In member function 'llvm::ArrayRef<llvm::MDOperand> llvm::MDNode::Header::operands() const':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:1153:22: error: missing template arguments before '(' token
[INFO] [stderr] warning: llook@0.1.0:  1153 |       return ArrayRef(reinterpret_cast<const MDOperand *>(this) - SmallSize,
[INFO] [stderr] warning: llook@0.1.0:       |                      ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h: At global scope:
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h:75:12: error: 'std::optional' has not been declared
[INFO] [stderr] warning: llook@0.1.0:    75 |       std::optional<simple_ilist<DPValue>::iterator> FromHere = std::nullopt,
[INFO] [stderr] warning: llook@0.1.0:       |            ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h:75:20: error: expected ',' or '...' before '<' token
[INFO] [stderr] warning: llook@0.1.0:    75 |       std::optional<simple_ilist<DPValue>::iterator> FromHere = std::nullopt,
[INFO] [stderr] warning: llook@0.1.0:       |                    ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h:84:8: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:    84 |   std::optional<simple_ilist<DPValue>::iterator> getDbgReinsertionPosition();
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h:84:3: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:    84 |   std::optional<simple_ilist<DPValue>::iterator> getDbgReinsertionPosition();
[INFO] [stderr] warning: llook@0.1.0:       |   ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h:232:8: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr] warning: llook@0.1.0:   232 |   std::optional<InstListType::iterator> getInsertionPointAfterDef();
[INFO] [stderr] warning: llook@0.1.0:       |        ^~~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h:232:3: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0:   232 |   std::optional<InstListType::iterator> getInsertionPointAfterDef();
[INFO] [stderr] warning: llook@0.1.0:       |   ^~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h: In member function 'void llvm::Instruction::dropUnknownNonDebugMetadata()':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h:403:45: error: 'nullopt' is not a member of 'std'
[INFO] [stderr] warning: llook@0.1.0:   403 |     return dropUnknownNonDebugMetadata(std::nullopt);
[INFO] [stderr] warning: llook@0.1.0:       |                                             ^~~~~~~
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h:403:45: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h: In member function 'void llvm::Instruction::dropUnknownNonDebugMetadata(unsigned int)':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Instruction.h:406:48: error: missing template arguments before '(' token
[INFO] [stderr] warning: llook@0.1.0:   406 |     return dropUnknownNonDebugMetadata(ArrayRef(ID1));
[INFO] [stderr] warning: llook@0.1.0:       |                                                ^
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h: In instantiation of 'static bool llvm::isa_impl<To, From, Enabler>::doit(const From&) [with To = llvm::Metadata; From = llvm::DistinctMDOperandPlaceholder; Enabler = void]':
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:103:36:   required from 'static bool llvm::isa_impl_cl<To, From* const>::doit(const From*) [with To = llvm::Metadata; From = llvm::DistinctMDOperandPlaceholder]'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:137:41:   required from 'static bool llvm::isa_impl_wrap<To, FromTy, FromTy>::doit(const FromTy&) [with To = llvm::Metadata; FromTy = llvm::DistinctMDOperandPlaceholder* const]'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:257:62:   required from 'static bool llvm::CastIsPossible<To, From, Enable>::isPossible(const From&) [with To = llvm::Metadata; From = llvm::DistinctMDOperandPlaceholder* const; Enable = void]'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:549:46:   required from 'bool llvm::isa(const From&) [with To = Metadata; From = DistinctMDOperandPlaceholder*]'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:578:3:   required from 'decltype(auto) llvm::cast(From*) [with To = Metadata; From = DistinctMDOperandPlaceholder]'
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/IR/Metadata.h:1707:33:   required from here
[INFO] [stderr] warning: llook@0.1.0: /usr/include/llvm/Support/Casting.h:64:64: error: 'classof' is not a member of 'llvm::Metadata'
[INFO] [stderr] warning: llook@0.1.0:    64 |   static inline bool doit(const From &Val) { return To::classof(&Val); }
[INFO] [stderr] warning: llook@0.1.0:       |                                                     ~~~~~~~~~~~^~~~~~
[INFO] [stderr] error: failed to run custom build command for `llook v0.1.0 (/opt/rustwide/workdir)`
[INFO] [stderr] note: To improve backtraces for build dependencies, set the CARGO_PROFILE_DEV_BUILD_OVERRIDE_DEBUG=true environment variable to enable debug information generation.
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/build/llook-b8c81b1ad09f9b1d/build-script-build` (exit status: 1)
[INFO] [stderr]   --- stdout
[INFO] [stderr]   TARGET = Some("x86_64-unknown-linux-gnu")
[INFO] [stderr]   OPT_LEVEL = Some("0")
[INFO] [stderr]   HOST = Some("x86_64-unknown-linux-gnu")
[INFO] [stderr]   CXX_x86_64-unknown-linux-gnu = None
[INFO] [stderr]   CXX_x86_64_unknown_linux_gnu = None
[INFO] [stderr]   HOST_CXX = None
[INFO] [stderr]   CXX = None
[INFO] [stderr]   CXXFLAGS_x86_64-unknown-linux-gnu = None
[INFO] [stderr]   CXXFLAGS_x86_64_unknown_linux_gnu = None
[INFO] [stderr]   HOST_CXXFLAGS = None
[INFO] [stderr]   CXXFLAGS = None
[INFO] [stderr]   CRATE_CC_NO_DEFAULTS = None
[INFO] [stderr]   DEBUG = Some("true")
[INFO] [stderr]   CARGO_CFG_TARGET_FEATURE = Some("fxsr,sse,sse2")
[INFO] [stderr]   running: "c++" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "-g" "-fno-omit-frame-pointer" "-m64" "-shared" "-I" "src" "-I" "/usr/lib/llvm/12/include" "-Wall" "-Wextra" "-std=c++14" "-D_GNU_SOURCE" "-D__STDC_CONSTANT_MACROS" "-D__STDC_FORMAT_MACROS" "-D__STDC_LIMIT_MACROS" "-L/usr/lib/llvm/12/lib64" "-lLLVM-12" "-o" "/opt/rustwide/target/debug/build/llook-9a421780b6e98d46/out/src/llvm_wrapper.o" "-c" "src/llvm_wrapper.cpp"
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/Support/SwapByteOrder.h:17,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/ADT/Hashing.h:49,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/ADT/ArrayRef.h:12,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/IR/Instruction.h:17,
[INFO] [stderr]   cargo:warning=                 from src/llvm_wrapper.h:2,
[INFO] [stderr]   cargo:warning=                 from src/llvm_wrapper.cpp:1:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:46:35: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=   46 | auto transformOptional(const std::optional<T> &O, const Function &F)
[INFO] [stderr]   cargo:warning=      |                                   ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:46:30: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=   46 | auto transformOptional(const std::optional<T> &O, const Function &F)
[INFO] [stderr]   cargo:warning=      |                              ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:46:43: error: expected ',' or '...' before '<' token
[INFO] [stderr]   cargo:warning=   46 | auto transformOptional(const std::optional<T> &O, const Function &F)
[INFO] [stderr]   cargo:warning=      |                                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:47:13: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=   47 |     -> std::optional<decltype(F(*O))> {
[INFO] [stderr]   cargo:warning=      |             ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:47:8: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=   47 |     -> std::optional<decltype(F(*O))> {
[INFO] [stderr]   cargo:warning=      |        ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:47:21: error: expected initializer before '<' token
[INFO] [stderr]   cargo:warning=   47 |     -> std::optional<decltype(F(*O))> {
[INFO] [stderr]   cargo:warning=      |                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:56:29: error: 'optional' is not a member of 'std'
[INFO] [stderr]   cargo:warning=   56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr]   cargo:warning=      |                             ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:56:29: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:56:39: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=   56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr]   cargo:warning=      |                                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:56:43: error: label 'O' referenced outside of any function
[INFO] [stderr]   cargo:warning=   56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr]   cargo:warning=      |                                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:56:46: error: expected primary-expression before 'const'
[INFO] [stderr]   cargo:warning=   56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr]   cargo:warning=      |                                              ^~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:56:63: error: expression list treated as compound expression in initializer [-fpermissive]
[INFO] [stderr]   cargo:warning=   56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr]   cargo:warning=      |                                                               ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLForwardCompat.h:56:64: error: expected ';' before '->' token
[INFO] [stderr]   cargo:warning=   56 | auto transformOptional(std::optional<T> &&O, const Function &F)
[INFO] [stderr]   cargo:warning=      |                                                                ^
[INFO] [stderr]   cargo:warning=      |                                                                ;
[INFO] [stderr]   cargo:warning=   57 |     -> std::optional<decltype(F(*std::move(O)))> {
[INFO] [stderr]   cargo:warning=      |     ~~                                                          
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/Support/SwapByteOrder.h:18:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:100:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'?
[INFO] [stderr]   cargo:warning=  100 | template <typename T, typename = std::enable_if_t<std::is_integral_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_integral
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:100:56: error: 'is_integral_v' is not a member of 'std'; did you mean 'is_integral'?
[INFO] [stderr]   cargo:warning=  100 | template <typename T, typename = std::enable_if_t<std::is_integral_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_integral
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:100:70: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  100 | template <typename T, typename = std::enable_if_t<std::is_integral_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:100:73: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=  100 | template <typename T, typename = std::enable_if_t<std::is_integral_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                         ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:145:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  145 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:145:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  145 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:145:70: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  145 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:145:73: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=  145 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                         ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_zero(T)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:216:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  216 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                      ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                      is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:216:37: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  216 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:216:38: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  216 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_zero(T)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:282:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  282 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                      ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                      is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:282:37: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  282 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:282:38: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  282 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h: In function 'int llvm::countl_one(T)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:295:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  295 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                      ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                      is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:295:37: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  295 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:295:38: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  295 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h: In function 'int llvm::countr_one(T)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:308:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  308 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                      ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                      is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:308:37: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  308 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:308:38: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  308 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h: In function 'int llvm::bit_width(T)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:318:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  318 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                      ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                      is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:318:37: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  318 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:318:38: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  318 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_floor(T)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:328:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  328 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                      ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                      is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:328:37: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  328 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:328:38: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  328 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h: In function 'T llvm::bit_ceil(T)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:343:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  343 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                      ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                      is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:343:37: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  343 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:343:38: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  343 |   static_assert(std::is_unsigned_v<T>,
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:384:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  384 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:384:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  384 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:384:70: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  384 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:384:73: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=  384 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                         ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:390:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  390 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:390:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  390 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:390:70: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  390 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:390:73: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=  390 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                         ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:393:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  393 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:393:56: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  393 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:393:70: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  393 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:393:73: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=  393 | template <typename T, typename = std::enable_if_t<std::is_unsigned_v<T>>>
[INFO] [stderr]   cargo:warning=      |                                                                         ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h: In function 'constexpr T llvm::rotr(T, int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:415:18: error: 'rotl' is not a member of 'llvm'; did you mean 'rotr'?
[INFO] [stderr]   cargo:warning=  415 |     return llvm::rotl(V, -R);
[INFO] [stderr]   cargo:warning=      |                  ^~~~
[INFO] [stderr]   cargo:warning=      |                  rotr
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned char llvm::sys::getSwappedBytes(unsigned char)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:31:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   31 | inline unsigned char      getSwappedBytes(unsigned char      C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'signed char llvm::sys::getSwappedBytes(signed char)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:32:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   32 | inline   signed char      getSwappedBytes( signed  char      C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'char llvm::sys::getSwappedBytes(char)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:33:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   33 | inline          char      getSwappedBytes(         char      C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'short unsigned int llvm::sys::getSwappedBytes(short unsigned int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:35:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   35 | inline unsigned short     getSwappedBytes(unsigned short     C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'short int llvm::sys::getSwappedBytes(short int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:36:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   36 | inline   signed short     getSwappedBytes(  signed short     C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'unsigned int llvm::sys::getSwappedBytes(unsigned int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:38:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   38 | inline unsigned int       getSwappedBytes(unsigned int       C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'int llvm::sys::getSwappedBytes(int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:39:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   39 | inline   signed int       getSwappedBytes(  signed int       C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'long unsigned int llvm::sys::getSwappedBytes(long unsigned int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:41:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   41 | inline unsigned long      getSwappedBytes(unsigned long      C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'long int llvm::sys::getSwappedBytes(long int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:42:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   42 | inline   signed long      getSwappedBytes(  signed long      C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'long long unsigned int llvm::sys::getSwappedBytes(long long unsigned int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:44:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   44 | inline unsigned long long getSwappedBytes(unsigned long long C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'long long int llvm::sys::getSwappedBytes(long long int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:45:80: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   45 | inline   signed long long getSwappedBytes(  signed long long C) { return llvm::byteswap(C); }
[INFO] [stderr]   cargo:warning=      |                                                                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'float llvm::sys::getSwappedBytes(float)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:48:38: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   48 |   return llvm::bit_cast<float>(llvm::byteswap(llvm::bit_cast<uint32_t>(C)));
[INFO] [stderr]   cargo:warning=      |                                      ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: In function 'double llvm::sys::getSwappedBytes(double)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:52:39: error: 'byteswap' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=   52 |   return llvm::bit_cast<double>(llvm::byteswap(llvm::bit_cast<uint64_t>(C)));
[INFO] [stderr]   cargo:warning=      |                                       ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:56:30: error: 'is_enum_v' is not a member of 'std'; did you mean 'is_enum'?
[INFO] [stderr]   cargo:warning=   56 | inline std::enable_if_t<std::is_enum_v<T>, T> getSwappedBytes(T C) {
[INFO] [stderr]   cargo:warning=      |                              ^~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                              is_enum
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:56:30: error: 'is_enum_v' is not a member of 'std'; did you mean 'is_enum'?
[INFO] [stderr]   cargo:warning=   56 | inline std::enable_if_t<std::is_enum_v<T>, T> getSwappedBytes(T C) {
[INFO] [stderr]   cargo:warning=      |                              ^~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                              is_enum
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:56:41: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=   56 | inline std::enable_if_t<std::is_enum_v<T>, T> getSwappedBytes(T C) {
[INFO] [stderr]   cargo:warning=      |                                         ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/SwapByteOrder.h:56:42: error: expected unqualified-id before ',' token
[INFO] [stderr]   cargo:warning=   56 | inline std::enable_if_t<std::is_enum_v<T>, T> getSwappedBytes(T C) {
[INFO] [stderr]   cargo:warning=      |                                          ^
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/ADT/Hashing.h:50:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:35:13: error: 'is_class_v' is not a member of 'std'; did you mean 'is_class'?
[INFO] [stderr]   cargo:warning=   35 |       !std::is_class_v<UnderlyingT> && // Filter conversion operators.
[INFO] [stderr]   cargo:warning=      |             ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |             is_class
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:35:35: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=   35 |       !std::is_class_v<UnderlyingT> && // Filter conversion operators.
[INFO] [stderr]   cargo:warning=      |                                   ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:36:7: error: expected identifier before '!' token
[INFO] [stderr]   cargo:warning=   36 |       !std::is_pointer_v<UnderlyingT> &&
[INFO] [stderr]   cargo:warning=      |       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:35:37: error: expected ';' at end of member declaration
[INFO] [stderr]   cargo:warning=   35 |       !std::is_class_v<UnderlyingT> && // Filter conversion operators.
[INFO] [stderr]   cargo:warning=      |                                     ^~
[INFO] [stderr]   cargo:warning=      |                                       ;
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:36:7: error: expected unqualified-id before '!' token
[INFO] [stderr]   cargo:warning=   36 |       !std::is_pointer_v<UnderlyingT> &&
[INFO] [stderr]   cargo:warning=      |       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:48:30: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=   48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                              ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                              is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:48:30: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=   48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                              ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                              is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:48:43: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=   48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:48:44: error: template argument 2 is invalid
[INFO] [stderr]   cargo:warning=   48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                            ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:48:46: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=   48 |     T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                              ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:58:56: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=   58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:58:56: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=   58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                        ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                        is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:58:69: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=   58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:58:70: error: template argument 2 is invalid
[INFO] [stderr]   cargo:warning=   58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                                      ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:58:72: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=   58 | struct add_const_past_pointer<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                                        ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:67:60: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=   67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                            ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                            is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:67:60: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=   67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                            ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                            is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:67:73: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=   67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                                         ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:67:74: error: template argument 2 is invalid
[INFO] [stderr]   cargo:warning=   67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                                          ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/type_traits.h:67:76: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=   67 | struct const_pointer_or_const_ref<T, std::enable_if_t<std::is_pointer_v<T>>> {
[INFO] [stderr]   cargo:warning=      |                                                                            ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:127:55: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=  127 | template <typename T> hash_code hash_value(const std::optional<T> &arg);
[INFO] [stderr]   cargo:warning=      |                                                       ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:127:50: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=  127 | template <typename T> hash_code hash_value(const std::optional<T> &arg);
[INFO] [stderr]   cargo:warning=      |                                                  ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:127:63: error: expected ',' or '...' before '<' token
[INFO] [stderr]   cargo:warning=  127 | template <typename T> hash_code hash_value(const std::optional<T> &arg);
[INFO] [stderr]   cargo:warning=      |                                                               ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h: In function 'uint64_t llvm::hashing::detail::hash_17to32_bytes(const char*, size_t, uint64_t)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:222:44: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  222 |   return hash_16_bytes(llvm::rotr<uint64_t>(a - b, 43) +
[INFO] [stderr]   cargo:warning=      |                        ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:222:44: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  222 |   return hash_16_bytes(llvm::rotr<uint64_t>(a - b, 43) +
[INFO] [stderr]   cargo:warning=      |                        ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:223:48: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  223 |                            llvm::rotr<uint64_t>(c ^ seed, 30) + d,
[INFO] [stderr]   cargo:warning=      |                            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:223:48: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  223 |                            llvm::rotr<uint64_t>(c ^ seed, 30) + d,
[INFO] [stderr]   cargo:warning=      |                            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:224:48: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  224 |                        a + llvm::rotr<uint64_t>(b ^ k3, 20) - c + len + seed);
[INFO] [stderr]   cargo:warning=      |                            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:224:48: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  224 |                        a + llvm::rotr<uint64_t>(b ^ k3, 20) - c + len + seed);
[INFO] [stderr]   cargo:warning=      |                            ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h: In function 'uint64_t llvm::hashing::detail::hash_33to64_bytes(const char*, size_t, uint64_t)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:230:36: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  230 |   uint64_t b = llvm::rotr<uint64_t>(a + z, 52);
[INFO] [stderr]   cargo:warning=      |                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:230:36: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  230 |   uint64_t b = llvm::rotr<uint64_t>(a + z, 52);
[INFO] [stderr]   cargo:warning=      |                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:231:36: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr]   cargo:warning=  231 |   uint64_t c = llvm::rotr<uint64_t>(a, 37);
[INFO] [stderr]   cargo:warning=      |                ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:231:36: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  231 |   uint64_t c = llvm::rotr<uint64_t>(a, 37);
[INFO] [stderr]   cargo:warning=      |                ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:233:28: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr]   cargo:warning=  233 |   c += llvm::rotr<uint64_t>(a, 7);
[INFO] [stderr]   cargo:warning=      |        ~~~~~~~~~~~~~~~~~~~~^~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:233:28: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  233 |   c += llvm::rotr<uint64_t>(a, 7);
[INFO] [stderr]   cargo:warning=      |        ~~~~~~~~~~~~~~~~~~~~^~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:236:41: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr]   cargo:warning=  236 |   uint64_t vs = b + llvm::rotr<uint64_t>(a, 31) + c;
[INFO] [stderr]   cargo:warning=      |                     ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:236:41: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  236 |   uint64_t vs = b + llvm::rotr<uint64_t>(a, 31) + c;
[INFO] [stderr]   cargo:warning=      |                     ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:239:27: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  239 |   b = llvm::rotr<uint64_t>(a + z, 52);
[INFO] [stderr]   cargo:warning=      |       ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:239:27: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  239 |   b = llvm::rotr<uint64_t>(a + z, 52);
[INFO] [stderr]   cargo:warning=      |       ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:240:27: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr]   cargo:warning=  240 |   c = llvm::rotr<uint64_t>(a, 37);
[INFO] [stderr]   cargo:warning=      |       ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:240:27: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  240 |   c = llvm::rotr<uint64_t>(a, 37);
[INFO] [stderr]   cargo:warning=      |       ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:242:28: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr]   cargo:warning=  242 |   c += llvm::rotr<uint64_t>(a, 7);
[INFO] [stderr]   cargo:warning=      |        ~~~~~~~~~~~~~~~~~~~~^~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:242:28: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  242 |   c += llvm::rotr<uint64_t>(a, 7);
[INFO] [stderr]   cargo:warning=      |        ~~~~~~~~~~~~~~~~~~~~^~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:245:41: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr]   cargo:warning=  245 |   uint64_t ws = b + llvm::rotr<uint64_t>(a, 31) + c;
[INFO] [stderr]   cargo:warning=      |                     ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:245:41: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  245 |   uint64_t ws = b + llvm::rotr<uint64_t>(a, 31) + c;
[INFO] [stderr]   cargo:warning=      |                     ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h: In static member function 'static llvm::hashing::detail::hash_state llvm::hashing::detail::hash_state::create(const char*, uint64_t)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:278:45: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  278 |                         llvm::rotr<uint64_t>(seed ^ k1, 49),
[INFO] [stderr]   cargo:warning=      |                         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:278:45: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  278 |                         llvm::rotr<uint64_t>(seed ^ k1, 49),
[INFO] [stderr]   cargo:warning=      |                         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h: In static member function 'static void llvm::hashing::detail::hash_state::mix_32_bytes(const char*, uint64_t&, uint64_t&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:292:29: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  292 |     b = llvm::rotr<uint64_t>(b + a + c, 21);
[INFO] [stderr]   cargo:warning=      |         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:292:29: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  292 |     b = llvm::rotr<uint64_t>(b + a + c, 21);
[INFO] [stderr]   cargo:warning=      |         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:295:30: error: no matching function for call to 'rotr<uint64_t>(uint64_t&, int)'
[INFO] [stderr]   cargo:warning=  295 |     b += llvm::rotr<uint64_t>(a, 44) + d;
[INFO] [stderr]   cargo:warning=      |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:295:30: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  295 |     b += llvm::rotr<uint64_t>(a, 44) + d;
[INFO] [stderr]   cargo:warning=      |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h: In member function 'void llvm::hashing::detail::hash_state::mix(const char*)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:303:30: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  303 |     h0 = llvm::rotr<uint64_t>(h0 + h1 + h3 + fetch64(s + 8), 37) * k1;
[INFO] [stderr]   cargo:warning=      |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:303:30: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  303 |     h0 = llvm::rotr<uint64_t>(h0 + h1 + h3 + fetch64(s + 8), 37) * k1;
[INFO] [stderr]   cargo:warning=      |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:304:30: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  304 |     h1 = llvm::rotr<uint64_t>(h1 + h4 + fetch64(s + 48), 42) * k1;
[INFO] [stderr]   cargo:warning=      |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:304:30: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  304 |     h1 = llvm::rotr<uint64_t>(h1 + h4 + fetch64(s + 48), 42) * k1;
[INFO] [stderr]   cargo:warning=      |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:307:30: error: no matching function for call to 'rotr<uint64_t>(uint64_t, int)'
[INFO] [stderr]   cargo:warning=  307 |     h2 = llvm::rotr<uint64_t>(h2 + h5, 33) * k1;
[INFO] [stderr]   cargo:warning=      |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note: candidate: 'template<class T, class> constexpr T llvm::rotr(T, int)'
[INFO] [stderr]   cargo:warning=  407 | template <typename T, typename> [[nodiscard]] constexpr T rotr(T V, int R) {
[INFO] [stderr]   cargo:warning=      |                                                           ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/bit.h:407:59: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:307:30: note:   couldn't deduce template parameter '<template-parameter-1-2>'
[INFO] [stderr]   cargo:warning=  307 |     h2 = llvm::rotr<uint64_t>(h2 + h5, 33) * k1;
[INFO] [stderr]   cargo:warning=      |          ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(const std::tuple<_Elements ...>&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:663:15: error: 'apply' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  663 |   return std::apply([](const auto &...xs) { return hash_combine(xs...); }, arg);
[INFO] [stderr]   cargo:warning=      |               ^~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:663:15: note: 'std::apply' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:673:55: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=  673 | template <typename T> hash_code hash_value(const std::optional<T> &arg) {
[INFO] [stderr]   cargo:warning=      |                                                       ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:673:50: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=  673 | template <typename T> hash_code hash_value(const std::optional<T> &arg) {
[INFO] [stderr]   cargo:warning=      |                                                  ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:673:63: error: expected ',' or '...' before '<' token
[INFO] [stderr]   cargo:warning=  673 | template <typename T> hash_code hash_value(const std::optional<T> &arg) {
[INFO] [stderr]   cargo:warning=      |                                                               ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h: In function 'llvm::hash_code llvm::hash_value(int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:674:10: error: 'arg' was not declared in this scope
[INFO] [stderr]   cargo:warning=  674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr]   cargo:warning=      |          ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:674:53: error: no matching function for call to 'hash_value(bool)'
[INFO] [stderr]   cargo:warning=  674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr]   cargo:warning=      |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:643:60: note: candidate: 'template<class T> std::enable_if_t<llvm::is_integral_or_enum<T>::value, llvm::hash_code> llvm::hash_value(T)'
[INFO] [stderr]   cargo:warning=  643 | std::enable_if_t<is_integral_or_enum<T>::value, hash_code> hash_value(T value) {
[INFO] [stderr]   cargo:warning=      |                                                            ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:643:60: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:650:33: note: candidate: 'template<class T> llvm::hash_code llvm::hash_value(const T*)'
[INFO] [stderr]   cargo:warning=  650 | template <typename T> hash_code hash_value(const T *ptr) {
[INFO] [stderr]   cargo:warning=      |                                 ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:650:33: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:674:53: note:   mismatched types 'const T*' and 'bool'
[INFO] [stderr]   cargo:warning=  674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr]   cargo:warning=      |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:658:11: note: candidate: 'template<class T, class U> llvm::hash_code llvm::hash_value(const std::pair<_T1, _T2>&)'
[INFO] [stderr]   cargo:warning=  658 | hash_code hash_value(const std::pair<T, U> &arg) {
[INFO] [stderr]   cargo:warning=      |           ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:658:11: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:674:53: note:   mismatched types 'const std::pair<_T1, _T2>' and 'bool'
[INFO] [stderr]   cargo:warning=  674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr]   cargo:warning=      |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:662:37: note: candidate: 'template<class ... Ts> llvm::hash_code llvm::hash_value(const std::tuple<_Elements ...>&)'
[INFO] [stderr]   cargo:warning=  662 | template <typename... Ts> hash_code hash_value(const std::tuple<Ts...> &arg) {
[INFO] [stderr]   cargo:warning=      |                                     ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:662:37: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:674:53: note:   mismatched types 'const std::tuple<_Elements ...>' and 'bool'
[INFO] [stderr]   cargo:warning=  674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr]   cargo:warning=      |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:669:11: note: candidate: 'template<class T> llvm::hash_code llvm::hash_value(const std::__cxx11::basic_string<T>&)'
[INFO] [stderr]   cargo:warning=  669 | hash_code hash_value(const std::basic_string<T> &arg) {
[INFO] [stderr]   cargo:warning=      |           ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:669:11: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:674:53: note:   mismatched types 'const std::__cxx11::basic_string<T>' and 'bool'
[INFO] [stderr]   cargo:warning=  674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr]   cargo:warning=      |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:673:33: note: candidate: 'template<class T> llvm::hash_code llvm::hash_value(int)'
[INFO] [stderr]   cargo:warning=  673 | template <typename T> hash_code hash_value(const std::optional<T> &arg) {
[INFO] [stderr]   cargo:warning=      |                                 ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:673:33: note:   template argument deduction/substitution failed:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/Hashing.h:674:53: note:   couldn't deduce template parameter 'T'
[INFO] [stderr]   cargo:warning=  674 |   return arg ? hash_combine(true, *arg) : hash_value(false);
[INFO] [stderr]   cargo:warning=      |                                           ~~~~~~~~~~^~~~~~~
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/ADT/ArrayRef.h:13:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/SmallVector.h: In static member function 'static void llvm::SmallVectorTemplateBase<T, <anonymous> >::uninitialized_move(It1, It1, It2)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/SmallVector.h:362:10: error: 'uninitialized_move' is not a member of 'std'; did you mean 'uninitialized_copy'?
[INFO] [stderr]   cargo:warning=  362 |     std::uninitialized_move(I, E, Dest);
[INFO] [stderr]   cargo:warning=      |          ^~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |          uninitialized_copy
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/ADT/STLExtras.h:20,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/ADT/ArrayRef.h:14:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ADL.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ADL.h:49:12: error: 'size' has not been declared in 'std'
[INFO] [stderr]   cargo:warning=   49 | using std::size;
[INFO] [stderr]   cargo:warning=      |            ^~~~
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/ADT/iterator.h:12,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/ADT/STLExtras.h:24:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/iterator_range.h:33:10: error: 'void_t' is not a member of 'std'
[INFO] [stderr]   cargo:warning=   33 |     std::void_t<decltype(static_cast<To>(
[INFO] [stderr]   cargo:warning=      |          ^~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/iterator_range.h:33:10: note: 'std::void_t' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/iterator_range.h:33:10: error: 'void_t' is not a member of 'std'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/iterator_range.h:33:10: note: 'std::void_t' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/iterator_range.h:34:60: error: template argument 3 is invalid
[INFO] [stderr]   cargo:warning=   34 |         std::declval<std::add_rvalue_reference_t<From>>()))>> : std::true_type {
[INFO] [stderr]   cargo:warning=      |                                                            ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/iterator_range.h:68:79: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=   68 | iterator_range(Container &&) -> iterator_range<detail::IterOfRange<Container>>;
[INFO] [stderr]   cargo:warning=      |                                                                               ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:66:22: error: 'void_t' is not a member of 'std'
[INFO] [stderr]   cargo:warning=   66 | struct detector<std::void_t<Op<Args...>>, Op, Args...> {
[INFO] [stderr]   cargo:warning=      |                      ^~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:66:22: note: 'std::void_t' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:66:22: error: 'void_t' is not a member of 'std'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:66:22: note: 'std::void_t' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:66:39: error: wrong number of template arguments (1, should be at least 2)
[INFO] [stderr]   cargo:warning=   66 | struct detector<std::void_t<Op<Args...>>, Op, Args...> {
[INFO] [stderr]   cargo:warning=      |                                       ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:62:70: note: provided for 'template<class, template<class ...> class Op, class ... Args> struct llvm::detail::detector'
[INFO] [stderr]   cargo:warning=   62 | template <class, template <class...> class Op, class... Args> struct detector {
[INFO] [stderr]   cargo:warning=      |                                                                      ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:129:24: error: 'disjunction' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=  129 | using is_one_of = std::disjunction<std::is_same<T, Ts>...>;
[INFO] [stderr]   cargo:warning=      |                        ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:129:19: note: 'std::disjunction' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=  129 | using is_one_of = std::disjunction<std::is_same<T, Ts>...>;
[INFO] [stderr]   cargo:warning=      |                   ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:134:26: error: 'conjunction' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=  134 | using are_base_of = std::conjunction<std::is_base_of<T, Ts>...>;
[INFO] [stderr]   cargo:warning=      |                          ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:134:21: note: 'std::conjunction' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=  134 | using are_base_of = std::conjunction<std::is_base_of<T, Ts>...>;
[INFO] [stderr]   cargo:warning=      |                     ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:140:37: error: 'is_one_of' was not declared in this scope
[INFO] [stderr]   cargo:warning=  140 |     : std::integral_constant<bool, !is_one_of<T, Us...>::value &&
[INFO] [stderr]   cargo:warning=      |                                     ^~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:140:55: error: template argument 2 is invalid
[INFO] [stderr]   cargo:warning=  140 |     : std::integral_constant<bool, !is_one_of<T, Us...>::value &&
[INFO] [stderr]   cargo:warning=      |                                                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:140:56: error: expected '{' before '::' token
[INFO] [stderr]   cargo:warning=  140 |     : std::integral_constant<bool, !is_one_of<T, Us...>::value &&
[INFO] [stderr]   cargo:warning=      |                                                        ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:209:23: error: 'is_function_v' is not a member of 'std'; did you mean 'is_function'?
[INFO] [stderr]   cargo:warning=  209 |           bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t<T>>>>
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_function
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:209:77: error: expected primary-expression before '>>' token
[INFO] [stderr]   cargo:warning=  209 |           bool = std::is_function_v<std::remove_pointer_t<remove_cvref_t<T>>>>
[INFO] [stderr]   cargo:warning=      |                                                                             ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:209:77: error: expected '>' before '>>' token
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:215:8: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=  215 |   std::optional<value_type> Obj;
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:215:3: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=  215 |   std::optional<value_type> Obj;
[INFO] [stderr]   cargo:warning=      |   ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:217:23: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=  217 |   static_assert(!std::is_pointer_v<value_type>,
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:217:46: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  217 |   static_assert(!std::is_pointer_v<value_type>,
[INFO] [stderr]   cargo:warning=      |                                              ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:217:47: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  217 |   static_assert(!std::is_pointer_v<value_type>,
[INFO] [stderr]   cargo:warning=      |                                               ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:242:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  242 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr]   cargo:warning=      |                                   ^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:242:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:242:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template<bool _Cond, class _Tp> using std::enable_if_t = typename std::enable_if::type'
[INFO] [stderr]   cargo:warning=  242 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr]   cargo:warning=      |                                                          ^
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/ADT/STLForwardCompat.h:21:
[INFO] [stderr]   cargo:warning=/usr/include/c++/13/type_traits:2609:24: note: declared here
[INFO] [stderr]   cargo:warning= 2609 |   template<bool _Cond, typename _Tp = void>
[INFO] [stderr]   cargo:warning=      |                        ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:242:66: error: expected unqualified-id before '=' token
[INFO] [stderr]   cargo:warning=  242 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr]   cargo:warning=      |                                                                  ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:248:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  248 |             std::enable_if_t<std::is_invocable_v<T const, Pn...>, int> = 0>
[INFO] [stderr]   cargo:warning=      |                                   ^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:248:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:248:64: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  248 |             std::enable_if_t<std::is_invocable_v<T const, Pn...>, int> = 0>
[INFO] [stderr]   cargo:warning=      |                                                                ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:248:72: error: expected unqualified-id before '=' token
[INFO] [stderr]   cargo:warning=  248 |             std::enable_if_t<std::is_invocable_v<T const, Pn...>, int> = 0>
[INFO] [stderr]   cargo:warning=      |                                                                        ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In constructor 'llvm::callable_detail::Callable<T, <anonymous> >::Callable(const T&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:222:26: error: class 'llvm::callable_detail::Callable<T, <anonymous> >' does not have any field named 'Obj'
[INFO] [stderr]   cargo:warning=  222 |   Callable(T const &O) : Obj(std::in_place, O) {}
[INFO] [stderr]   cargo:warning=      |                          ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:222:35: error: 'in_place' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  222 |   Callable(T const &O) : Obj(std::in_place, O) {}
[INFO] [stderr]   cargo:warning=      |                                   ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:222:35: note: 'std::in_place' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, <anonymous> >& llvm::callable_detail::Callable<T, <anonymous> >::operator=(const llvm::callable_detail::Callable<T, <anonymous> >&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:228:5: error: 'Obj' was not declared in this scope
[INFO] [stderr]   cargo:warning=  228 |     Obj = std::nullopt;
[INFO] [stderr]   cargo:warning=      |     ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:228:16: error: 'nullopt' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  228 |     Obj = std::nullopt;
[INFO] [stderr]   cargo:warning=      |                ^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:228:16: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, <anonymous> >& llvm::callable_detail::Callable<T, <anonymous> >::operator=(llvm::callable_detail::Callable<T, <anonymous> >&&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:235:5: error: 'Obj' was not declared in this scope
[INFO] [stderr]   cargo:warning=  235 |     Obj = std::nullopt;
[INFO] [stderr]   cargo:warning=      |     ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:235:16: error: 'nullopt' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  235 |     Obj = std::nullopt;
[INFO] [stderr]   cargo:warning=      |                ^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:235:16: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable<T, <anonymous> >::valid() const':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:253:31: error: 'Obj' was not declared in this scope
[INFO] [stderr]   cargo:warning=  253 |   bool valid() const { return Obj != std::nullopt; }
[INFO] [stderr]   cargo:warning=      |                               ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:253:43: error: 'nullopt' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  253 |   bool valid() const { return Obj != std::nullopt; }
[INFO] [stderr]   cargo:warning=      |                                           ^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:253:43: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable<T, <anonymous> >::reset()':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:254:25: error: 'Obj' was not declared in this scope
[INFO] [stderr]   cargo:warning=  254 |   bool reset() { return Obj = std::nullopt; }
[INFO] [stderr]   cargo:warning=      |                         ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:254:36: error: 'nullopt' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  254 |   bool reset() { return Obj = std::nullopt; }
[INFO] [stderr]   cargo:warning=      |                                    ^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:254:36: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, <anonymous> >::operator reference()':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:256:34: error: 'Obj' was not declared in this scope
[INFO] [stderr]   cargo:warning=  256 |   operator reference() { return *Obj; }
[INFO] [stderr]   cargo:warning=      |                                  ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, <anonymous> >::operator const_reference() const':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:257:46: error: 'Obj' was not declared in this scope
[INFO] [stderr]   cargo:warning=  257 |   operator const_reference() const { return *Obj; }
[INFO] [stderr]   cargo:warning=      |                                              ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:263:38: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=  263 |   static constexpr bool IsPtr = std::is_pointer_v<remove_cvref_t<T>>;
[INFO] [stderr]   cargo:warning=      |                                      ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                      is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:263:67: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  263 |   static constexpr bool IsPtr = std::is_pointer_v<remove_cvref_t<T>>;
[INFO] [stderr]   cargo:warning=      |                                                                   ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:263:69: error: expected primary-expression before ';' token
[INFO] [stderr]   cargo:warning=  263 |   static constexpr bool IsPtr = std::is_pointer_v<remove_cvref_t<T>>;
[INFO] [stderr]   cargo:warning=      |                                                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:269:3: error: 'StorageT' does not name a type
[INFO] [stderr]   cargo:warning=  269 |   StorageT Func = nullptr;
[INFO] [stderr]   cargo:warning=      |   ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:292:13: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
[INFO] [stderr]   cargo:warning=  292 |       !std::is_same_v<remove_cvref_t<FnPtrOrRef>, Callable>, int
[INFO] [stderr]   cargo:warning=      |             ^~~~~~~~~
[INFO] [stderr]   cargo:warning=      |             is_same
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:292:59: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  292 |       !std::is_same_v<remove_cvref_t<FnPtrOrRef>, Callable>, int
[INFO] [stderr]   cargo:warning=      |                                                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:293:7: error: expected unqualified-id before '=' token
[INFO] [stderr]   cargo:warning=  293 |     > = 0
[INFO] [stderr]   cargo:warning=      |       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:298:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  298 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr]   cargo:warning=      |                                   ^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:298:35: error: 'is_invocable_v' is not a member of 'std'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:298:58: error: pack expansion argument for non-pack parameter '_Tp' of alias template 'template<bool _Cond, class _Tp> using std::enable_if_t = typename std::enable_if::type'
[INFO] [stderr]   cargo:warning=  298 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr]   cargo:warning=      |                                                          ^
[INFO] [stderr]   cargo:warning=/usr/include/c++/13/type_traits:2609:24: note: declared here
[INFO] [stderr]   cargo:warning= 2609 |   template<bool _Cond, typename _Tp = void>
[INFO] [stderr]   cargo:warning=      |                        ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:298:66: error: expected unqualified-id before '=' token
[INFO] [stderr]   cargo:warning=  298 |             std::enable_if_t<std::is_invocable_v<T, Pn...>, int> = 0>
[INFO] [stderr]   cargo:warning=      |                                                                  ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In member function 'bool llvm::callable_detail::Callable<T, true>::valid() const':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:303:31: error: 'Func' was not declared in this scope
[INFO] [stderr]   cargo:warning=  303 |   bool valid() const { return Func != nullptr; }
[INFO] [stderr]   cargo:warning=      |                               ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In member function 'void llvm::callable_detail::Callable<T, true>::reset()':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:304:18: error: 'Func' was not declared in this scope
[INFO] [stderr]   cargo:warning=  304 |   void reset() { Func = nullptr; }
[INFO] [stderr]   cargo:warning=      |                  ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In member function 'llvm::callable_detail::Callable<T, true>::operator const T&() const':
[INFO] [stdout] error: could not find native static library `Polly`, perhaps an -L flag is missing?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:309:14: error: 'Func' was not declared in this scope
[INFO] [stderr]   cargo:warning=  309 |       return Func;
[INFO] [stderr]   cargo:warning=      |              ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:311:26: error: 'is_reference_v' is not a member of 'std'; did you mean 'is_reference'?
[INFO] [stderr]   cargo:warning=  311 |       static_assert(std::is_reference_v<T>,
[INFO] [stderr]   cargo:warning=      |                          ^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                          is_reference
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:311:42: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  311 |       static_assert(std::is_reference_v<T>,
[INFO] [stderr]   cargo:warning=      |                                          ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:311:43: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  311 |       static_assert(std::is_reference_v<T>,
[INFO] [stderr]   cargo:warning=      |                                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:314:15: error: 'Func' was not declared in this scope
[INFO] [stderr]   cargo:warning=  314 |       return *Func;
[INFO] [stderr]   cargo:warning=      |               ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:366:35: error: template argument 2 is invalid
[INFO] [stderr]   cargo:warning=  366 |   callable_detail::Callable<FuncTy> F{};
[INFO] [stderr]   cargo:warning=      |                                   ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:903:60: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=  903 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional<
[INFO] [stderr]   cargo:warning=      |                                                            ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:903:55: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=  903 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional<
[INFO] [stderr]   cargo:warning=      |                                                       ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:903:68: error: expected initializer before '<' token
[INFO] [stderr]   cargo:warning=  903 | auto deref_or_none(const Iter &I, const Iter &End) -> std::optional<
[INFO] [stderr]   cargo:warning=      |                                                                    ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:911:21: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=  911 |   using type = std::optional<std::remove_const_t<
[INFO] [stderr]   cargo:warning=      |                     ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:911:16: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=  911 |   using type = std::optional<std::remove_const_t<
[INFO] [stderr]   cargo:warning=      |                ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:1648:38: error: 'conjunction' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning= 1648 | using sort_trivially_copyable = std::conjunction<
[INFO] [stderr]   cargo:warning=      |                                      ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:1648:33: note: 'std::conjunction' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning= 1648 | using sort_trivially_copyable = std::conjunction<
[INFO] [stderr]   cargo:warning=      |                                 ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In function 'void llvm::sort(IteratorTy, IteratorTy)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:1657:25: error: 'sort_trivially_copyable' is not a member of 'llvm::detail'
[INFO] [stderr]   cargo:warning= 1657 |   if constexpr (detail::sort_trivially_copyable<IteratorTy>::value) {
[INFO] [stderr]   cargo:warning=      |                         ^~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:1657:59: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning= 1657 |   if constexpr (detail::sort_trivially_copyable<IteratorTy>::value) {
[INFO] [stderr]   cargo:warning=      |                                                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:1657:62: error: '::value' has not been declared
[INFO] [stderr]   cargo:warning= 1657 |   if constexpr (detail::sort_trivially_copyable<IteratorTy>::value) {
[INFO] [stderr]   cargo:warning=      |                                                              ^~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In function 'bool llvm::detail::all_of_zip_predicate_first(Predicate&&, Args&& ...)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:2403:15: error: 'apply' is not a member of 'std'
[INFO] [stderr]   cargo:warning= 2403 |     if (!std::apply([&](auto &&...args) { return P(args...); }, *it))
[INFO] [stderr]   cargo:warning=      |               ^~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:2403:15: note: 'std::apply' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:70:27: error: invalid use of '::'
[INFO] [stderr]   cargo:warning=   70 |     /*implicit*/ ArrayRef(std::nullopt_t) {}
[INFO] [stderr]   cargo:warning=      |                           ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:70:44: error: expected ';' at end of member declaration
[INFO] [stderr]   cargo:warning=   70 |     /*implicit*/ ArrayRef(std::nullopt_t) {}
[INFO] [stderr]   cargo:warning=      |                                            ^
[INFO] [stderr]   cargo:warning=      |                                             ;
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:325:34: error: invalid use of '::'
[INFO] [stderr]   cargo:warning=  325 |     /*implicit*/ MutableArrayRef(std::nullopt_t) : ArrayRef<T>() {}
[INFO] [stderr]   cargo:warning=      |                                  ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:474:65: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  474 |   template <typename T> ArrayRef(const T &OneElt) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                 ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:477:78: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  477 |   template <typename T> ArrayRef(const T *data, size_t length) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                              ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:480:77: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  480 |   template <typename T> ArrayRef(const T *data, const T *end) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                             ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:483:79: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  483 |   template <typename T> ArrayRef(const SmallVectorImpl<T> &Vec) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                               ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:487:56: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  487 |   ArrayRef(const SmallVector<T, N> &Vec) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                        ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:490:75: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  490 |   template <typename T> ArrayRef(const std::vector<T> &Vec) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:494:55: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  494 |   ArrayRef(const std::array<T, N> &Vec) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:497:72: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  497 |   template <typename T> ArrayRef(const ArrayRef<T> &Vec) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                        ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:500:66: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  500 |   template <typename T> ArrayRef(ArrayRef<T> &Vec) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                  ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:503:77: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  503 |   template <typename T, size_t N> ArrayRef(const T (&Arr)[N]) -> ArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                             ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:582:70: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  582 |   template <class T> MutableArrayRef(T &OneElt) -> MutableArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:587:64: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  587 |   MutableArrayRef(T *data, size_t length) -> MutableArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:591:65: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  591 |   MutableArrayRef(SmallVectorImpl<T> &Vec) -> MutableArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                 ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:594:64: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  594 |   MutableArrayRef(SmallVector<T, N> &Vec) -> MutableArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:597:80: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  597 |   template <class T> MutableArrayRef(std::vector<T> &Vec) -> MutableArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                                                ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:601:63: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  601 |   MutableArrayRef(std::array<T, N> &Vec) -> MutableArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                               ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/ArrayRef.h:605:53: error: expected constructor, destructor, or type conversion before ';' token
[INFO] [stderr]   cargo:warning=  605 |   MutableArrayRef(T (&Arr)[N]) -> MutableArrayRef<T>;
[INFO] [stderr]   cargo:warning=      |                                                     ^
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/IR/Instruction.h:19:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/StringRef.h:104:54: error: expected ')' before 'Str'
[INFO] [stderr]   cargo:warning=  104 |     /*implicit*/ constexpr StringRef(std::string_view Str)
[INFO] [stderr]   cargo:warning=      |                                     ~                ^~~~
[INFO] [stderr]   cargo:warning=      |                                                      )
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/StringRef.h:248:24: error: expected type-specifier
[INFO] [stderr]   cargo:warning=  248 |     constexpr operator std::string_view() const {
[INFO] [stderr]   cargo:warning=      |                        ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/StringRef.h: In member function 'size_t llvm::StringRef::find(char, size_t) const':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/StringRef.h:294:19: error: 'string_view' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  294 |       return std::string_view(*this).find(C, From);
[INFO] [stderr]   cargo:warning=      |                   ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/StringRef.h:294:19: note: 'std::string_view' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/StringRef.h: In member function 'llvm::StringRef llvm::StringRef::slice(size_t, size_t) const':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/StringRef.h:682:18: error: 'clamp' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  682 |       End = std::clamp(End, Start, Length);
[INFO] [stderr]   cargo:warning=      |                  ^~~~~
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/ADT/DenseMap.h:21,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/IR/Metadata.h:19,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/IR/TrackingMDRef.h:16,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/IR/DebugLoc.h:17,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/IR/Instruction.h:21:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h: In function 'T llvm::maskTrailingOnes(unsigned int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:66:22: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=   66 |   static_assert(std::is_unsigned_v<T>, "Invalid type!");
[INFO] [stderr]   cargo:warning=      |                      ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                      is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:66:37: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=   66 |   static_assert(std::is_unsigned_v<T>, "Invalid type!");
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:66:38: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=   66 |   static_assert(std::is_unsigned_v<T>, "Invalid type!");
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_32(uint32_t)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:265:16: error: 'has_single_bit' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=  265 |   return llvm::has_single_bit(Value);
[INFO] [stderr]   cargo:warning=      |                ^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h: In function 'constexpr bool llvm::isPowerOf2_64(uint64_t)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:270:16: error: 'has_single_bit' is not a member of 'llvm'
[INFO] [stderr]   cargo:warning=  270 |   return llvm::has_single_bit(Value);
[INFO] [stderr]   cargo:warning=      |                ^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_32(uint32_t, unsigned int&, unsigned int&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:283:19: error: 'popcount' is not a member of 'llvm'; did you mean 'count'?
[INFO] [stderr]   cargo:warning=  283 |   MaskLen = llvm::popcount(Value);
[INFO] [stderr]   cargo:warning=      |                   ^~~~~~~~
[INFO] [stderr]   cargo:warning=      |                   count
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h: In function 'bool llvm::isShiftedMask_64(uint64_t, unsigned int&, unsigned int&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:296:19: error: 'popcount' is not a member of 'llvm'; did you mean 'count'?
[INFO] [stderr]   cargo:warning=  296 |   MaskLen = llvm::popcount(Value);
[INFO] [stderr]   cargo:warning=      |                   ^~~~~~~~
[INFO] [stderr]   cargo:warning=      |                   count
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:469:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  469 | std::enable_if_t<std::is_unsigned_v<T>, T> AbsoluteDifference(T X, T Y) {
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:469:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  469 | std::enable_if_t<std::is_unsigned_v<T>, T> AbsoluteDifference(T X, T Y) {
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:469:38: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  469 | std::enable_if_t<std::is_unsigned_v<T>, T> AbsoluteDifference(T X, T Y) {
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:469:39: error: expected unqualified-id before ',' token
[INFO] [stderr]   cargo:warning=  469 | std::enable_if_t<std::is_unsigned_v<T>, T> AbsoluteDifference(T X, T Y) {
[INFO] [stderr]   cargo:warning=      |                                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:477:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  477 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:477:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  477 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:477:38: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  477 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:477:39: error: expected unqualified-id before ',' token
[INFO] [stderr]   cargo:warning=  477 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:493:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  493 | std::enable_if_t<std::is_unsigned_v<T>, T> SaturatingAdd(T X, T Y, T Z,
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:493:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  493 | std::enable_if_t<std::is_unsigned_v<T>, T> SaturatingAdd(T X, T Y, T Z,
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:493:38: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  493 | std::enable_if_t<std::is_unsigned_v<T>, T> SaturatingAdd(T X, T Y, T Z,
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:493:39: error: expected unqualified-id before ',' token
[INFO] [stderr]   cargo:warning=  493 | std::enable_if_t<std::is_unsigned_v<T>, T> SaturatingAdd(T X, T Y, T Z,
[INFO] [stderr]   cargo:warning=      |                                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:506:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  506 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:506:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  506 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:506:38: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  506 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:506:39: error: expected unqualified-id before ',' token
[INFO] [stderr]   cargo:warning=  506 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:552:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  552 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:552:23: error: 'is_unsigned_v' is not a member of 'std'; did you mean 'is_unsigned'?
[INFO] [stderr]   cargo:warning=  552 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_unsigned
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:552:38: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  552 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:552:39: error: expected unqualified-id before ',' token
[INFO] [stderr]   cargo:warning=  552 | std::enable_if_t<std::is_unsigned_v<T>, T>
[INFO] [stderr]   cargo:warning=      |                                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:571:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr]   cargo:warning=  571 | std::enable_if_t<std::is_signed_v<T>, T> AddOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_signed
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:571:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr]   cargo:warning=  571 | std::enable_if_t<std::is_signed_v<T>, T> AddOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_signed
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:571:36: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  571 | std::enable_if_t<std::is_signed_v<T>, T> AddOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                                    ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:571:37: error: expected unqualified-id before ',' token
[INFO] [stderr]   cargo:warning=  571 | std::enable_if_t<std::is_signed_v<T>, T> AddOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:597:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr]   cargo:warning=  597 | std::enable_if_t<std::is_signed_v<T>, T> SubOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_signed
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:597:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr]   cargo:warning=  597 | std::enable_if_t<std::is_signed_v<T>, T> SubOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_signed
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:597:36: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  597 | std::enable_if_t<std::is_signed_v<T>, T> SubOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                                    ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:597:37: error: expected unqualified-id before ',' token
[INFO] [stderr]   cargo:warning=  597 | std::enable_if_t<std::is_signed_v<T>, T> SubOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:623:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr]   cargo:warning=  623 | std::enable_if_t<std::is_signed_v<T>, T> MulOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_signed
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:623:23: error: 'is_signed_v' is not a member of 'std'; did you mean 'is_signed'?
[INFO] [stderr]   cargo:warning=  623 | std::enable_if_t<std::is_signed_v<T>, T> MulOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                       ^~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                       is_signed
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:623:36: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  623 | std::enable_if_t<std::is_signed_v<T>, T> MulOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                                    ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/MathExtras.h:623:37: error: expected unqualified-id before ',' token
[INFO] [stderr]   cargo:warning=  623 | std::enable_if_t<std::is_signed_v<T>, T> MulOverflow(T X, T Y, T &Result) {
[INFO] [stderr]   cargo:warning=      |                                     ^
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/ADT/PointerUnion.h:21,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/IR/Metadata.h:21:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:69:49: error: 'is_base_of_v' is not a member of 'std'; did you mean 'is_base_of'?
[INFO] [stderr]   cargo:warning=   69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                 ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                 is_base_of
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:69:49: error: 'is_base_of_v' is not a member of 'std'; did you mean 'is_base_of'?
[INFO] [stderr]   cargo:warning=   69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                 ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                 is_base_of
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:69:66: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=   69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                                  ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:69:70: error: template argument 3 is invalid
[INFO] [stderr]   cargo:warning=   69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                                      ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:69:72: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=   69 | struct isa_impl<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                                        ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:234:12: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
[INFO] [stderr]   cargo:warning=  234 |       std::is_same_v<X, typename simplify_type<X>::SimpleType>;
[INFO] [stderr]   cargo:warning=      |            ^~~~~~~~~
[INFO] [stderr]   cargo:warning=      |            is_same
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:234:23: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  234 |       std::is_same_v<X, typename simplify_type<X>::SimpleType>;
[INFO] [stderr]   cargo:warning=      |                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:234:25: error: expected unqualified-id before 'typename'
[INFO] [stderr]   cargo:warning=  234 |       std::is_same_v<X, typename simplify_type<X>::SimpleType>;
[INFO] [stderr]   cargo:warning=      |                         ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  266 | struct CastIsPossible<To, std::optional<From>> {
[INFO] [stderr]   cargo:warning=      |                                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:266:32: error: 'optional' is not a member of 'std'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:266:32: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:266:41: error: template argument 2 is invalid
[INFO] [stderr]   cargo:warning=  266 | struct CastIsPossible<To, std::optional<From>> {
[INFO] [stderr]   cargo:warning=      |                                         ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:266:45: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=  266 | struct CastIsPossible<To, std::optional<From>> {
[INFO] [stderr]   cargo:warning=      |                                             ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:278:55: error: 'is_base_of_v' is not a member of 'std'; did you mean 'is_base_of'?
[INFO] [stderr]   cargo:warning=  278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                       ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                       is_base_of
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:278:55: error: 'is_base_of_v' is not a member of 'std'; did you mean 'is_base_of'?
[INFO] [stderr]   cargo:warning=  278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                       ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                                       is_base_of
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:278:72: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                                        ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:278:76: error: template argument 3 is invalid
[INFO] [stderr]   cargo:warning=  278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                                            ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:278:78: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=  278 | struct CastIsPossible<To, From, std::enable_if_t<std::is_base_of_v<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                                              ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:321:42: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
[INFO] [stderr]   cargo:warning=  321 | using SelfType = std::conditional_t<std::is_same_v<OptionalDerived, void>,
[INFO] [stderr]   cargo:warning=      |                                          ^~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                          is_same
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:321:42: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
[INFO] [stderr]   cargo:warning=  321 | using SelfType = std::conditional_t<std::is_same_v<OptionalDerived, void>,
[INFO] [stderr]   cargo:warning=      |                                          ^~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                          is_same
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:321:73: error: wrong number of template arguments (2, should be 3)
[INFO] [stderr]   cargo:warning=  321 | using SelfType = std::conditional_t<std::is_same_v<OptionalDerived, void>,
[INFO] [stderr]   cargo:warning=      |                                                                         ^
[INFO] [stderr]   cargo:warning=/usr/include/c++/13/type_traits:2614:11: note: provided for 'template<bool _Cond, class _Iftrue, class _Iffalse> using std::conditional_t = typename std::conditional::type'
[INFO] [stderr]   cargo:warning= 2614 |     using conditional_t = typename conditional<_Cond, _Iftrue, _Iffalse>::type;
[INFO] [stderr]   cargo:warning=      |           ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:334:19: error: 'SelfType' is not a member of 'llvm::detail'
[INFO] [stderr]   cargo:warning=  334 |           detail::SelfType<Derived, ValueFromPointerCast<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                   ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:334:19: error: 'SelfType' is not a member of 'llvm::detail'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:334:66: error: wrong number of template arguments (4, should be 3)
[INFO] [stderr]   cargo:warning=  334 |           detail::SelfType<Derived, ValueFromPointerCast<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                                  ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:309:8: note: provided for 'template<class To, class From, class Derived> struct llvm::DefaultDoCastIfPossible'
[INFO] [stderr]   cargo:warning=  309 | struct DefaultDoCastIfPossible {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:334:68: error: expected '{' before '>' token
[INFO] [stderr]   cargo:warning=  334 |           detail::SelfType<Derived, ValueFromPointerCast<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                                                                    ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:344:24: error: 'SelfType' in namespace 'llvm::detail' does not name a template type
[INFO] [stderr]   cargo:warning=  344 |   using Self = detail::SelfType<Derived, UniquePtrCast<To, From>>;
[INFO] [stderr]   cargo:warning=      |                        ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h: In static member function 'static llvm::UniquePtrCast<To, From, Derived>::CastResultType llvm::UniquePtrCast<To, From, Derived>::doCastIfPossible(std::unique_ptr<From>&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:355:10: error: 'Self' has not been declared
[INFO] [stderr]   cargo:warning=  355 |     if (!Self::isPossible(f.get()))
[INFO] [stderr]   cargo:warning=      |          ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:368:16: error: 'optional' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  368 |           std::optional<To>, From,
[INFO] [stderr]   cargo:warning=      |                ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:368:16: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:368:16: error: 'optional' is not a member of 'std'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:368:16: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:368:27: error: wrong number of template arguments (1, should be 3)
[INFO] [stderr]   cargo:warning=  368 |           std::optional<To>, From,
[INFO] [stderr]   cargo:warning=      |                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:309:8: note: provided for 'template<class To, class From, class Derived> struct llvm::DefaultDoCastIfPossible'
[INFO] [stderr]   cargo:warning=  309 | struct DefaultDoCastIfPossible {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:369:27: error: expected template-name before '<' token
[INFO] [stderr]   cargo:warning=  369 |           detail::SelfType<Derived, OptionalValueCast<To, From>>> {
[INFO] [stderr]   cargo:warning=      |                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:369:27: error: expected '{' before '<' token
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:393:31: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=  393 |       std::conditional_t<std::is_pointer_v<From>, DecayedFrom *, DecayedFrom &>;
[INFO] [stderr]   cargo:warning=      |                               ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                               is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:393:31: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=  393 |       std::conditional_t<std::is_pointer_v<From>, DecayedFrom *, DecayedFrom &>;
[INFO] [stderr]   cargo:warning=      |                               ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                               is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:393:48: error: wrong number of template arguments (1, should be 3)
[INFO] [stderr]   cargo:warning=  393 |       std::conditional_t<std::is_pointer_v<From>, DecayedFrom *, DecayedFrom &>;
[INFO] [stderr]   cargo:warning=      |                                                ^
[INFO] [stderr]   cargo:warning=/usr/include/c++/13/type_traits:2614:11: note: provided for 'template<bool _Cond, class _Iftrue, class _Iffalse> using std::conditional_t = typename std::conditional::type'
[INFO] [stderr]   cargo:warning= 2614 |     using conditional_t = typename conditional<_Cond, _Iftrue, _Iffalse>::type;
[INFO] [stderr]   cargo:warning=      |           ^~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h: In static member function 'static bool llvm::ConstStrippingForwardingCast<To, From, ForwardTo>::isPossible(const From&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:396:45: error: 'NonConstFrom' does not name a type
[INFO] [stderr]   cargo:warning=  396 |     return ForwardTo::isPossible(const_cast<NonConstFrom>(f));
[INFO] [stderr]   cargo:warning=      |                                             ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h: In static member function 'static decltype(auto) llvm::ConstStrippingForwardingCast<To, From, ForwardTo>::doCast(const From&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:402:41: error: 'NonConstFrom' does not name a type
[INFO] [stderr]   cargo:warning=  402 |     return ForwardTo::doCast(const_cast<NonConstFrom>(f));
[INFO] [stderr]   cargo:warning=      |                                         ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h: In static member function 'static decltype(auto) llvm::ConstStrippingForwardingCast<To, From, ForwardTo>::doCastIfPossible(const From&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:406:51: error: 'NonConstFrom' does not name a type
[INFO] [stderr]   cargo:warning=  406 |     return ForwardTo::doCastIfPossible(const_cast<NonConstFrom>(f));
[INFO] [stderr]   cargo:warning=      |                                                   ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:539:26: error: 'optional' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  539 | struct CastInfo<To, std::optional<From>> : public OptionalValueCast<To, From> {
[INFO] [stderr]   cargo:warning=      |                          ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:539:26: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:539:26: error: 'optional' is not a member of 'std'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:539:26: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:539:35: error: template argument 2 is invalid
[INFO] [stderr]   cargo:warning=  539 | struct CastInfo<To, std::optional<From>> : public OptionalValueCast<To, From> {
[INFO] [stderr]   cargo:warning=      |                                   ^~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:539:39: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=  539 | struct CastInfo<To, std::optional<From>> : public OptionalValueCast<To, From> {
[INFO] [stderr]   cargo:warning=      |                                       ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:594:10: error: 'is_pointer_v' is not a member of 'std'; did you mean 'is_pointer'?
[INFO] [stderr]   cargo:warning=  594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr]   cargo:warning=      |          ^~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |          is_pointer
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:594:24: error: expected primary-expression before '>' token
[INFO] [stderr]   cargo:warning=  594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr]   cargo:warning=      |                        ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:594:26: error: expected primary-expression before '||' token
[INFO] [stderr]   cargo:warning=  594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr]   cargo:warning=      |                          ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:594:34: error: 'is_constructible_v' is not a member of 'std'; did you mean 'is_constructible'?
[INFO] [stderr]   cargo:warning=  594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr]   cargo:warning=      |                                  ^~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                                  is_constructible
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:594:54: error: expected primary-expression before ',' token
[INFO] [stderr]   cargo:warning=  594 |     std::is_pointer_v<T> || std::is_constructible_v<T, std::nullptr_t>;
[INFO] [stderr]   cargo:warning=      |                                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:609:50: error: 'optional' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  609 | template <typename T> struct ValueIsPresent<std::optional<T>> {
[INFO] [stderr]   cargo:warning=      |                                                  ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:609:50: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:609:50: error: 'optional' is not a member of 'std'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:609:50: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:609:59: error: template argument 1 is invalid
[INFO] [stderr]   cargo:warning=  609 | template <typename T> struct ValueIsPresent<std::optional<T>> {
[INFO] [stderr]   cargo:warning=      |                                                           ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:609:60: error: expected unqualified-id before '>' token
[INFO] [stderr]   cargo:warning=  609 | template <typename T> struct ValueIsPresent<std::optional<T>> {
[INFO] [stderr]   cargo:warning=      |                                                            ^~
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/IR/Value.h:21,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/IR/User.h:24,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/IR/Constant.h:16,
[INFO] [stderr]   cargo:warning=                 from /usr/include/llvm/IR/Metadata.h:26:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h: In static member function 'static constexpr llvm::Align llvm::Align::Of()':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:103:26: error: 'alignment_of_v' is not a member of 'std'; did you mean 'alignment_of'?
[INFO] [stderr]   cargo:warning=  103 |     return Constant<std::alignment_of_v<T>>();
[INFO] [stderr]   cargo:warning=      |                          ^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                          alignment_of
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:103:26: error: 'alignment_of_v' is not a member of 'std'; did you mean 'alignment_of'?
[INFO] [stderr]   cargo:warning=  103 |     return Constant<std::alignment_of_v<T>>();
[INFO] [stderr]   cargo:warning=      |                          ^~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                          alignment_of
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:103:12: error: parse error in template argument list
[INFO] [stderr]   cargo:warning=  103 |     return Constant<std::alignment_of_v<T>>();
[INFO] [stderr]   cargo:warning=      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:103:45: error: expected primary-expression before ')' token
[INFO] [stderr]   cargo:warning=  103 |     return Constant<std::alignment_of_v<T>>();
[INFO] [stderr]   cargo:warning=      |                                             ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:41: error: expected template-name before '<' token
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |                                         ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:41: error: expected '{' before '<' token
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:41: error: expected unqualified-id before '<' token
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:217:35: error: 'A' has incomplete type
[INFO] [stderr]   cargo:warning=  217 | inline unsigned encode(MaybeAlign A) { return A ? A->ShiftValue + 1 : 0; }
[INFO] [stderr]   cargo:warning=      |                        ~~~~~~~~~~~^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:220:50: error: return type 'struct llvm::MaybeAlign' is incomplete
[INFO] [stderr]   cargo:warning=  220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) {
[INFO] [stderr]   cargo:warning=      |                                                  ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:220:19: error: ambiguating new declaration of 'void llvm::decodeMaybeAlign(unsigned int)'
[INFO] [stderr]   cargo:warning=  220 | inline MaybeAlign decodeMaybeAlign(unsigned Value) {
[INFO] [stderr]   cargo:warning=      |                   ^~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:53:28: note: old declaration 'llvm::MaybeAlign llvm::decodeMaybeAlign(unsigned int)'
[INFO] [stderr]   cargo:warning=   53 |   friend struct MaybeAlign decodeMaybeAlign(unsigned Value);
[INFO] [stderr]   cargo:warning=      |                            ^~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h: In function 'void llvm::decodeMaybeAlign(unsigned int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:222:23: error: invalid use of incomplete type 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  222 |     return MaybeAlign();
[INFO] [stderr]   cargo:warning=      |                       ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:224:7: error: 'uint8_t llvm::Align::ShiftValue' is private within this context
[INFO] [stderr]   cargo:warning=  224 |   Out.ShiftValue = Value - 1;
[INFO] [stderr]   cargo:warning=      |       ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:41:11: note: declared private here
[INFO] [stderr]   cargo:warning=   41 |   uint8_t ShiftValue = 0; /// The log2 of the required alignment.
[INFO] [stderr]   cargo:warning=      |           ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h: In function 'unsigned int llvm::encode(Align)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:230:61: error: invalid use of incomplete type 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  230 | inline unsigned encode(Align A) { return encode(MaybeAlign(A)); }
[INFO] [stderr]   cargo:warning=      |                                                             ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:295:35: error: 'Lhs' has incomplete type
[INFO] [stderr]   cargo:warning=  295 | inline bool operator==(MaybeAlign Lhs, Align Rhs) { return Lhs && *Lhs == Rhs; }
[INFO] [stderr]   cargo:warning=      |                        ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:296:35: error: 'Lhs' has incomplete type
[INFO] [stderr]   cargo:warning=  296 | inline bool operator!=(MaybeAlign Lhs, Align Rhs) { return !(Lhs == Rhs); }
[INFO] [stderr]   cargo:warning=      |                        ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:297:46: error: 'Rhs' has incomplete type
[INFO] [stderr]   cargo:warning=  297 | inline bool operator==(Align Lhs, MaybeAlign Rhs) { return Rhs == Lhs; }
[INFO] [stderr]   cargo:warning=      |                                   ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:298:46: error: 'Rhs' has incomplete type
[INFO] [stderr]   cargo:warning=  298 | inline bool operator!=(Align Lhs, MaybeAlign Rhs) { return !(Rhs == Lhs); }
[INFO] [stderr]   cargo:warning=      |                                   ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:300:35: error: 'Lhs' has incomplete type
[INFO] [stderr]   cargo:warning=  300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) {
[INFO] [stderr]   cargo:warning=      |                        ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:300:51: error: 'Rhs' has incomplete type
[INFO] [stderr]   cargo:warning=  300 | inline bool operator==(MaybeAlign Lhs, MaybeAlign Rhs) {
[INFO] [stderr]   cargo:warning=      |                                        ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:303:35: error: 'Lhs' has incomplete type
[INFO] [stderr]   cargo:warning=  303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); }
[INFO] [stderr]   cargo:warning=      |                        ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:303:51: error: 'Rhs' has incomplete type
[INFO] [stderr]   cargo:warning=  303 | inline bool operator!=(MaybeAlign Lhs, MaybeAlign Rhs) { return !(Lhs == Rhs); }
[INFO] [stderr]   cargo:warning=      |                                        ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:305:45: error: 'std::nullopt_t' has not been declared
[INFO] [stderr]   cargo:warning=  305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); }
[INFO] [stderr]   cargo:warning=      |                                             ^~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:305:35: error: 'Lhs' has incomplete type
[INFO] [stderr]   cargo:warning=  305 | inline bool operator==(MaybeAlign Lhs, std::nullopt_t) { return !bool(Lhs); }
[INFO] [stderr]   cargo:warning=      |                        ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:306:45: error: 'std::nullopt_t' has not been declared
[INFO] [stderr]   cargo:warning=  306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); }
[INFO] [stderr]   cargo:warning=      |                                             ^~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:306:35: error: 'Lhs' has incomplete type
[INFO] [stderr]   cargo:warning=  306 | inline bool operator!=(MaybeAlign Lhs, std::nullopt_t) { return bool(Lhs); }
[INFO] [stderr]   cargo:warning=      |                        ~~~~~~~~~~~^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:117:8: note: forward declaration of 'struct llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  117 | struct MaybeAlign : public std::optional<Align> {
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:307:13: error: declaration of 'operator==' as non-function
[INFO] [stderr]   cargo:warning=  307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); }
[INFO] [stderr]   cargo:warning=      |             ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:307:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'?
[INFO] [stderr]   cargo:warning=  307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); }
[INFO] [stderr]   cargo:warning=      |                             ^~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                             nullptr_t
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:307:51: error: expected primary-expression before 'Rhs'
[INFO] [stderr]   cargo:warning=  307 | inline bool operator==(std::nullopt_t, MaybeAlign Rhs) { return !bool(Rhs); }
[INFO] [stderr]   cargo:warning=      |                                                   ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:308:13: error: declaration of 'operator!=' as non-function
[INFO] [stderr]   cargo:warning=  308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); }
[INFO] [stderr]   cargo:warning=      |             ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:308:29: error: 'nullopt_t' is not a member of 'std'; did you mean 'nullptr_t'?
[INFO] [stderr]   cargo:warning=  308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); }
[INFO] [stderr]   cargo:warning=      |                             ^~~~~~~~~
[INFO] [stderr]   cargo:warning=      |                             nullptr_t
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:308:51: error: expected primary-expression before 'Rhs'
[INFO] [stderr]   cargo:warning=  308 | inline bool operator!=(std::nullopt_t, MaybeAlign Rhs) { return bool(Rhs); }
[INFO] [stderr]   cargo:warning=      |                                                   ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h: In function 'std::string llvm::DebugStr(const MaybeAlign&)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:317:7: error: could not convert 'MA' from 'const llvm::MaybeAlign' to 'bool'
[INFO] [stderr]   cargo:warning=  317 |   if (MA)
[INFO] [stderr]   cargo:warning=      |       ^~
[INFO] [stderr]   cargo:warning=      |       |
[INFO] [stderr]   cargo:warning=      |       const llvm::MaybeAlign
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Alignment.h:318:29: error: base operand of '->' has non-pointer type 'const llvm::MaybeAlign'
[INFO] [stderr]   cargo:warning=  318 |     return std::to_string(MA->value());
[INFO] [stderr]   cargo:warning=      |                             ^~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Value.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Value.h:761:8: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=  761 |   std::optional<int64_t> getPointerOffsetFrom(const Value *Other,
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Value.h:761:3: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=  761 |   std::optional<int64_t> getPointerOffsetFrom(const Value *Other,
[INFO] [stderr]   cargo:warning=      |   ^~~
[INFO] [stderr]   cargo:warning=In file included from /usr/include/llvm/IR/Metadata.h:27:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/LLVMContext.h:209:46: error: 'std::optional' has not been declared
[INFO] [stderr]   cargo:warning=  209 |   void setDiagnosticsMisExpectTolerance(std::optional<uint32_t> Tolerance);
[INFO] [stderr]   cargo:warning=      |                                              ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/LLVMContext.h:209:54: error: expected ',' or '...' before '<' token
[INFO] [stderr]   cargo:warning=  209 |   void setDiagnosticsMisExpectTolerance(std::optional<uint32_t> Tolerance);
[INFO] [stderr]   cargo:warning=      |                                                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/LLVMContext.h:226:44: error: 'std::optional' has not been declared
[INFO] [stderr]   cargo:warning=  226 |   void setDiagnosticsHotnessThreshold(std::optional<uint64_t> Threshold);
[INFO] [stderr]   cargo:warning=      |                                            ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/LLVMContext.h:226:52: error: expected ',' or '...' before '<' token
[INFO] [stderr]   cargo:warning=  226 |   void setDiagnosticsHotnessThreshold(std::optional<uint64_t> Threshold);
[INFO] [stderr]   cargo:warning=      |                                                    ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/PointerUnion.h:119:43:   required from 'class llvm::PointerUnion<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:316:17:   required from here
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:155:8: error: incomplete type 'llvm::detail::TypesAreDistinct<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>' used in nested name specifier
[INFO] [stderr]   cargo:warning=  155 | struct TypesAreDistinct
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:316:17:   required from here
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>'
[INFO] [stderr]   cargo:warning=  119 |   static_assert(TypesAreDistinct<PTs...>::value,
[INFO] [stderr]   cargo:warning=      |                                           ^~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/DenseMap.h: In instantiation of 'class llvm::SmallDenseMap<void*, std::pair<llvm::PointerUnion<llvm::MetadataAsValue*, llvm::Metadata*, llvm::DebugValueUser*>, long unsigned int>, 4>':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:391:58:   required from here
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/DenseMap.h:917:30: error: non-constant condition for static assertion
[INFO] [stderr]   cargo:warning=  917 |   static_assert(isPowerOf2_64(InlineBuckets),
[INFO] [stderr]   cargo:warning=      |                 ~~~~~~~~~~~~~^~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/DenseMap.h:917:30:   in 'constexpr' expansion of 'llvm::isPowerOf2_64(4)'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/DenseMap.h:917:30: error: 'constexpr' call flows off the end of the function
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h: In instantiation of 'struct llvm::TypesAreDistinct<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/PointerUnion.h:119:43:   required from 'class llvm::PointerUnion<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:959:58:   required from here
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/STLExtras.h:155:8: error: incomplete type 'llvm::detail::TypesAreDistinct<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>' used in nested name specifier
[INFO] [stderr]   cargo:warning=  155 | struct TypesAreDistinct
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~~~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/PointerUnion.h: In instantiation of 'class llvm::PointerUnion<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:959:58:   required from here
[INFO] [stderr]   cargo:warning=/usr/include/llvm/ADT/PointerUnion.h:119:43: error: 'value' is not a member of 'llvm::TypesAreDistinct<llvm::LLVMContext*, llvm::ReplaceableMetadataImpl*>'
[INFO] [stderr]   cargo:warning=  119 |   static_assert(TypesAreDistinct<PTs...>::value,
[INFO] [stderr]   cargo:warning=      |                                           ^~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:1174:70: error: 'nullopt' is not a member of 'std'
[INFO] [stderr]   cargo:warning= 1174 |          ArrayRef<Metadata *> Ops1, ArrayRef<Metadata *> Ops2 = std::nullopt);
[INFO] [stderr]   cargo:warning=      |                                                                      ^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:1174:70: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h: In member function 'llvm::MutableArrayRef<llvm::MDOperand> llvm::MDNode::Header::operands()':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:1146:29: error: missing template arguments before '(' token
[INFO] [stderr]   cargo:warning= 1146 |       return MutableArrayRef(
[INFO] [stderr]   cargo:warning=      |                             ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h: In member function 'llvm::ArrayRef<llvm::MDOperand> llvm::MDNode::Header::operands() const':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:1153:22: error: missing template arguments before '(' token
[INFO] [stderr]   cargo:warning= 1153 |       return ArrayRef(reinterpret_cast<const MDOperand *>(this) - SmallSize,
[INFO] [stderr]   cargo:warning=      |                      ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h: At global scope:
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h:75:12: error: 'std::optional' has not been declared
[INFO] [stderr]   cargo:warning=   75 |       std::optional<simple_ilist<DPValue>::iterator> FromHere = std::nullopt,
[INFO] [stderr]   cargo:warning=      |            ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h:75:20: error: expected ',' or '...' before '<' token
[INFO] [stderr]   cargo:warning=   75 |       std::optional<simple_ilist<DPValue>::iterator> FromHere = std::nullopt,
[INFO] [stderr]   cargo:warning=      |                    ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h:84:8: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=   84 |   std::optional<simple_ilist<DPValue>::iterator> getDbgReinsertionPosition();
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h:84:3: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=   84 |   std::optional<simple_ilist<DPValue>::iterator> getDbgReinsertionPosition();
[INFO] [stderr]   cargo:warning=      |   ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h:232:8: error: 'optional' in namespace 'std' does not name a template type
[INFO] [stderr]   cargo:warning=  232 |   std::optional<InstListType::iterator> getInsertionPointAfterDef();
[INFO] [stderr]   cargo:warning=      |        ^~~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h:232:3: note: 'std::optional' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=  232 |   std::optional<InstListType::iterator> getInsertionPointAfterDef();
[INFO] [stderr]   cargo:warning=      |   ^~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h: In member function 'void llvm::Instruction::dropUnknownNonDebugMetadata()':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h:403:45: error: 'nullopt' is not a member of 'std'
[INFO] [stderr]   cargo:warning=  403 |     return dropUnknownNonDebugMetadata(std::nullopt);
[INFO] [stderr]   cargo:warning=      |                                             ^~~~~~~
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h:403:45: note: 'std::nullopt' is only available from C++17 onwards
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h: In member function 'void llvm::Instruction::dropUnknownNonDebugMetadata(unsigned int)':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Instruction.h:406:48: error: missing template arguments before '(' token
[INFO] [stderr]   cargo:warning=  406 |     return dropUnknownNonDebugMetadata(ArrayRef(ID1));
[INFO] [stderr]   cargo:warning=      |                                                ^
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h: In instantiation of 'static bool llvm::isa_impl<To, From, Enabler>::doit(const From&) [with To = llvm::Metadata; From = llvm::DistinctMDOperandPlaceholder; Enabler = void]':
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:103:36:   required from 'static bool llvm::isa_impl_cl<To, From* const>::doit(const From*) [with To = llvm::Metadata; From = llvm::DistinctMDOperandPlaceholder]'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:137:41:   required from 'static bool llvm::isa_impl_wrap<To, FromTy, FromTy>::doit(const FromTy&) [with To = llvm::Metadata; FromTy = llvm::DistinctMDOperandPlaceholder* const]'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:257:62:   required from 'static bool llvm::CastIsPossible<To, From, Enable>::isPossible(const From&) [with To = llvm::Metadata; From = llvm::DistinctMDOperandPlaceholder* const; Enable = void]'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:549:46:   required from 'bool llvm::isa(const From&) [with To = Metadata; From = DistinctMDOperandPlaceholder*]'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:578:3:   required from 'decltype(auto) llvm::cast(From*) [with To = Metadata; From = DistinctMDOperandPlaceholder]'
[INFO] [stderr]   cargo:warning=/usr/include/llvm/IR/Metadata.h:1707:33:   required from here
[INFO] [stderr]   cargo:warning=/usr/include/llvm/Support/Casting.h:64:64: error: 'classof' is not a member of 'llvm::Metadata'
[INFO] [stderr]   cargo:warning=   64 |   static inline bool doit(const From &Val) { return To::classof(&Val); }
[INFO] [stderr]   cargo:warning=      |                                                     ~~~~~~~~~~~^~~~~~
[INFO] [stderr]   exit status: 1
[INFO] [stderr] 
[INFO] [stderr]   --- stderr
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stderr]   error occurred: Command "c++" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "-g" "-fno-omit-frame-pointer" "-m64" "-shared" "-I" "src" "-I" "/usr/lib/llvm/12/include" "-Wall" "-Wextra" "-std=c++14" "-D_GNU_SOURCE" "-D__STDC_CONSTANT_MACROS" "-D__STDC_FORMAT_MACROS" "-D__STDC_LIMIT_MACROS" "-L/usr/lib/llvm/12/lib64" "-lLLVM-12" "-o" "/opt/rustwide/target/debug/build/llook-9a421780b6e98d46/out/src/llvm_wrapper.o" "-c" "src/llvm_wrapper.cpp" with args "c++" did not execute successfully (status code exit status: 1).
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `llvm-sys` (lib) due to 1 previous error
[INFO] running `Command { std: "docker" "inspect" "f102ff7ee2be35829ca2759464122b2b8b390c0dc0ec03a8f8bbf2c74eb6a770", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f102ff7ee2be35829ca2759464122b2b8b390c0dc0ec03a8f8bbf2c74eb6a770", kill_on_drop: false }`
[INFO] [stdout] f102ff7ee2be35829ca2759464122b2b8b390c0dc0ec03a8f8bbf2c74eb6a770
