time emerge -av1 sys-devel/gcc These are the packages that would be merged, in order: Calculating dependencies ... done! [ebuild U ] sys-devel/gcc-11.3.0-r1:11.3.0::core-kit [11.3.0:11.3.0::core-kit] USE="bootstrap cxx fortran nls openmp pie ssp stack_clash_protection (-ada) (-altivec) -bootstrap-O3 -bootstrap-lean -bootstrap-lto -bootstrap-profiled -checking_all -checking_assert -checking_df -checking_extra -checking_fold -checking_gc -checking_gcac -checking_misc -checking_no -checking_release -checking_rtl -checking_rtlflag -checking_runtime -checking_tree -checking_valgrind -checking_yes -d -dev_extra_warnings -doc -generic_host -go (-graphite) (-jit) (-libssp) -link_now (-multilib) -objc -objc++ -objc-gc -pch (-sanitize) -ssp_all -stage1_checking_all -stage1_checking_assert -stage1_checking_df -stage1_checking_extra -stage1_checking_fold -stage1_checking_gc -stage1_checking_gcac -stage1_checking_misc -stage1_checking_no -stage1_checking_release -stage1_checking_rtl -stage1_checking_rtlflag -stage1_checking_runtime -stage1_checking_tree -stage1_checking_valgrind -stage1_checking_yes -test -vanilla (-vtv)" 83,529 KiB Total: 1 package (1 upgrade), Size of downloads: 83,529 KiB Would you like to merge these packages? [Yes/No] y >>> Verifying ebuild manifests >>> Emerging (1 of 1) sys-devel/gcc-11.3.0-r1::core-kit >>> Installing (1 of 1) sys-devel/gcc-11.3.0-r1::core-kit >>> Jobs: 1 of 1 complete Load avg: 1.23, 2.46, 4.78 >>> Auto-cleaning packages..." ABI_S390="32 64" ABI_X86="32 64 x32"} >>> No outdated packages were found on your system. * GNU info directory index is up-to-date. real 235m46.177s user 2690m11.177s sys 27m4.516s pibox ~ # cd /var/git/meta-repo/kits/lang-kit/dev-lang/ pibox /var/git/meta-repo/kits/lang-kit/dev-lang # tar xzvf /tmp/ .keep rust_mrustc_FL-10342_calrama_121ba9a81.tar.gz pibox /var/git/meta-repo/kits/lang-kit/dev-lang # tar xzvf /tmp/rust_mrustc_FL-10342_calrama_121ba9a81.tar.gz rust/ rust/files/ rust/files/1.47.0-ignore-broken-and-non-applicable-tests.patch rust/files/1.49.0-gentoo-musl-target-specs.patch rust/files/1.53.0-rustversion-1.0.5.patch rust/files/1.54.0-parallel-miri.patch rust/files/1.55.0-ignore-broken-and-non-applicable-tests.patch rust/files/1.61.0-gentoo-musl-target-specs.patch rust/files/1.61.0-llvm_addrspacecast.patch rust/files/1.61.0-llvm_selectInterleaveCount.patch rust/files/1.61.0-miri-cow.patch rust/Manifest rust/metadata.xml rust/rust-1.55.0.ebuild rust/rust-1.56.1.ebuild rust/rust-1.57.0.ebuild rust/rust-1.58.1.ebuild rust/rust-1.59.0.ebuild rust/rust-1.60.0.ebuild rust/rust-1.61.0.ebuild rust/rust-1.62.1.ebuild rust/rust-1.63.0.ebuild rust/rust-1.54.0.ebuild pibox /var/git/meta-repo/kits/lang-kit/dev-lang # time emerge -av1 dev-lang/rust:stable/1.54 These are the packages that would be merged, in order: Calculating dependencies ... done! [ebuild N ] dev-lang/rust-1.54.0:stable/1.54::lang-kit USE="clippy mrustc-bootstrap rustfmt -bash-completion -debug -doc -miri -nightly -parallel-compiler -rls -system-bootstrap -system-llvm -test -wasm" LLVM_TARGETS="(AArch64) -AMDGPU -ARM -AVR -BPF -Hexagon -Lanai -MSP430 -Mips -NVPTX -PowerPC -RISCV -Sparc -SystemZ -WebAssembly -X86 -XCore" 114,715 KiB Total: 1 package (1 new), Size of downloads: 114,715 KiB Would you like to merge these packages? [Yes/No] y >>> Verifying ebuild manifests >>> Running pre-merge checks for dev-lang/rust-1.54.0 * Checking for at least 25856 MiB disk space at "/var/tmp/portage/dev-lang/rust-1.54.0/temp" ... [ ok ] >>> Emerging (1 of 1) dev-lang/rust-1.54.0::lang-kit >>> Failed to emerge dev-lang/rust-1.54.0, Log file: >>> '/var/tmp/portage/dev-lang/rust-1.54.0/temp/build.log' >>> Jobs: 0 of 1 complete, 1 failed Load avg: 3.9, 11.9, 7.3 * Package: dev-lang/rust-1.54.0-non-applicable-tests.patch * Repository: lang-kit * USE: arm64 clippy elibc_glibc kernel_linux llvm_targets_AArch64 mrustc-bootstrap rustfmt userland_GNU * FEATURES: network-sandbox preserve-libs sandbox userpriv usersandbox * Checking for at least 25856 MiB disk space at "/var/tmp/portage/dev-lang/rust-1.54.0/temp" ... [ ok ] * Using python3.9 to build >>> Unpacking source... >>> Unpacking mrustc-0.10.tar.gz to /var/tmp/portage/dev-lang/rust-1.54.0/work >>> Unpacking rustc-1.54.0-src.tar.xz to /var/tmp/portage/dev-lang/rust-1.54.0/work >>> Unpacking rustc-1.54.0-src.tar.xz to /var/tmp/portage/dev-lang/rust-1.54.0/work >>> Source unpacked in /var/tmp/portage/dev-lang/rust-1.54.0/work >>> Preparing source in /var/tmp/portage/dev-lang/rust-1.54.0/work/rustc-1.54.0-src ... patching file compiler/rustc_ast/src/ast.rs patching file compiler/rustc_hir/src/hir.rs patching file compiler/rustc_middle/src/mir/interpret/error.rs patching file compiler/rustc_middle/src/mir/mod.rs patching file compiler/rustc_middle/src/thir.rs patching file compiler/rustc_mir/src/interpret/place.rs patching file compiler/rustc_mir/src/interpret/operand.rs patching file vendor/crc32fast/src/specialized/mod.rs patching file library/stdarch/crates/std_detect/src/detect/mod.rs Hunk #1 succeeded at 88 with fuzz 1. patching file vendor/ppv-lite86/src/lib.rs * Applying 1.47.0-ignore-broken-and-non-applicable-tests.patch ... patching file src/test/codegen/sparc-struct-abi.rs patching file src/test/run-make-fulldeps/c-link-to-rust-va-list-fn/Makefile patching file src/test/run-make-fulldeps/long-linker-command-lines/Makefile patching file src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile patching file src/test/ui/env-funky-keys.rs Hunk #1 succeeded at 1 with fuzz 1. [ ok ] * Applying 1.49.0-gentoo-musl-target-specs.patch ... [ ok ] * Applying 1.53.0-rustversion-1.0.5.patch ... [ ok ] * Applying 1.54.0-parallel-miri.patch ... patching file src/tools/miri/src/bin/miri.rs Hunk #2 succeeded at 12 with fuzz 2 (offset -1 lines). Hunk #3 succeeded at 42 (offset -1 lines). [ ok ] >>> Source prepared. >>> Configuring source in /var/tmp/portage/dev-lang/rust-1.54.0/work/rustc-1.54.0-src ... * Rust configured with the following flags: RUSTFLAGS= RUSTFLAGS_BOOTSTRAP= RUSTFLAGS_NOT_BOOTSTRAP= CFLAGS_aarch64-unknown-linux-gnu= * config.toml contents: changelog-seen = 2 [llvm] download-ci-llvm = false optimize = true release-debuginfo = false assertions = false ninja = true targets = "AArch64" experimental-targets = "" link-shared = false [build] build-stage = 2 test-stage = 2 doc-stage = 2 build = "aarch64-unknown-linux-gnu" host = ["aarch64-unknown-linux-gnu"] target = ["aarch64-unknown-linux-gnu"] cargo = "/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/run_rustc/output-1.54.0/prefix/bin/cargo" rustc = "/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/run_rustc/output-1.54.0/prefix/bin/rustc" rustfmt = "/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/run_rustc/output-1.54.0/prefix/bin/rustfmt" docs = false compiler-docs = false submodules = false python = "python3.9" locked-deps = true vendor = true extended = true tools = ["rustfmt","clippy","cargo",] verbose = 2 sanitizers = false profiler = false cargo-native-static = false [install] prefix = "/usr/lib/rust/1.54.0" sysconfdir = "etc" docdir = "share/doc/rust" bindir = "bin" libdir = "lib" mandir = "share/man" [rust] # https://github.com/rust-lang/rust/issues/54872 codegen-units-std = 1 optimize = true debug = false debug-assertions = false debug-assertions-std = false debuginfo-level = 0 debuginfo-level-rustc = 0 debuginfo-level-std = 0 debuginfo-level-tools = 0 debuginfo-level-tests = 0 backtrace = true incremental = false default-linker = "aarch64-unknown-linux-gnu-gcc" parallel-compiler = false channel = "stable" description = "funtoo" rpath = false verbose-tests = true optimize-tests = true codegen-tests = true dist-src = false remap-debuginfo = true lld = false deny-warnings = false backtrace-on-ice = true jemalloc = false [dist] src-tarball = false compression-formats = ["gz"] [target.aarch64-unknown-linux-gnu] cc = "aarch64-unknown-linux-gnu-gcc" cxx = "aarch64-unknown-linux-gnu-g++" linker = "aarch64-unknown-linux-gnu-gcc" ar = "aarch64-unknown-linux-gnu-ar" >>> Source configured. >>> Compiling source in /var/tmp/portage/dev-lang/rust-1.54.0/work/rustc-1.54.0-src ... make -j30 [CXX] -o .obj/ident.o [CXX] -o .obj/parse/token.o [CXX] -o .obj/ast/path.o [CXX] -o .obj/span.o [CXX] -o .obj/main.o [CXX] -o .obj/expand/concat.o [CXX] -o .obj/debug.o [CXX] -o .obj/rc_string.o [CXX] -o .obj/ast/ast.o [CXX] -o .obj/ast/expr.o [CXX] -o .obj/ast/types.o [CXX] -o .obj/ast/crate.o [CXX] -o .obj/ast/pattern.o [CXX] -o .obj/parse/parseerror.o [CXX] -o .obj/parse/tokentree.o [CXX] -o .obj/ast/dump.o [CXX] -o .obj/parse/tokenstream.o [CXX] -o .obj/parse/interpolated_fragment.o [CXX] -o .obj/parse/lex.o [CXX] -o .obj/parse/ttstream.o [CXX] -o .obj/parse/paths.o [CXX] -o .obj/parse/root.o [CXX] -o .obj/parse/types.o [CXX] -o .obj/expand/mod.o [CXX] -o .obj/parse/pattern.o [CXX] -o .obj/parse/expr.o [CXX] -o .obj/expand/macro_rules.o [CXX] -o .obj/expand/cfg.o [CXX] -o .obj/expand/format_args.o [CXX] -o .obj/expand/asm.o In file included from src/expand/../parse/common.hpp:12, from src/expand/concat.cpp:9: src/expand/../parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/expand/../parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/expand/../parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/expand/macro_rules.cpp:14: src/expand/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/expand/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/expand/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/expand/stringify.o [CXX] -o .obj/expand/file_line.o [CXX] -o .obj/expand/derive.o [CXX] -o .obj/expand/lang_item.o [CXX] -o .obj/expand/std_prelude.o In file included from src/parse/root.cpp:12: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/common.hpp:12, from src/parse/types.cpp:8: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/expr.cpp:14: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/ast/types.cpp:11: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/expand/crate_tags.o In file included from src/ast/path.cpp:9: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/ast/crate.hpp:10, from src/ast/dump.cpp:8: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/ast/crate.hpp:10, from src/parse/tokenstream.cpp:11: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/interpolated_fragment.cpp:10: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/common.hpp:12, from src/parse/pattern.cpp:8: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/common.hpp:12, from src/parse/paths.cpp:9: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/ast/pattern.cpp:9: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/ast/ast.cpp:8: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/token.cpp:10: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/ast/crate.hpp:10, from src/ast/crate.cpp:8: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/expand/mod.cpp:8: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/ast/expr.cpp:9: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/expand/../parse/common.hpp:12, from src/expand/format_args.cpp:10: src/expand/../parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/expand/../parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/expand/../parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/common.hpp:12, from src/expand/asm.cpp:13: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/common.hpp:12, from src/main.cpp:16: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/common.hpp:12, from src/expand/cfg.cpp:9: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/expand/include.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/expand/env.o In file included from src/expand/lang_item.cpp:10: src/expand/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/expand/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/expand/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/expand/derive.cpp:10: src/expand/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/expand/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/expand/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/ast/crate.hpp:10, from src/expand/stringify.cpp:9: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/expand/../parse/common.hpp:12, from src/expand/file_line.cpp:9: src/expand/../parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/expand/../parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/expand/../parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/common.hpp:12, from src/expand/env.cpp:9: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/expand/test.o In file included from src/ast/crate.hpp:10, from src/expand/std_prelude.cpp:9: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/ast/crate.hpp:10, from src/expand/crate_tags.cpp:9: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/expand/rustc_diagnostics.o In file included from src/parse/common.hpp:12, from src/expand/include.cpp:10: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/expand/proc_macro.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/expand/assert.o [CXX] -o .obj/expand/compile_error.o [CXX] -o .obj/expand/codegen.o In file included from src/parse/token.hpp:11, from src/parse/tokenstream.hpp:15, from src/parse/parseerror.hpp:12, from src/parse/paths.cpp:8: In constructor ‘AST::Path::Class::Data_Super::Data_Super(AST::Path::Class::Data_Super&&)’, inlined from ‘AST::Path::Class::Class(AST::Path::Class&&)’ at src/ast/path.hpp:446:5, inlined from ‘AST::Path::Path(AST::Path&&)’ at src/ast/path.hpp:509:5, inlined from ‘std::pair<_T1, _T2>::pair(std::pair<_T1, _T2>&&) [with _T1 = RcString; _T2 = AST::Path]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_pair.h:315:17, inlined from ‘AST::PathParamEnt::PathParamEnt(AST::PathParamEnt&&)’ at src/ast/path.hpp:692:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’ at src/parse/paths.cpp:234:35: src/include/tagged_union.hpp:150:29: warning: ‘*(AST::Path::Class::Data_Super*)((char*)& + offsetof(AST::value_type, AST::PathParamEnt::m_data) + 24).AST::Path::Class::Data_Super::count’ may be used uninitialized [-Wmaybe-uninitialized] 150 | #define TU_DATANAME(name) Data_##name | ^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:191:30: note: in expansion of macro ‘TU_EXP1’ 191 | #define TU_TYPEDEFS(...) TU_EXP1( TU_GMX(__VA_ARGS__)(TU_TYPEDEF ,__VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:165:54: note: in expansion of macro ‘TU_DATANAME’ 165 | #define TU_TYPEDEF(name, ...) typedef __VA_ARGS__ TU_DATANAME(name);/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:35:34: note: in expansion of macro ‘TU_TYPEDEF’ 35 | #define TU_DISP3(n, v, v2, v3) n v n v2 n v3 | ^ src/include/tagged_union.hpp:39:74: note: in expansion of macro ‘TU_DISP3’ 39 | #define TU_DISP7(n, a1,a2,a3,a4, b1,b2,b3 ) TU_DISP4(n, a1,a2,a3,a4) TU_DISP3(n, b1,b2,b3) | ^~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP7’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:215:5: note: in expansion of macro ‘TU_TYPEDEFS’ 215 | TU_TYPEDEFS _variants/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/ast/path.hpp:446:5: note: in expansion of macro ‘TAGGED_UNION’ 446 | TAGGED_UNION(Class, Invalid, | ^~~~~~~~~~~~ src/parse/paths.cpp: In function ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’: src/parse/paths.cpp:234:35: note: ‘’ declared here 234 | rv.m_entries.push_back(AST::LifetimeRef(/*lex.point_span(),*/ tok.ident())); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/include/span.hpp:10, from src/parse/tokenstream.hpp:12, from src/parse/parseerror.hpp:12, from src/parse/paths.cpp:8: In constructor ‘RcString::RcString(RcString&&)’, inlined from ‘Ident::Ident(Ident&&)’ at src/include/ident.hpp:126:5, inlined from ‘AST::LifetimeRef::LifetimeRef(AST::LifetimeRef&&)’ at src/ast/lifetime_ref.hpp:13:11, inlined from ‘AST::PathParamEnt::PathParamEnt(AST::PathParamEnt&&)’ at src/ast/path.hpp:692:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’ at src/parse/paths.cpp:243:35: src/include/rc_string.hpp:50:17: warning: ‘((RcString*)((char*)& + offsetof(AST::value_type, AST::PathParamEnt::m_data)))[1].RcString::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 50 | m_ptr(x.m_ptr) | ~~^~~~~ src/parse/paths.cpp: In function ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’: src/parse/paths.cpp:243:35: note: ‘’ declared here 243 | rv.m_entries.push_back( Parse_ExprVal(lex) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from src/parse/../ast/types.hpp:17, from src/parse/../ast/ast.hpp:23, from src/parse/common.hpp:12, from src/parse/paths.cpp:9: In constructor ‘AST::LifetimeRef::LifetimeRef(AST::LifetimeRef&&)’, inlined from ‘AST::PathParamEnt::PathParamEnt(AST::PathParamEnt&&)’ at src/ast/path.hpp:692:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’ at src/parse/paths.cpp:243:35: src/ast/lifetime_ref.hpp:13:11: warning: ‘*(AST::LifetimeRef*)((char*)& + offsetof(AST::value_type, AST::PathParamEnt::m_data)).AST::LifetimeRef::m_binding’ may be used uninitialized [-Wmaybe-uninitialized] 13 | class LifetimeRef | ^~~~~~~~~~~ src/parse/paths.cpp: In function ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’: src/parse/paths.cpp:243:35: note: ‘’ declared here 243 | rv.m_entries.push_back( Parse_ExprVal(lex) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from src/parse/tokenstream.hpp:12, from src/parse/parseerror.hpp:12, from src/parse/paths.cpp:8: In constructor ‘Span::Span(Span&&)’, inlined from ‘TypeRef::TypeRef(TypeRef&&)’ at src/parse/../ast/types.hpp:158:5, inlined from ‘std::pair<_T1, _T2>::pair(std::pair<_T1, _T2>&&) [with _T1 = RcString; _T2 = TypeRef]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_pair.h:315:17, inlined from ‘AST::PathParamEnt::PathParamEnt(AST::PathParamEnt&&)’ at src/ast/path.hpp:692:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’ at src/parse/paths.cpp:243:35: src/include/span.hpp:48:17: warning: ‘((Span*)((char*)& + offsetof(AST::value_type, AST::PathParamEnt::m_data)))[1].Span::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 48 | m_ptr(x.m_ptr) | ~~^~~~~ src/parse/paths.cpp: In function ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’: src/parse/paths.cpp:243:35: note: ‘’ declared here 243 | rv.m_entries.push_back( Parse_ExprVal(lex) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from src/parse/token.hpp:11, from src/parse/tokenstream.hpp:15, from src/parse/parseerror.hpp:12, from src/parse/paths.cpp:8: In constructor ‘AST::Path::Class::Class(AST::Path::Class&&)’, inlined from ‘AST::Path::Path(AST::Path&&)’ at src/ast/path.hpp:509:5, inlined from ‘std::pair<_T1, _T2>::pair(std::pair<_T1, _T2>&&) [with _T1 = RcString; _T2 = AST::Path]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_pair.h:315:17, inlined from ‘AST::PathParamEnt::PathParamEnt(AST::PathParamEnt&&)’ at src/ast/path.hpp:692:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’ at src/parse/paths.cpp:243:35: src/include/tagged_union.hpp:226:40: warning: ‘*(AST::Path::Class*)((char*)& + offsetof(AST::value_type, AST::PathParamEnt::m_data) + 16).AST::Path::Class::m_tag’ may be used uninitialized [-Wmaybe-uninitialized] 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ~~^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/ast/path.hpp:446:5: note: in expansion of macro ‘TAGGED_UNION’ 446 | TAGGED_UNION(Class, Invalid, | ^~~~~~~~~~~~ src/parse/paths.cpp: In function ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’: src/parse/paths.cpp:243:35: note: ‘’ declared here 243 | rv.m_entries.push_back( Parse_ExprVal(lex) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from src/parse/token.hpp:11, from src/parse/tokenstream.hpp:15, from src/parse/parseerror.hpp:12, from src/parse/paths.cpp:8: In constructor ‘AST::Path::Class::Data_Super::Data_Super(AST::Path::Class::Data_Super&&)’, inlined from ‘AST::Path::Class::Class(AST::Path::Class&&)’ at src/ast/path.hpp:446:5, inlined from ‘AST::Path::Path(AST::Path&&)’ at src/ast/path.hpp:509:5, inlined from ‘std::pair<_T1, _T2>::pair(std::pair<_T1, _T2>&&) [with _T1 = RcString; _T2 = AST::Path]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_pair.h:315:17, inlined from ‘AST::PathParamEnt::PathParamEnt(AST::PathParamEnt&&)’ at src/ast/path.hpp:692:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’ at src/parse/paths.cpp:243:35: src/include/tagged_union.hpp:150:29: warning: ‘*(AST::Path::Class::Data_Super*)((char*)& + offsetof(AST::value_type, AST::PathParamEnt::m_data) + 24).AST::Path::Class::Data_Super::count’ may be used uninitialized [-Wmaybe-uninitialized] 150 | #define TU_DATANAME(name) Data_##name | ^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:191:30: note: in expansion of macro ‘TU_EXP1’ 191 | #define TU_TYPEDEFS(...) TU_EXP1( TU_GMX(__VA_ARGS__)(TU_TYPEDEF ,__VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:165:54: note: in expansion of macro ‘TU_DATANAME’ 165 | #define TU_TYPEDEF(name, ...) typedef __VA_ARGS__ TU_DATANAME(name);/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:35:34: note: in expansion of macro ‘TU_TYPEDEF’ 35 | #define TU_DISP3(n, v, v2, v3) n v n v2 n v3 | ^ src/include/tagged_union.hpp:39:74: note: in expansion of macro ‘TU_DISP3’ 39 | #define TU_DISP7(n, a1,a2,a3,a4, b1,b2,b3 ) TU_DISP4(n, a1,a2,a3,a4) TU_DISP3(n, b1,b2,b3) | ^~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP7’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:215:5: note: in expansion of macro ‘TU_TYPEDEFS’ 215 | TU_TYPEDEFS _variants/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/ast/path.hpp:446:5: note: in expansion of macro ‘TAGGED_UNION’ 446 | TAGGED_UNION(Class, Invalid, | ^~~~~~~~~~~~ src/parse/paths.cpp: In function ‘AST::PathParams Parse_Path_GenericList(TokenStream&)’: src/parse/paths.cpp:243:35: note: ‘’ declared here 243 | rv.m_entries.push_back( Parse_ExprVal(lex) ); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ [CXX] -o .obj/expand/doc.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/expand/test.cpp:9: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/parse/common.hpp:12, from src/expand/rustc_diagnostics.cpp:10: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/expand/lints.o [CXX] -o .obj/expand/misc_attrs.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/expand/stability.o [CXX] -o .obj/expand/panic.o [CXX] -o .obj/expand/test_harness.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/macro_rules/mod.o [CXX] -o .obj/macro_rules/eval.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/expand/proc_macro.cpp:10: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/ast/crate.hpp:10, from src/expand/assert.cpp:11: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/macro_rules/parse.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/expand/../parse/common.hpp:12, from src/expand/compile_error.cpp:9: src/expand/../parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/expand/../parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/expand/../parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/resolve/use.o In file included from src/expand/codegen.cpp:10: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/resolve/index.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/ast/crate.hpp:10, from src/expand/panic.cpp:10: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/expand/misc_attrs.cpp:10: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/expand/test_harness.cpp:8: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/expand/lints.cpp:10: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/resolve/absolute.o [CXX] -o .obj/resolve/common.o [CXX] -o .obj/hir/from_ast.o [CXX] -o .obj/hir/from_ast_expr.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/parse/common.hpp:12, from src/macro_rules/mod.cpp:12: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ In file included from src/parse/common.hpp:12, from src/macro_rules/eval.cpp:12: src/parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir/dump.o [CXX] -o .obj/hir/hir.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/macro_rules/../parse/common.hpp:12, from src/macro_rules/parse.cpp:9: src/macro_rules/../parse/../ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/macro_rules/../parse/../ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/macro_rules/../parse/../ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/hir/hir_ops.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir/generic_params.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir/crate_ptr.o In file included from src/ast/crate.hpp:10, from src/resolve/use.cpp:9: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/hir/expr_ptr.o [CXX] -o .obj/hir/type.o [CXX] -o .obj/hir/path.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/resolve/index.cpp:8: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir/expr.o [CXX] -o .obj/hir/pattern.o In file included from src/ast/crate.hpp:10, from src/resolve/common.cpp:10: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/ast/crate.hpp:10, from src/resolve/absolute.cpp:14: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir/visitor.o [CXX] -o .obj/hir/crate_post_load.o [CXX] -o .obj/hir/inherent_cache.o [CXX] -o .obj/hir_conv/expand_type.o In file included from src/hir/from_ast.cpp:11: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir_conv/constant_evaluation.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir_conv/resolve_ufcs.o In file included from src/hir/from_ast_expr.cpp:11: src/ast/ast.hpp: In constructor ‘AST::Struct::Markings::Markings()’: src/ast/ast.hpp:403:19: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct AST::Struct::Markings’; use assignment or value-initialization instead [-Wclass-memaccess] 403 | memset(this, 0, sizeof(*this)); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ src/ast/ast.hpp:400:12: note: ‘struct AST::Struct::Markings’ declared here 400 | struct Markings { | ^~~~~~~~ [CXX] -o .obj/hir_conv/bind.o [CXX] -o .obj/hir_conv/markings.o [CXX] -o .obj/hir_typeck/outer.o [CXX] -o .obj/hir_typeck/common.o [CXX] -o .obj/hir_typeck/helpers.o [CXX] -o .obj/hir_typeck/static.o In file included from src/macro_rules/../parse/tokenstream.hpp:15, from src/macro_rules/../parse/common.hpp:11, from src/macro_rules/parse.cpp:9: In constructor ‘Token::Token(Token&&)’, inlined from ‘MacroExpansionEnt::MacroExpansionEnt(MacroExpansionEnt&&)’ at src/expand/../macro_rules/macro_rules.hpp:23:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’ at src/macro_rules/parse.cpp:415:34: src/macro_rules/../parse/token.hpp:103:18: warning: ‘*(Token*)((char*)& + offsetof(MacroExpansionEnt, MacroExpansionEnt::m_data)).Token::m_type’ may be used uninitialized [-Wmaybe-uninitialized] 103 | m_type(t.m_type), | ~~^~~~~~ src/macro_rules/parse.cpp: In function ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’: src/macro_rules/parse.cpp:415:61: note: ‘’ declared here 415 | ret.push_back( MacroExpansionEnt(ns->idx) ); | ^ In file included from src/macro_rules/../parse/token.hpp:11, from src/macro_rules/../parse/tokenstream.hpp:15, from src/macro_rules/../parse/common.hpp:11, from src/macro_rules/parse.cpp:9: In constructor ‘Token::Data::Data(Token::Data&&)’, inlined from ‘Token::Token(Token&&)’ at src/macro_rules/../parse/token.hpp:104:9, inlined from ‘MacroExpansionEnt::MacroExpansionEnt(MacroExpansionEnt&&)’ at src/expand/../macro_rules/macro_rules.hpp:23:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’ at src/macro_rules/parse.cpp:415:34: src/include/tagged_union.hpp:226:40: warning: ‘*(Token::Data*)((char*)& + offsetof(MacroExpansionEnt, MacroExpansionEnt::m_data) + 16).Token::Data::m_tag’ may be used uninitialized [-Wmaybe-uninitialized] 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ~~^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/macro_rules/../parse/token.hpp:67:5: note: in expansion of macro ‘TAGGED_UNION’ 67 | TAGGED_UNION(Data, None, | ^~~~~~~~~~~~ src/macro_rules/parse.cpp: In function ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’: src/macro_rules/parse.cpp:415:61: note: ‘’ declared here 415 | ret.push_back( MacroExpansionEnt(ns->idx) ); | ^ In file included from src/include/span.hpp:10, from src/macro_rules/../parse/tokenstream.hpp:12, from src/macro_rules/../parse/common.hpp:11, from src/macro_rules/parse.cpp:9: In constructor ‘RcString::RcString(RcString&&)’, inlined from ‘Ident::Ident(Ident&&)’ at src/include/ident.hpp:126:5, inlined from ‘Token::Data::Data(Token::Data&&)’ at src/macro_rules/../parse/token.hpp:67:5, inlined from ‘Token::Token(Token&&)’ at src/macro_rules/../parse/token.hpp:104:9, inlined from ‘MacroExpansionEnt::MacroExpansionEnt(MacroExpansionEnt&&)’ at src/expand/../macro_rules/macro_rules.hpp:23:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’ at src/macro_rules/parse.cpp:415:34: src/include/rc_string.hpp:50:17: warning: ‘((RcString*)((char*)& + offsetof(MacroExpansionEnt, MacroExpansionEnt::m_data)))[4].RcString::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 50 | m_ptr(x.m_ptr) | ~~^~~~~ src/macro_rules/parse.cpp: In function ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’: src/macro_rules/parse.cpp:415:61: note: ‘’ declared here 415 | ret.push_back( MacroExpansionEnt(ns->idx) ); | ^ In file included from src/macro_rules/../parse/tokenstream.hpp:15, from src/macro_rules/../parse/common.hpp:11, from src/macro_rules/parse.cpp:9: In constructor ‘Token::Token(Token&&)’, inlined from ‘MacroExpansionEnt::Data_Loop::Data_Loop(MacroExpansionEnt::Data_Loop&&)’ at src/expand/../macro_rules/macro_rules.hpp:23:1, inlined from ‘MacroExpansionEnt::MacroExpansionEnt(MacroExpansionEnt&&)’ at src/expand/../macro_rules/macro_rules.hpp:23:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’ at src/macro_rules/parse.cpp:415:34: src/macro_rules/../parse/token.hpp:103:18: warning: ‘*(Token*)((char*)& + offsetof(MacroExpansionEnt, MacroExpansionEnt::m_data)).Token::m_type’ may be used uninitialized [-Wmaybe-uninitialized] 103 | m_type(t.m_type), | ~~^~~~~~ src/macro_rules/parse.cpp: In function ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’: src/macro_rules/parse.cpp:415:61: note: ‘’ declared here 415 | ret.push_back( MacroExpansionEnt(ns->idx) ); | ^ In file included from src/macro_rules/../parse/token.hpp:11, from src/macro_rules/../parse/tokenstream.hpp:15, from src/macro_rules/../parse/common.hpp:11, from src/macro_rules/parse.cpp:9: In constructor ‘Token::Data::Data(Token::Data&&)’, inlined from ‘Token::Token(Token&&)’ at src/macro_rules/../parse/token.hpp:104:9, inlined from ‘MacroExpansionEnt::Data_Loop::Data_Loop(MacroExpansionEnt::Data_Loop&&)’ at src/expand/../macro_rules/macro_rules.hpp:23:1, inlined from ‘MacroExpansionEnt::MacroExpansionEnt(MacroExpansionEnt&&)’ at src/expand/../macro_rules/macro_rules.hpp:23:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’ at src/macro_rules/parse.cpp:415:34: src/include/tagged_union.hpp:226:40: warning: ‘((Token::Data*)((char*)& + offsetof(MacroExpansionEnt, MacroExpansionEnt::m_data)))[1].Token::Data::m_tag’ may be used uninitialized [-Wmaybe-uninitialized] 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ~~^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/macro_rules/../parse/token.hpp:67:5: note: in expansion of macro ‘TAGGED_UNION’ 67 | TAGGED_UNION(Data, None, | ^~~~~~~~~~~~ src/macro_rules/parse.cpp: In function ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’: src/macro_rules/parse.cpp:415:61: note: ‘’ declared here 415 | ret.push_back( MacroExpansionEnt(ns->idx) ); | ^ In file included from src/include/span.hpp:10, from src/macro_rules/../parse/tokenstream.hpp:12, from src/macro_rules/../parse/common.hpp:11, from src/macro_rules/parse.cpp:9: In constructor ‘RcString::RcString(RcString&&)’, inlined from ‘Ident::Ident(Ident&&)’ at src/include/ident.hpp:126:5, inlined from ‘Token::Data::Data(Token::Data&&)’ at src/macro_rules/../parse/token.hpp:67:5, inlined from ‘Token::Token(Token&&)’ at src/macro_rules/../parse/token.hpp:104:9, inlined from ‘MacroExpansionEnt::Data_Loop::Data_Loop(MacroExpansionEnt::Data_Loop&&)’ at src/expand/../macro_rules/macro_rules.hpp:23:1, inlined from ‘MacroExpansionEnt::MacroExpansionEnt(MacroExpansionEnt&&)’ at src/expand/../macro_rules/macro_rules.hpp:23:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MacroExpansionEnt; _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MacroExpansionEnt}; _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MacroExpansionEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’ at src/macro_rules/parse.cpp:415:34: src/include/rc_string.hpp:50:17: warning: ‘((RcString*)((char*)& + offsetof(MacroExpansionEnt, MacroExpansionEnt::m_data)))[7].RcString::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 50 | m_ptr(x.m_ptr) | ~~^~~~~ src/macro_rules/parse.cpp: In function ‘std::vector Parse_MacroRules_Cont(TokenStream&, eTokenType, eTokenType, const RuleParseState&, unsigned int, std::map*)’: src/macro_rules/parse.cpp:415:61: note: ‘’ declared here 415 | ret.push_back( MacroExpansionEnt(ns->idx) ); | ^ [CXX] -o .obj/hir_typeck/impl_ref.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir_typeck/resolve_common.o [CXX] -o .obj/hir_typeck/expr_visit.o [CXX] -o .obj/hir_typeck/expr_cs.o [CXX] -o .obj/hir_typeck/expr_cs__enum.o [CXX] -o .obj/hir_typeck/expr_check.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir_expand/annotate_value_usage.o In file included from src/hir/type.hpp:13, from src/hir/type.cpp:8: In constructor ‘HIR::EncodedLiteralPtr::EncodedLiteralPtr(HIR::EncodedLiteralPtr&&)’, inlined from ‘HIR::ConstGeneric::ConstGeneric(HIR::ConstGeneric&&)’ at src/hir/path.hpp:41:1, inlined from ‘HIR::ArraySize::ArraySize(HIR::ArraySize&&)’ at src/hir/type.hpp:85:1, inlined from ‘HIR::TypeData::Data_Array::Data_Array(HIR::TypeData::Data_Array&&)’ at src/hir/type.hpp:129:1, inlined from ‘HIR::TypeData::TypeData(HIR::TypeData::Data_Array)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Array(HIR::TypeData::Data_Array)’ at src/hir/type.hpp:129:1, inlined from ‘HIR::TypeRef HIR::TypeRef::clone_shallow() const’ at src/hir/type.cpp:978:52: src/hir/path.hpp:30:51: warning: ‘((HIR::EncodedLiteralPtr*)((char*)& + offsetof(HIR::TypeData::Data_Array, HIR::TypeData::Data_Array::size.HIR::ArraySize::m_data)))[1].HIR::EncodedLiteralPtr::p’ may be used uninitialized [-Wmaybe-uninitialized] 30 | EncodedLiteralPtr(EncodedLiteralPtr&& x): p(x.p) { x.p = nullptr; } | ~~^ In file included from src/hir/type.hpp:12, from src/hir/type.cpp:8: src/hir/type.hpp: In member function ‘HIR::TypeRef HIR::TypeRef::clone_shallow() const’: src/include/tagged_union.hpp:154:74: note: ‘’ declared here 154 | static self_t make_##__tag(__type v) { return __name( ::std::move(v) ); }\ | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:190:30: note: in expansion of macro ‘TU_EXP1’ 190 | #define TU_CONSS(_name, ...) TU_EXP1( TU_GMA(__VA_ARGS__)(TU_CONS, (_name), __VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:162:36: note: in expansion of macro ‘TU_CONS_I’ 162 | #define TU_CONS(__name, name, ...) TU_CONS_I(__name, name, TU_DATANAME(name)) | ^~~~~~~~~ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_CONS’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:72: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:74:68: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:85:103: note: in expansion of macro ‘TU_DISPA4’ 85 | #define TU_DISPA15(n, a, a1,a2,a3,a4, b1,b2,b3,b4, c1,c2,c3,c4, d1,d2,d3) TU_DISPA4(n,a, a1,a2,a3,a4) TU_DISPA4(n,a, b1,b2,b3,b4) TU_DISPA4(n,a, c1,c2,c3,c4) TU_DISPA3(n,a, d1,d2,d3) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA15’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:232:5: note: in expansion of macro ‘TU_CONSS’ 232 | TU_CONSS(_name, TU_EXP _variants) \ | ^~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/type.hpp:129:1: note: in expansion of macro ‘TAGGED_UNION’ 129 | TAGGED_UNION(TypeData, Diverge, | ^~~~~~~~~~~~ [CXX] -o .obj/hir_expand/closures.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/ast/types.hpp:17, from src/ast/ast.hpp:23, from src/expand/mod.cpp:8: In constructor ‘AST::LifetimeRef::LifetimeRef(AST::LifetimeRef&&)’, inlined from ‘AST::PathParamEnt::PathParamEnt(AST::PathParamEnt&&)’ at src/ast/path.hpp:692:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘virtual void CExpandExpr::visit(AST::ExprNode_UniOp&)’ at src/expand/mod.cpp:1194:68: src/ast/lifetime_ref.hpp:13:11: warning: ‘*(AST::LifetimeRef*)((char*)& + offsetof(AST::value_type, AST::PathParamEnt::m_data)).AST::LifetimeRef::m_binding’ may be used uninitialized [-Wmaybe-uninitialized] 13 | class LifetimeRef | ^~~~~~~~~~~ src/expand/mod.cpp: In member function ‘virtual void CExpandExpr::visit(AST::ExprNode_UniOp&)’: src/expand/mod.cpp:1194:68: note: ‘’ declared here 1194 | path_From.nodes().back().args().m_entries.push_back( ::TypeRef(node.span()) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ [CXX] -o .obj/hir_expand/ufcs_everything.o [CXX] -o .obj/hir_expand/reborrow.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir_expand/erased_types.o [CXX] -o .obj/hir_expand/vtable.o [CXX] -o .obj/hir_expand/static_borrow_constants.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/hir/pattern.hpp:13, from src/hir/expr.hpp:11, from src/hir/from_ast_expr.cpp:9: In constructor ‘HIR::ExprNode_Asm2::Param::Data_RegSingle::Data_RegSingle(HIR::ExprNode_Asm2::Param::Data_RegSingle&&)’, inlined from ‘HIR::ExprNode_Asm2::Param::Param(HIR::ExprNode_Asm2::Param&&)’ at src/hir/expr.hpp:122:5, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’ at src/hir/from_ast_expr.cpp:101:33: src/include/tagged_union.hpp:150:29: warning: ‘*(HIR::ExprNode_Asm2::Param::Data_RegSingle*)((char*)& + offsetof(HIR::ExprNode_Asm2::value_type, HIR::ExprNode_Asm2::Param::m_data)).HIR::ExprNode_Asm2::Param::Data_RegSingle::dir’ may be used uninitialized [-Wmaybe-uninitialized] 150 | #define TU_DATANAME(name) Data_##name | ^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:191:30: note: in expansion of macro ‘TU_EXP1’ 191 | #define TU_TYPEDEFS(...) TU_EXP1( TU_GMX(__VA_ARGS__)(TU_TYPEDEF ,__VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:165:54: note: in expansion of macro ‘TU_DATANAME’ 165 | #define TU_TYPEDEF(name, ...) typedef __VA_ARGS__ TU_DATANAME(name);/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:36:47: note: in expansion of macro ‘TU_TYPEDEF’ 36 | #define TU_DISP4(n, v, v2, v3, v4) n v n v2 n v3 n v4 | ^ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP4’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:215:5: note: in expansion of macro ‘TU_TYPEDEFS’ 215 | TU_TYPEDEFS _variants/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/expr.hpp:122:5: note: in expansion of macro ‘TAGGED_UNION’ 122 | TAGGED_UNION(Param, Const, | ^~~~~~~~~~~~ src/hir/from_ast_expr.cpp: In member function ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’: src/hir/from_ast_expr.cpp:101:33: note: ‘’ declared here 101 | params.push_back( LowerHIR_Path(v.span(), e, FromAST_PathClass::Value) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/pattern.hpp:13, from src/hir/expr.hpp:11, from src/hir/from_ast_expr.cpp:9: In constructor ‘AsmCommon::RegisterSpec::RegisterSpec(AsmCommon::RegisterSpec&&)’, inlined from ‘HIR::ExprNode_Asm2::Param::Data_RegSingle::Data_RegSingle(HIR::ExprNode_Asm2::Param::Data_RegSingle&&)’ at src/hir/expr.hpp:122:5, inlined from ‘HIR::ExprNode_Asm2::Param::Param(HIR::ExprNode_Asm2::Param&&)’ at src/hir/expr.hpp:122:5, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’ at src/hir/from_ast_expr.cpp:101:33: src/include/tagged_union.hpp:226:40: warning: ‘*(AsmCommon::RegisterSpec*)((char*)& + offsetof(HIR::ExprNode_Asm2::value_type, HIR::ExprNode_Asm2::Param::m_data) + 8).AsmCommon::RegisterSpec::m_tag’ may be used uninitialized [-Wmaybe-uninitialized] 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ~~^~~~~ src/hir/asm.hpp:68:5: note: in expansion of macro ‘TAGGED_UNION_EX’ 68 | TAGGED_UNION_EX(RegisterSpec, (), Explicit, ( | ^~~~~~~~~~~~~~~ src/hir/from_ast_expr.cpp: In member function ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’: src/hir/from_ast_expr.cpp:101:33: note: ‘’ declared here 101 | params.push_back( LowerHIR_Path(v.span(), e, FromAST_PathClass::Value) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/pattern.hpp:13, from src/hir/expr.hpp:11, from src/hir/from_ast_expr.cpp:9: In constructor ‘AsmCommon::RegisterSpec::RegisterSpec(AsmCommon::RegisterSpec&&)’, inlined from ‘HIR::ExprNode_Asm2::Param::Data_RegSingle::Data_RegSingle(HIR::ExprNode_Asm2::Param::Data_RegSingle&&)’ at src/hir/expr.hpp:122:5, inlined from ‘HIR::ExprNode_Asm2::Param::Param(HIR::ExprNode_Asm2::Param&&)’ at src/hir/expr.hpp:122:5, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’ at src/hir/from_ast_expr.cpp:101:33: src/include/tagged_union.hpp:175:95: warning: ‘((AsmCommon::type*)((char*)& + offsetof(HIR::ExprNode_Asm2::value_type, HIR::ExprNode_Asm2::Param::m_data)))[4]’ may be used uninitialized [-Wmaybe-uninitialized] 175 | #define TU_MOVE_CASE(tag, ...) case TAG_##tag: new(&m_data.tag) TU_DATANAME(tag)( ::std::move(x.m_data.tag) ); break;/* | ~~~~~~~~~~~^~~~~~~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:34:31: note: in expansion of macro ‘TU_MOVE_CASE’ 34 | #define TU_DISP2(n, _1, _2) n _1 n _2 | ^ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP2’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:226:105: note: in expansion of macro ‘TU_MOVE_CASES’ 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ^~~~~~~~~~~~~ src/hir/asm.hpp:68:5: note: in expansion of macro ‘TAGGED_UNION_EX’ 68 | TAGGED_UNION_EX(RegisterSpec, (), Explicit, ( | ^~~~~~~~~~~~~~~ src/hir/from_ast_expr.cpp: In member function ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’: src/hir/from_ast_expr.cpp:101:33: note: ‘’ declared here 101 | params.push_back( LowerHIR_Path(v.span(), e, FromAST_PathClass::Value) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/pattern.hpp:13, from src/hir/expr.hpp:11, from src/hir/from_ast_expr.cpp:9: In constructor ‘HIR::ExprNode_Asm2::Param::Data_Reg::Data_Reg(HIR::ExprNode_Asm2::Param::Data_Reg&&)’, inlined from ‘HIR::ExprNode_Asm2::Param::Param(HIR::ExprNode_Asm2::Param&&)’ at src/hir/expr.hpp:122:5, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’ at src/hir/from_ast_expr.cpp:101:33: src/include/tagged_union.hpp:150:29: warning: ‘*(HIR::ExprNode_Asm2::Param::Data_Reg*)((char*)& + offsetof(HIR::ExprNode_Asm2::value_type, HIR::ExprNode_Asm2::Param::m_data)).HIR::ExprNode_Asm2::Param::Data_Reg::dir’ may be used uninitialized [-Wmaybe-uninitialized] 150 | #define TU_DATANAME(name) Data_##name | ^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:191:30: note: in expansion of macro ‘TU_EXP1’ 191 | #define TU_TYPEDEFS(...) TU_EXP1( TU_GMX(__VA_ARGS__)(TU_TYPEDEF ,__VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:165:54: note: in expansion of macro ‘TU_DATANAME’ 165 | #define TU_TYPEDEF(name, ...) typedef __VA_ARGS__ TU_DATANAME(name);/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:36:52: note: in expansion of macro ‘TU_TYPEDEF’ 36 | #define TU_DISP4(n, v, v2, v3, v4) n v n v2 n v3 n v4 | ^ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP4’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:215:5: note: in expansion of macro ‘TU_TYPEDEFS’ 215 | TU_TYPEDEFS _variants/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/expr.hpp:122:5: note: in expansion of macro ‘TAGGED_UNION’ 122 | TAGGED_UNION(Param, Const, | ^~~~~~~~~~~~ src/hir/from_ast_expr.cpp: In member function ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’: src/hir/from_ast_expr.cpp:101:33: note: ‘’ declared here 101 | params.push_back( LowerHIR_Path(v.span(), e, FromAST_PathClass::Value) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/pattern.hpp:13, from src/hir/expr.hpp:11, from src/hir/from_ast_expr.cpp:9: In constructor ‘AsmCommon::RegisterSpec::RegisterSpec(AsmCommon::RegisterSpec&&)’, inlined from ‘HIR::ExprNode_Asm2::Param::Data_Reg::Data_Reg(HIR::ExprNode_Asm2::Param::Data_Reg&&)’ at src/hir/expr.hpp:122:5, inlined from ‘HIR::ExprNode_Asm2::Param::Param(HIR::ExprNode_Asm2::Param&&)’ at src/hir/expr.hpp:122:5, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’ at src/hir/from_ast_expr.cpp:101:33: src/include/tagged_union.hpp:226:40: warning: ‘*(AsmCommon::RegisterSpec*)((char*)& + offsetof(HIR::ExprNode_Asm2::value_type, HIR::ExprNode_Asm2::Param::m_data) + 8).AsmCommon::RegisterSpec::m_tag’ may be used uninitialized [-Wmaybe-uninitialized] 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ~~^~~~~ src/hir/asm.hpp:68:5: note: in expansion of macro ‘TAGGED_UNION_EX’ 68 | TAGGED_UNION_EX(RegisterSpec, (), Explicit, ( | ^~~~~~~~~~~~~~~ src/hir/from_ast_expr.cpp: In member function ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’: src/hir/from_ast_expr.cpp:101:33: note: ‘’ declared here 101 | params.push_back( LowerHIR_Path(v.span(), e, FromAST_PathClass::Value) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/pattern.hpp:13, from src/hir/expr.hpp:11, from src/hir/from_ast_expr.cpp:9: In constructor ‘AsmCommon::RegisterSpec::RegisterSpec(AsmCommon::RegisterSpec&&)’, inlined from ‘HIR::ExprNode_Asm2::Param::Data_Reg::Data_Reg(HIR::ExprNode_Asm2::Param::Data_Reg&&)’ at src/hir/expr.hpp:122:5, inlined from ‘HIR::ExprNode_Asm2::Param::Param(HIR::ExprNode_Asm2::Param&&)’ at src/hir/expr.hpp:122:5, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = HIR::ExprNode_Asm2::Param; _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {HIR::ExprNode_Asm2::Param}; _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = HIR::ExprNode_Asm2::Param; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’ at src/hir/from_ast_expr.cpp:101:33: src/include/tagged_union.hpp:175:95: warning: ‘((AsmCommon::type*)((char*)& + offsetof(HIR::ExprNode_Asm2::value_type, HIR::ExprNode_Asm2::Param::m_data)))[4]’ may be used uninitialized [-Wmaybe-uninitialized] 175 | #define TU_MOVE_CASE(tag, ...) case TAG_##tag: new(&m_data.tag) TU_DATANAME(tag)( ::std::move(x.m_data.tag) ); break;/* | ~~~~~~~~~~~^~~~~~~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:34:31: note: in expansion of macro ‘TU_MOVE_CASE’ 34 | #define TU_DISP2(n, _1, _2) n _1 n _2 | ^ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP2’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:226:105: note: in expansion of macro ‘TU_MOVE_CASES’ 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ^~~~~~~~~~~~~ src/hir/asm.hpp:68:5: note: in expansion of macro ‘TAGGED_UNION_EX’ 68 | TAGGED_UNION_EX(RegisterSpec, (), Explicit, ( | ^~~~~~~~~~~~~~~ src/hir/from_ast_expr.cpp: In member function ‘virtual void LowerHIR_ExprNode_Visitor::visit(AST::ExprNode_Asm2&)’: src/hir/from_ast_expr.cpp:101:33: note: ‘’ declared here 101 | params.push_back( LowerHIR_Path(v.span(), e, FromAST_PathClass::Value) ); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/hir_expand/closures.cpp: In member function ‘virtual void {anonymous}::ExprVisitor_Extract::visit(HIR::ExprNode_Closure&)’: src/hir_expand/closures.cpp:779:28: warning: loop variable ‘binding’ creates a copy from type ‘const std::pair’ [-Wrange-loop-construct] 779 | for(const auto binding : node.m_avu_cache.captured_vars) | ^~~~~~~ src/hir_expand/closures.cpp:779:28: note: use reference type to prevent copying 779 | for(const auto binding : node.m_avu_cache.captured_vars) | ^~~~~~~ | & [CXX] -o .obj/mir/mir.o [CXX] -o .obj/mir/mir_ptr.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/mir/dump.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/mir/helpers.o [CXX] -o .obj/mir/visit_crate_mir.o [CXX] -o .obj/mir/from_hir.o [CXX] -o .obj/mir/from_hir_match.o In file included from src/hir/hir.hpp:19, from src/hir/hir_ops.cpp:8: In constructor ‘HIR::GenericBound::Data_TypeLifetime::Data_TypeLifetime(HIR::GenericBound::Data_TypeLifetime&&)’, inlined from ‘HIR::GenericBound::GenericBound(HIR::GenericBound&&)’ at src/hir/generic_params.hpp:32:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HIR::GenericBound; _Args = {HIR::GenericBound}; _Tp = HIR::GenericBound]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = HIR::GenericBound; _Args = {HIR::GenericBound}; _Tp = HIR::GenericBound]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {HIR::GenericBound}; _Tp = HIR::GenericBound; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = HIR::GenericBound; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector {anonymous}::flatten_bounds(const std::vector&)’ at src/hir/hir_ops.cpp:498:13: src/include/tagged_union.hpp:150:29: warning: ‘*(HIR::GenericBound::Data_TypeLifetime*)((char*)& + offsetof(HIR::GenericBound, HIR::GenericBound::m_data)).HIR::GenericBound::Data_TypeLifetime::valid_for’ may be used uninitialized [-Wmaybe-uninitialized] 150 | #define TU_DATANAME(name) Data_##name | ^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:191:30: note: in expansion of macro ‘TU_EXP1’ 191 | #define TU_TYPEDEFS(...) TU_EXP1( TU_GMX(__VA_ARGS__)(TU_TYPEDEF ,__VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:165:54: note: in expansion of macro ‘TU_DATANAME’ 165 | #define TU_TYPEDEF(name, ...) typedef __VA_ARGS__ TU_DATANAME(name);/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:36:42: note: in expansion of macro ‘TU_TYPEDEF’ 36 | #define TU_DISP4(n, v, v2, v3, v4) n v n v2 n v3 n v4 | ^ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP4’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:215:5: note: in expansion of macro ‘TU_TYPEDEFS’ 215 | TU_TYPEDEFS _variants/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/generic_params.hpp:32:1: note: in expansion of macro ‘TAGGED_UNION’ 32 | TAGGED_UNION(GenericBound, Lifetime, | ^~~~~~~~~~~~ src/hir/hir_ops.cpp: In function ‘std::vector {anonymous}::flatten_bounds(const std::vector&)’: src/hir/hir_ops.cpp:500:53: note: ‘’ declared here 500 | rv.push_back( ::HIR::GenericBound(be) ); | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_MATCH_ARM’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:37: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:72:60: note: in expansion of macro ‘TU_EXP’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~ src/include/tagged_union.hpp:74:43: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA4’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:104:7: note: in expansion of macro ‘TU_MATCH_ARMS’ 104 | */ TU_MATCH_ARMS(CLASS, VAR, NAME, __VA_ARGS__)/* | ^~~~~~~~~~~~~ src/include/tagged_union.hpp:101:37: note: in expansion of macro ‘TU_MATCH’ 101 | #define TU_MATCHA(VARS, NAMES, ...) TU_MATCH( ::std::remove_reference::type, VARS, NAMES, __VA_ARGS__ ) | ^~~~~~~~ src/hir/hir_ops.cpp:498:13: note: in expansion of macro ‘TU_MATCHA’ 498 | TU_MATCHA( (b), (be), | ^~~~~~~~~ [CXX] -o .obj/mir/mir_builder.o [CXX] -o .obj/mir/check.o [CXX] -o .obj/mir/cleanup.o [CXX] -o .obj/mir/optimise.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/mir/check_full.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/hir/serialise.o [CXX] -o .obj/hir/deserialise.o [CXX] -o .obj/hir/serialise_lowlevel.o In file included from src/ast/types.hpp:17, from src/ast/ast.hpp:23, from src/ast/crate.hpp:10, from src/resolve/absolute.cpp:14: In constructor ‘AST::LifetimeRef::LifetimeRef(AST::LifetimeRef&&)’, inlined from ‘AST::PathParamEnt::PathParamEnt(AST::PathParamEnt&&)’ at src/ast/path.hpp:692:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = AST::PathParamEnt; _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {AST::PathParamEnt}; _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = AST::PathParamEnt; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘void Resolve_Absolute_Path_BindAbsolute({anonymous}::Context&, const Span&, {anonymous}::Context::LookupMode&, AST::Path&)’ at src/resolve/absolute.cpp:1520:85: src/ast/lifetime_ref.hpp:13:11: warning: ‘*(AST::LifetimeRef*)((char*)& + offsetof(AST::value_type, AST::PathParamEnt::m_data)).AST::LifetimeRef::m_binding’ may be used uninitialized [-Wmaybe-uninitialized] 13 | class LifetimeRef | ^~~~~~~~~~~ src/resolve/absolute.cpp: In function ‘void Resolve_Absolute_Path_BindAbsolute({anonymous}::Context&, const Span&, {anonymous}::Context::LookupMode&, AST::Path&)’: src/resolve/absolute.cpp:1520:85: note: ‘’ declared here 1520 | trait_path.nodes().back().args().m_entries.push_back( ::TypeRef(sp) ); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘HIR::TypePathBinding::TypePathBinding(HIR::TypePathBinding&&)’, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/include/tagged_union.hpp:175:95: warning: ‘*(const HIR::Enum**)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::binding.HIR::TypePathBinding::m_data))’ may be used uninitialized [-Wmaybe-uninitialized] 175 | #define TU_MOVE_CASE(tag, ...) case TAG_##tag: new(&m_data.tag) TU_DATANAME(tag)( ::std::move(x.m_data.tag) ); break;/* | ~~~~~~~~~~~^~~~~~~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:35:43: note: in expansion of macro ‘TU_MOVE_CASE’ 35 | #define TU_DISP3(n, v, v2, v3) n v n v2 n v3 | ^ src/include/tagged_union.hpp:38:65: note: in expansion of macro ‘TU_DISP3’ 38 | #define TU_DISP6(n, a1,a2,a3, b1,b2,b3) TU_DISP3(n, a1,a2,a3) TU_DISP3(n, b1,b2,b3) | ^~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP6’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:226:105: note: in expansion of macro ‘TU_MOVE_CASES’ 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ^~~~~~~~~~~~~ src/hir/type.hpp:103:1: note: in expansion of macro ‘TAGGED_UNION_EX’ 103 | TAGGED_UNION_EX(TypePathBinding, (), Unbound, ( | ^~~~~~~~~~~~~~~ In file included from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/hir/type.hpp:295:39: note: ‘’ declared here 295 | return TypeRef(TypeData::make_Path({ mv$(path), mv$(binding) })); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘HIR::TypePathBinding::TypePathBinding(HIR::TypePathBinding&&)’, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/include/tagged_union.hpp:175:95: warning: ‘*(const HIR::Enum**)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::binding.HIR::TypePathBinding::m_data))’ may be used uninitialized [-Wmaybe-uninitialized] 175 | #define TU_MOVE_CASE(tag, ...) case TAG_##tag: new(&m_data.tag) TU_DATANAME(tag)( ::std::move(x.m_data.tag) ); break;/* | ~~~~~~~~~~~^~~~~~~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:35:43: note: in expansion of macro ‘TU_MOVE_CASE’ 35 | #define TU_DISP3(n, v, v2, v3) n v n v2 n v3 | ^ src/include/tagged_union.hpp:38:65: note: in expansion of macro ‘TU_DISP3’ 38 | #define TU_DISP6(n, a1,a2,a3, b1,b2,b3) TU_DISP3(n, a1,a2,a3) TU_DISP3(n, b1,b2,b3) | ^~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP6’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:226:105: note: in expansion of macro ‘TU_MOVE_CASES’ 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ^~~~~~~~~~~~~ src/hir/type.hpp:103:1: note: in expansion of macro ‘TAGGED_UNION_EX’ 103 | TAGGED_UNION_EX(TypePathBinding, (), Unbound, ( | ^~~~~~~~~~~~~~~ In file included from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/hir/type.hpp:295:39: note: ‘’ declared here 295 | return TypeRef(TypeData::make_Path({ mv$(path), mv$(binding) })); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘HIR::TypePathBinding::TypePathBinding(HIR::TypePathBinding&&)’, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/include/tagged_union.hpp:175:95: warning: ‘*(const HIR::Enum**)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::binding.HIR::TypePathBinding::m_data))’ may be used uninitialized [-Wmaybe-uninitialized] 175 | #define TU_MOVE_CASE(tag, ...) case TAG_##tag: new(&m_data.tag) TU_DATANAME(tag)( ::std::move(x.m_data.tag) ); break;/* | ~~~~~~~~~~~^~~~~~~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:35:43: note: in expansion of macro ‘TU_MOVE_CASE’ 35 | #define TU_DISP3(n, v, v2, v3) n v n v2 n v3 | ^ src/include/tagged_union.hpp:38:65: note: in expansion of macro ‘TU_DISP3’ 38 | #define TU_DISP6(n, a1,a2,a3, b1,b2,b3) TU_DISP3(n, a1,a2,a3) TU_DISP3(n, b1,b2,b3) | ^~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP6’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:226:105: note: in expansion of macro ‘TU_MOVE_CASES’ 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ^~~~~~~~~~~~~ src/hir/type.hpp:103:1: note: in expansion of macro ‘TAGGED_UNION_EX’ 103 | TAGGED_UNION_EX(TypePathBinding, (), Unbound, ( | ^~~~~~~~~~~~~~~ In file included from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/hir/type.hpp:295:39: note: ‘’ declared here 295 | return TypeRef(TypeData::make_Path({ mv$(path), mv$(binding) })); | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/path.hpp:15, from src/hir/type.hpp:13, from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘HIR::TypeRef::TypeRef(HIR::TypeRef&&)’, inlined from ‘HIR::Path::Data::Data_UfcsUnknown::Data_UfcsUnknown(HIR::Path::Data::Data_UfcsUnknown&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Data::Data(HIR::Path::Data&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Path(HIR::Path&&)’ at src/hir/path.hpp:267:7, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘HIR::TypeData::TypeData(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/hir/type_ref.hpp:66:17: warning: ‘*(HIR::TypeRef*)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::path.HIR::Path::m_data.HIR::Path::Data::m_data)).HIR::TypeRef::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 66 | m_ptr(x.m_ptr) | ~~^~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/include/tagged_union.hpp:154:74: note: ‘’ declared here 154 | static self_t make_##__tag(__type v) { return __name( ::std::move(v) ); }\ | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:190:30: note: in expansion of macro ‘TU_EXP1’ 190 | #define TU_CONSS(_name, ...) TU_EXP1( TU_GMA(__VA_ARGS__)(TU_CONS, (_name), __VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:162:36: note: in expansion of macro ‘TU_CONS_I’ 162 | #define TU_CONS(__name, name, ...) TU_CONS_I(__name, name, TU_DATANAME(name)) | ^~~~~~~~~ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_CONS’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:72: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:74:68: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:85:75: note: in expansion of macro ‘TU_DISPA4’ 85 | #define TU_DISPA15(n, a, a1,a2,a3,a4, b1,b2,b3,b4, c1,c2,c3,c4, d1,d2,d3) TU_DISPA4(n,a, a1,a2,a3,a4) TU_DISPA4(n,a, b1,b2,b3,b4) TU_DISPA4(n,a, c1,c2,c3,c4) TU_DISPA3(n,a, d1,d2,d3) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA15’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:232:5: note: in expansion of macro ‘TU_CONSS’ 232 | TU_CONSS(_name, TU_EXP _variants) \ | ^~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/type.hpp:129:1: note: in expansion of macro ‘TAGGED_UNION’ 129 | TAGGED_UNION(TypeData, Diverge, | ^~~~~~~~~~~~ In file included from src/include/span.hpp:10, from src/hir/path.hpp:14, from src/hir/type.hpp:13, from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘RcString::RcString(RcString&&)’, inlined from ‘HIR::Path::Data::Data_UfcsUnknown::Data_UfcsUnknown(HIR::Path::Data::Data_UfcsUnknown&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Data::Data(HIR::Path::Data&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Path(HIR::Path&&)’ at src/hir/path.hpp:267:7, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘HIR::TypeData::TypeData(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/include/rc_string.hpp:50:17: warning: ‘((RcString*)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::path.HIR::Path::m_data.HIR::Path::Data::m_data)))[1].RcString::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 50 | m_ptr(x.m_ptr) | ~~^~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/include/tagged_union.hpp:154:74: note: ‘’ declared here 154 | static self_t make_##__tag(__type v) { return __name( ::std::move(v) ); }\ | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:190:30: note: in expansion of macro ‘TU_EXP1’ 190 | #define TU_CONSS(_name, ...) TU_EXP1( TU_GMA(__VA_ARGS__)(TU_CONS, (_name), __VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:162:36: note: in expansion of macro ‘TU_CONS_I’ 162 | #define TU_CONS(__name, name, ...) TU_CONS_I(__name, name, TU_DATANAME(name)) | ^~~~~~~~~ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_CONS’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:72: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:74:68: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:85:75: note: in expansion of macro ‘TU_DISPA4’ 85 | #define TU_DISPA15(n, a, a1,a2,a3,a4, b1,b2,b3,b4, c1,c2,c3,c4, d1,d2,d3) TU_DISPA4(n,a, a1,a2,a3,a4) TU_DISPA4(n,a, b1,b2,b3,b4) TU_DISPA4(n,a, c1,c2,c3,c4) TU_DISPA3(n,a, d1,d2,d3) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA15’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:232:5: note: in expansion of macro ‘TU_CONSS’ 232 | TU_CONSS(_name, TU_EXP _variants) \ | ^~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/type.hpp:129:1: note: in expansion of macro ‘TAGGED_UNION’ 129 | TAGGED_UNION(TypeData, Diverge, | ^~~~~~~~~~~~ In file included from src/include/span.hpp:10, from src/hir/path.hpp:14, from src/hir/type.hpp:13, from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘RcString::RcString(RcString&&)’, inlined from ‘HIR::Path::Data::Data_UfcsKnown::Data_UfcsKnown(HIR::Path::Data::Data_UfcsKnown&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Data::Data(HIR::Path::Data&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Path(HIR::Path&&)’ at src/hir/path.hpp:267:7, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘HIR::TypeData::TypeData(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/include/rc_string.hpp:50:17: warning: ‘((RcString*)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::path.HIR::Path::m_data.HIR::Path::Data::m_data)))[11].RcString::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 50 | m_ptr(x.m_ptr) | ~~^~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/include/tagged_union.hpp:154:74: note: ‘’ declared here 154 | static self_t make_##__tag(__type v) { return __name( ::std::move(v) ); }\ | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:190:30: note: in expansion of macro ‘TU_EXP1’ 190 | #define TU_CONSS(_name, ...) TU_EXP1( TU_GMA(__VA_ARGS__)(TU_CONS, (_name), __VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:162:36: note: in expansion of macro ‘TU_CONS_I’ 162 | #define TU_CONS(__name, name, ...) TU_CONS_I(__name, name, TU_DATANAME(name)) | ^~~~~~~~~ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_CONS’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:72: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:74:68: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:85:75: note: in expansion of macro ‘TU_DISPA4’ 85 | #define TU_DISPA15(n, a, a1,a2,a3,a4, b1,b2,b3,b4, c1,c2,c3,c4, d1,d2,d3) TU_DISPA4(n,a, a1,a2,a3,a4) TU_DISPA4(n,a, b1,b2,b3,b4) TU_DISPA4(n,a, c1,c2,c3,c4) TU_DISPA3(n,a, d1,d2,d3) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA15’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:232:5: note: in expansion of macro ‘TU_CONSS’ 232 | TU_CONSS(_name, TU_EXP _variants) \ | ^~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/type.hpp:129:1: note: in expansion of macro ‘TAGGED_UNION’ 129 | TAGGED_UNION(TypeData, Diverge, | ^~~~~~~~~~~~ In file included from src/hir/path.hpp:15, from src/hir/type.hpp:13, from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘HIR::TypeRef::TypeRef(HIR::TypeRef&&)’, inlined from ‘HIR::Path::Data::Data_UfcsUnknown::Data_UfcsUnknown(HIR::Path::Data::Data_UfcsUnknown&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Data::Data(HIR::Path::Data&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Path(HIR::Path&&)’ at src/hir/path.hpp:267:7, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘HIR::TypeData::TypeData(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/hir/type_ref.hpp:66:17: warning: ‘*(HIR::TypeRef*)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::path.HIR::Path::m_data.HIR::Path::Data::m_data)).HIR::TypeRef::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 66 | m_ptr(x.m_ptr) | ~~^~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/include/tagged_union.hpp:154:74: note: ‘’ declared here 154 | static self_t make_##__tag(__type v) { return __name( ::std::move(v) ); }\ | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:190:30: note: in expansion of macro ‘TU_EXP1’ 190 | #define TU_CONSS(_name, ...) TU_EXP1( TU_GMA(__VA_ARGS__)(TU_CONS, (_name), __VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:162:36: note: in expansion of macro ‘TU_CONS_I’ 162 | #define TU_CONS(__name, name, ...) TU_CONS_I(__name, name, TU_DATANAME(name)) | ^~~~~~~~~ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_CONS’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:72: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:74:68: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:85:75: note: in expansion of macro ‘TU_DISPA4’ 85 | #define TU_DISPA15(n, a, a1,a2,a3,a4, b1,b2,b3,b4, c1,c2,c3,c4, d1,d2,d3) TU_DISPA4(n,a, a1,a2,a3,a4) TU_DISPA4(n,a, b1,b2,b3,b4) TU_DISPA4(n,a, c1,c2,c3,c4) TU_DISPA3(n,a, d1,d2,d3) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA15’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:232:5: note: in expansion of macro ‘TU_CONSS’ 232 | TU_CONSS(_name, TU_EXP _variants) \ | ^~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/type.hpp:129:1: note: in expansion of macro ‘TAGGED_UNION’ 129 | TAGGED_UNION(TypeData, Diverge, | ^~~~~~~~~~~~ In file included from src/include/span.hpp:10, from src/hir/path.hpp:14, from src/hir/type.hpp:13, from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘RcString::RcString(RcString&&)’, inlined from ‘HIR::Path::Data::Data_UfcsUnknown::Data_UfcsUnknown(HIR::Path::Data::Data_UfcsUnknown&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Data::Data(HIR::Path::Data&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Path(HIR::Path&&)’ at src/hir/path.hpp:267:7, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘HIR::TypeData::TypeData(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/include/rc_string.hpp:50:17: warning: ‘((RcString*)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::path.HIR::Path::m_data.HIR::Path::Data::m_data)))[1].RcString::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 50 | m_ptr(x.m_ptr) | ~~^~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/include/tagged_union.hpp:154:74: note: ‘’ declared here 154 | static self_t make_##__tag(__type v) { return __name( ::std::move(v) ); }\ | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:190:30: note: in expansion of macro ‘TU_EXP1’ 190 | #define TU_CONSS(_name, ...) TU_EXP1( TU_GMA(__VA_ARGS__)(TU_CONS, (_name), __VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:162:36: note: in expansion of macro ‘TU_CONS_I’ 162 | #define TU_CONS(__name, name, ...) TU_CONS_I(__name, name, TU_DATANAME(name)) | ^~~~~~~~~ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_CONS’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:72: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:74:68: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:85:75: note: in expansion of macro ‘TU_DISPA4’ 85 | #define TU_DISPA15(n, a, a1,a2,a3,a4, b1,b2,b3,b4, c1,c2,c3,c4, d1,d2,d3) TU_DISPA4(n,a, a1,a2,a3,a4) TU_DISPA4(n,a, b1,b2,b3,b4) TU_DISPA4(n,a, c1,c2,c3,c4) TU_DISPA3(n,a, d1,d2,d3) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA15’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:232:5: note: in expansion of macro ‘TU_CONSS’ 232 | TU_CONSS(_name, TU_EXP _variants) \ | ^~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/type.hpp:129:1: note: in expansion of macro ‘TAGGED_UNION’ 129 | TAGGED_UNION(TypeData, Diverge, | ^~~~~~~~~~~~ In file included from src/hir/path.hpp:15, from src/hir/type.hpp:13, from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘HIR::TypeRef::TypeRef(HIR::TypeRef&&)’, inlined from ‘HIR::Path::Data::Data_UfcsUnknown::Data_UfcsUnknown(HIR::Path::Data::Data_UfcsUnknown&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Data::Data(HIR::Path::Data&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Path(HIR::Path&&)’ at src/hir/path.hpp:267:7, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘HIR::TypeData::TypeData(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/hir/type_ref.hpp:66:17: warning: ‘*(HIR::TypeRef*)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::path.HIR::Path::m_data.HIR::Path::Data::m_data)).HIR::TypeRef::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 66 | m_ptr(x.m_ptr) | ~~^~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/include/tagged_union.hpp:154:74: note: ‘’ declared here 154 | static self_t make_##__tag(__type v) { return __name( ::std::move(v) ); }\ | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:190:30: note: in expansion of macro ‘TU_EXP1’ 190 | #define TU_CONSS(_name, ...) TU_EXP1( TU_GMA(__VA_ARGS__)(TU_CONS, (_name), __VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:162:36: note: in expansion of macro ‘TU_CONS_I’ 162 | #define TU_CONS(__name, name, ...) TU_CONS_I(__name, name, TU_DATANAME(name)) | ^~~~~~~~~ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_CONS’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:72: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:74:68: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:85:75: note: in expansion of macro ‘TU_DISPA4’ 85 | #define TU_DISPA15(n, a, a1,a2,a3,a4, b1,b2,b3,b4, c1,c2,c3,c4, d1,d2,d3) TU_DISPA4(n,a, a1,a2,a3,a4) TU_DISPA4(n,a, b1,b2,b3,b4) TU_DISPA4(n,a, c1,c2,c3,c4) TU_DISPA3(n,a, d1,d2,d3) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA15’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:232:5: note: in expansion of macro ‘TU_CONSS’ 232 | TU_CONSS(_name, TU_EXP _variants) \ | ^~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/type.hpp:129:1: note: in expansion of macro ‘TAGGED_UNION’ 129 | TAGGED_UNION(TypeData, Diverge, | ^~~~~~~~~~~~ In file included from src/include/span.hpp:10, from src/hir/path.hpp:14, from src/hir/type.hpp:13, from src/hir/hir.hpp:24, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: In constructor ‘RcString::RcString(RcString&&)’, inlined from ‘HIR::Path::Data::Data_UfcsUnknown::Data_UfcsUnknown(HIR::Path::Data::Data_UfcsUnknown&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Data::Data(HIR::Path::Data&&)’ at src/hir/path.hpp:273:5, inlined from ‘HIR::Path::Path(HIR::Path&&)’ at src/hir/path.hpp:267:7, inlined from ‘HIR::TypeData::Data_Path::Data_Path(HIR::TypeData::Data_Path&&)’ at src/hir/type.hpp:129:1, inlined from ‘HIR::TypeData::TypeData(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeData::self_t HIR::TypeData::make_Path(HIR::TypeData::Data_Path)’ at src/hir/type.hpp:129:1, inlined from ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’ at src/hir/type.hpp:295:39: src/include/rc_string.hpp:50:17: warning: ‘((RcString*)((char*)& + offsetof(HIR::TypeData::Data_Path, HIR::TypeData::Data_Path::path.HIR::Path::m_data.HIR::Path::Data::m_data)))[1].RcString::m_ptr’ may be used uninitialized [-Wmaybe-uninitialized] 50 | m_ptr(x.m_ptr) | ~~^~~~~ In file included from src/hir/hir.hpp:19, from src/hir_typeck/static.hpp:10, from src/hir_typeck/static.cpp:8: src/hir/type.hpp: In static member function ‘static HIR::TypeRef HIR::TypeRef::new_path(HIR::Path, HIR::TypePathBinding)’: src/include/tagged_union.hpp:154:74: note: ‘’ declared here 154 | static self_t make_##__tag(__type v) { return __name( ::std::move(v) ); }\ | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:190:30: note: in expansion of macro ‘TU_EXP1’ 190 | #define TU_CONSS(_name, ...) TU_EXP1( TU_GMA(__VA_ARGS__)(TU_CONS, (_name), __VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:162:36: note: in expansion of macro ‘TU_CONS_I’ 162 | #define TU_CONS(__name, name, ...) TU_CONS_I(__name, name, TU_DATANAME(name)) | ^~~~~~~~~ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_CONS’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:72: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:74:68: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:85:75: note: in expansion of macro ‘TU_DISPA4’ 85 | #define TU_DISPA15(n, a, a1,a2,a3,a4, b1,b2,b3,b4, c1,c2,c3,c4, d1,d2,d3) TU_DISPA4(n,a, a1,a2,a3,a4) TU_DISPA4(n,a, b1,b2,b3,b4) TU_DISPA4(n,a, c1,c2,c3,c4) TU_DISPA3(n,a, d1,d2,d3) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA15’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:232:5: note: in expansion of macro ‘TU_CONSS’ 232 | TU_CONSS(_name, TU_EXP _variants) \ | ^~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/hir/type.hpp:129:1: note: in expansion of macro ‘TAGGED_UNION’ 129 | TAGGED_UNION(TypeData, Diverge, | ^~~~~~~~~~~~ [CXX] -o .obj/trans/trans_list.o [CXX] -o .obj/trans/mangling_v2.o [CXX] -o .obj/trans/enumerate.o [CXX] -o .obj/trans/auto_impls.o [CXX] -o .obj/trans/monomorphise.o [CXX] -o .obj/trans/codegen.o At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics [CXX] -o .obj/trans/codegen_c.o [CXX] -o .obj/trans/codegen_c_structured.o [CXX] -o .obj/trans/codegen_mmir.o [CXX] -o .obj/trans/target.o [CXX] -o .obj/trans/allocator.o /usr/bin/make -C tools/common make[1]: Entering directory '/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/tools/common' [CXX] toml.cpp src/trans/codegen.cpp: In function ‘void Trans_Codegen(const string&, CodegenOutput, const TransOptions&, const HIR::Crate&, const TransList&, const string&)’: src/trans/codegen.cpp:155:21: warning: unused variable ‘pp’ [-Wunused-variable] 155 | const auto& pp = ent.second->pp; | ^~ [CXX] path.cpp In file included from src/hir/path.hpp:16, from src/hir/pattern.hpp:14, from src/hir/expr.hpp:11, from src/hir_typeck/expr_cs.hpp:11, from src/hir_typeck/expr_cs__enum.cpp:8: In constructor ‘HIR::GenericRef::GenericRef(HIR::GenericRef&&)’, inlined from ‘HIR::ConstGeneric::ConstGeneric(HIR::ConstGeneric&&)’ at src/hir/path.hpp:41:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HIR::ConstGeneric; _Args = {HIR::ConstGeneric}; _Tp = HIR::ConstGeneric]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = HIR::ConstGeneric; _Args = {HIR::ConstGeneric}; _Tp = HIR::ConstGeneric]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {HIR::ConstGeneric}; _Tp = HIR::ConstGeneric; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = HIR::ConstGeneric; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘void typecheck::fix_param_count_(const Span&, Context&, const HIR::TypeRef&, bool, const T&, const HIR::GenericParams&, HIR::PathParams&) [with T = HIR::Path]’ at src/hir_typeck/expr_cs__enum.cpp:121:42: src/hir/generic_ref.hpp:17:8: warning: ‘*(HIR::GenericRef*)((char*)& + offsetof(HIR::value_type, HIR::ConstGeneric::m_data)).HIR::GenericRef::binding’ may be used uninitialized [-Wmaybe-uninitialized] 17 | struct GenericRef | ^~~~~~~~~~ src/hir_typeck/expr_cs__enum.cpp: In function ‘void typecheck::fix_param_count_(const Span&, Context&, const HIR::TypeRef&, bool, const T&, const HIR::GenericParams&, HIR::PathParams&) [with T = HIR::Path]’: src/hir_typeck/expr_cs__enum.cpp:121:42: note: ‘’ declared here 121 | params.m_values.push_back({}); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ [CXX] debug.cpp In file included from src/hir/path.hpp:16, from src/hir/pattern.hpp:14, from src/hir/expr.hpp:11, from src/hir_typeck/expr_cs.hpp:11, from src/hir_typeck/expr_cs__enum.cpp:8: In constructor ‘HIR::GenericRef::GenericRef(HIR::GenericRef&&)’, inlined from ‘HIR::ConstGeneric::ConstGeneric(HIR::ConstGeneric&&)’ at src/hir/path.hpp:41:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HIR::ConstGeneric; _Args = {HIR::ConstGeneric}; _Tp = HIR::ConstGeneric]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = HIR::ConstGeneric; _Args = {HIR::ConstGeneric}; _Tp = HIR::ConstGeneric]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {HIR::ConstGeneric}; _Tp = HIR::ConstGeneric; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = HIR::ConstGeneric; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘void typecheck::fix_param_count_(const Span&, Context&, const HIR::TypeRef&, bool, const T&, const HIR::GenericParams&, HIR::PathParams&) [with T = HIR::GenericPath]’ at src/hir_typeck/expr_cs__enum.cpp:121:42: src/hir/generic_ref.hpp:17:8: warning: ‘*(HIR::GenericRef*)((char*)& + offsetof(HIR::value_type, HIR::ConstGeneric::m_data)).HIR::GenericRef::binding’ may be used uninitialized [-Wmaybe-uninitialized] 17 | struct GenericRef | ^~~~~~~~~~ src/hir_typeck/expr_cs__enum.cpp: In function ‘void typecheck::fix_param_count_(const Span&, Context&, const HIR::TypeRef&, bool, const T&, const HIR::GenericParams&, HIR::PathParams&) [with T = HIR::GenericPath]’: src/hir_typeck/expr_cs__enum.cpp:121:42: note: ‘’ declared here 121 | params.m_values.push_back({}); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from toml.cpp:9: In member function ‘TomlValue& TomlValue::operator=(TomlValue&&)’, inlined from ‘TomlKeyValue TomlFile::get_next_value()’ at toml.cpp:194:41: toml.h:67:8: warning: ‘.TomlValue::m_int_value’ may be used uninitialized [-Wmaybe-uninitialized] 67 | struct TomlValue | ^~~~~~~~~ toml.cpp: In member function ‘TomlKeyValue TomlFile::get_next_value()’: toml.cpp:194:41: note: ‘’ declared here 194 | rv.value = TomlValue { t.m_data }; | ^ In file included from toml.cpp:9: In member function ‘TomlValue& TomlValue::operator=(TomlValue&&)’, inlined from ‘TomlKeyValue TomlFile::get_next_value()’ at toml.cpp:194:41: toml.h:67:8: warning: ‘.TomlValue::m_int_value’ may be used uninitialized [-Wmaybe-uninitialized] 67 | struct TomlValue | ^~~~~~~~~ toml.cpp: In member function ‘TomlKeyValue TomlFile::get_next_value()’: toml.cpp:194:41: note: ‘’ declared here 194 | rv.value = TomlValue { t.m_data }; | ^ In file included from toml.cpp:9: In constructor ‘TomlValue::TomlValue(TomlValue&&)’, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = TomlValue; _Args = {TomlValue}; _Tp = TomlValue]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = TomlValue; _Args = {TomlValue}; _Tp = TomlValue]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {TomlValue}; _Tp = TomlValue; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = TomlValue; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘TomlKeyValue TomlFile::get_next_value()’ at toml.cpp:214:48: toml.h:67:8: warning: ‘.TomlValue::m_int_value’ may be used uninitialized [-Wmaybe-uninitialized] 67 | struct TomlValue | ^~~~~~~~~ toml.cpp: In member function ‘TomlKeyValue TomlFile::get_next_value()’: toml.cpp:214:75: note: ‘’ declared here 214 | rv.value.m_sub_values.push_back(TomlValue { t.as_string() }); | ^ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In constructor ‘MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::StateVec::StateVec(size_t, MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::State)’, inlined from ‘MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::ValStates(size_t, size_t)’ at src/mir/check.cpp:195:13, inlined from ‘void MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)’ at src/mir/check.cpp:396:31: src/mir/check.cpp:128:34: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 128 | case 2: v.back() |= 0xF0; break; | ~~~~~~~~~^~~~~~~ In file included from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/aarch64-unknown-linux-gnu/bits/c++allocator.h:33, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/allocator.h:46, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/string:41, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/locale_classes.h:40, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/ios_base.h:41, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ios:42, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ostream:38, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/iostream:39, from src/mir/main_bindings.hpp:9, from src/mir/check.cpp:9: /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h: In function ‘void MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)’: /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:127:48: note: at offset [0, 4611686018427387902] into destination object of size [0, 4611686018427387903] allocated by ‘operator new’ 127 | return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp))); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ In constructor ‘MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::StateVec::StateVec(size_t, MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::State)’, inlined from ‘MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::StateVec::StateVec(size_t, MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::State)’ at src/mir/check.cpp:121:13, inlined from ‘MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::ValStates(size_t, size_t)’ at src/mir/check.cpp:195:13, inlined from ‘void MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)’ at src/mir/check.cpp:396:31: src/mir/check.cpp:129:34: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 129 | case 3: v.back() |= 0xC0; break; | ~~~~~~~~~^~~~~~~ In file included from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/aarch64-unknown-linux-gnu/bits/c++allocator.h:33, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/allocator.h:46, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/string:41, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/locale_classes.h:40, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/ios_base.h:41, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ios:42, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ostream:38, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/iostream:39, from src/mir/main_bindings.hpp:9, from src/mir/check.cpp:9: /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h: In function ‘void MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)’: /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:127:48: note: at offset [0, 4611686018427387902] into destination object of size [0, 4611686018427387903] allocated by ‘operator new’ 127 | return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp))); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ In constructor ‘MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::StateVec::StateVec(size_t, MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::State)’, inlined from ‘MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)::ValStates::ValStates(size_t, size_t)’ at src/mir/check.cpp:195:13, inlined from ‘void MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)’ at src/mir/check.cpp:396:31: src/mir/check.cpp:127:34: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 127 | case 1: v.back() |= 0xFC; break; | ~~~~~~~~~^~~~~~~ In file included from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/aarch64-unknown-linux-gnu/bits/c++allocator.h:33, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/allocator.h:46, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/string:41, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/locale_classes.h:40, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/ios_base.h:41, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ios:42, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ostream:38, from /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/iostream:39, from src/mir/main_bindings.hpp:9, from src/mir/check.cpp:9: /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h: In function ‘void MIR_Validate_ValState(MIR::TypeResolve&, const MIR::Function&)’: /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:127:48: note: at offset [0, 4611686018427387902] into destination object of size [0, 4611686018427387903] allocated by ‘operator new’ 127 | return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp))); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ [AR] ../../bin/common_lib.a make[1]: Leaving directory '/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/tools/common' At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/hir/type.hpp:13, from src/trans/trans_list.hpp:10, from src/trans/monomorphise.hpp:11, from src/trans/monomorphise.cpp:8: In constructor ‘HIR::EncodedLiteralPtr::EncodedLiteralPtr(HIR::EncodedLiteralPtr&&)’, inlined from ‘HIR::ConstGeneric::ConstGeneric(HIR::ConstGeneric&&)’ at src/hir/path.hpp:41:1, inlined from ‘HIR::ArraySize::ArraySize(HIR::ArraySize&&)’ at src/hir/type.hpp:85:1, inlined from ‘MIR::RValue::Data_SizedArray::Data_SizedArray(MIR::RValue::Data_SizedArray&&)’ at src/mir/mir.hpp:510:1, inlined from ‘MIR::RValue::RValue(MIR::RValue::Data_SizedArray)’ at src/mir/mir.hpp:510:1, inlined from ‘static MIR::RValue::self_t MIR::RValue::make_SizedArray(MIR::RValue::Data_SizedArray)’ at src/mir/mir.hpp:510:1, inlined from ‘MIR::FunctionPointer Trans_Monomorphise(const StaticTraitResolve&, const Trans_Params&, const MIR::FunctionPointer&)’ at src/trans/monomorphise.cpp:197:17: src/hir/path.hpp:30:51: warning: ‘((HIR::EncodedLiteralPtr*)((char*)& + offsetof(MIR::RValue::Data_SizedArray, MIR::RValue::Data_SizedArray::count.HIR::ArraySize::m_data)))[1].HIR::EncodedLiteralPtr::p’ may be used uninitialized [-Wmaybe-uninitialized] 30 | EncodedLiteralPtr(EncodedLiteralPtr&& x): p(x.p) { x.p = nullptr; } | ~~^ In file included from src/hir/type.hpp:12, from src/trans/trans_list.hpp:10, from src/trans/monomorphise.hpp:11, from src/trans/monomorphise.cpp:8: src/mir/mir.hpp: In function ‘MIR::FunctionPointer Trans_Monomorphise(const StaticTraitResolve&, const Trans_Params&, const MIR::FunctionPointer&)’: src/include/tagged_union.hpp:154:74: note: ‘’ declared here 154 | static self_t make_##__tag(__type v) { return __name( ::std::move(v) ); }\ | ^ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:162:36: note: in expansion of macro ‘TU_CONS_I’ 162 | #define TU_CONS(__name, name, ...) TU_CONS_I(__name, name, TU_DATANAME(name)) | ^~~~~~~~~ src/include/tagged_union.hpp:70:26: note: in expansion of macro ‘TU_CONS’ 70 | #define TU_DISPA(n, a) n a | ^ src/include/tagged_union.hpp:72:72: note: in expansion of macro ‘TU_DISPA’ 72 | #define TU_DISPA2(n, a, _1, _2) TU_DISPA(n, (TU_EXP a, TU_EXP _1)) TU_DISPA(n, (TU_EXP a, TU_EXP _2)) | ^~~~~~~~ src/include/tagged_union.hpp:74:68: note: in expansion of macro ‘TU_DISPA2’ 74 | #define TU_DISPA4(n, a, a1,a2, b1,b2) TU_DISPA2(n,a, a1,a2) TU_DISPA2(n,a, b1,b2) | ^~~~~~~~~ src/include/tagged_union.hpp:85:75: note: in expansion of macro ‘TU_DISPA4’ 85 | #define TU_DISPA15(n, a, a1,a2,a3,a4, b1,b2,b3,b4, c1,c2,c3,c4, d1,d2,d3) TU_DISPA4(n,a, a1,a2,a3,a4) TU_DISPA4(n,a, b1,b2,b3,b4) TU_DISPA4(n,a, c1,c2,c3,c4) TU_DISPA3(n,a, d1,d2,d3) | ^~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISPA15’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:232:5: note: in expansion of macro ‘TU_CONSS’ 232 | TU_CONSS(_name, TU_EXP _variants) \ | ^~~~~~~~ src/mir/mir.hpp:510:1: note: in expansion of macro ‘TAGGED_UNION_EX’ 510 | TAGGED_UNION_EX(RValue, (), Tuple, ( | ^~~~~~~~~~~~~~~ In constructor ‘MIR::AsmParam::Data_Reg::Data_Reg(MIR::AsmParam::Data_Reg&&)’, inlined from ‘MIR::AsmParam::AsmParam(MIR::AsmParam&&)’ at src/mir/mir.hpp:643:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘MIR::FunctionPointer Trans_Monomorphise(const StaticTraitResolve&, const Trans_Params&, const MIR::FunctionPointer&)’ at src/trans/monomorphise.cpp:311:45: src/include/tagged_union.hpp:150:29: warning: ‘*(MIR::AsmParam::Data_Reg*)((char*)& + offsetof(MIR::value_type, MIR::AsmParam::m_data)).MIR::AsmParam::Data_Reg::dir’ may be used uninitialized [-Wmaybe-uninitialized] 150 | #define TU_DATANAME(name) Data_##name | ^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:191:30: note: in expansion of macro ‘TU_EXP1’ 191 | #define TU_TYPEDEFS(...) TU_EXP1( TU_GMX(__VA_ARGS__)(TU_TYPEDEF ,__VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:165:54: note: in expansion of macro ‘TU_DATANAME’ 165 | #define TU_TYPEDEF(name, ...) typedef __VA_ARGS__ TU_DATANAME(name);/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:35:43: note: in expansion of macro ‘TU_TYPEDEF’ 35 | #define TU_DISP3(n, v, v2, v3) n v n v2 n v3 | ^ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP3’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:215:5: note: in expansion of macro ‘TU_TYPEDEFS’ 215 | TU_TYPEDEFS _variants/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/mir/mir.hpp:643:1: note: in expansion of macro ‘TAGGED_UNION’ 643 | TAGGED_UNION(AsmParam, Const, | ^~~~~~~~~~~~ src/trans/monomorphise.cpp: In function ‘MIR::FunctionPointer Trans_Monomorphise(const StaticTraitResolve&, const Trans_Params&, const MIR::FunctionPointer&)’: src/trans/monomorphise.cpp:311:45: note: ‘’ declared here 311 | new_params.push_back(params.monomorph(resolve, v)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/type.hpp:12, from src/trans/trans_list.hpp:10, from src/trans/monomorphise.hpp:11, from src/trans/monomorphise.cpp:8: In constructor ‘AsmCommon::RegisterSpec::RegisterSpec(AsmCommon::RegisterSpec&&)’, inlined from ‘MIR::AsmParam::Data_Reg::Data_Reg(MIR::AsmParam::Data_Reg&&)’ at src/mir/mir.hpp:643:1, inlined from ‘MIR::AsmParam::AsmParam(MIR::AsmParam&&)’ at src/mir/mir.hpp:643:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘MIR::FunctionPointer Trans_Monomorphise(const StaticTraitResolve&, const Trans_Params&, const MIR::FunctionPointer&)’ at src/trans/monomorphise.cpp:311:45: src/include/tagged_union.hpp:226:40: warning: ‘*(AsmCommon::RegisterSpec*)((char*)& + offsetof(MIR::value_type, MIR::AsmParam::m_data) + 8).AsmCommon::RegisterSpec::m_tag’ may be used uninitialized [-Wmaybe-uninitialized] 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ~~^~~~~ src/mir/../hir/asm.hpp:68:5: note: in expansion of macro ‘TAGGED_UNION_EX’ 68 | TAGGED_UNION_EX(RegisterSpec, (), Explicit, ( | ^~~~~~~~~~~~~~~ src/trans/monomorphise.cpp: In function ‘MIR::FunctionPointer Trans_Monomorphise(const StaticTraitResolve&, const Trans_Params&, const MIR::FunctionPointer&)’: src/trans/monomorphise.cpp:311:45: note: ‘’ declared here 311 | new_params.push_back(params.monomorph(resolve, v)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/type.hpp:12, from src/trans/trans_list.hpp:10, from src/trans/monomorphise.hpp:11, from src/trans/monomorphise.cpp:8: In constructor ‘AsmCommon::RegisterSpec::RegisterSpec(AsmCommon::RegisterSpec&&)’, inlined from ‘MIR::AsmParam::Data_Reg::Data_Reg(MIR::AsmParam::Data_Reg&&)’ at src/mir/mir.hpp:643:1, inlined from ‘MIR::AsmParam::AsmParam(MIR::AsmParam&&)’ at src/mir/mir.hpp:643:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘MIR::FunctionPointer Trans_Monomorphise(const StaticTraitResolve&, const Trans_Params&, const MIR::FunctionPointer&)’ at src/trans/monomorphise.cpp:311:45: src/include/tagged_union.hpp:175:95: warning: ‘((AsmCommon::type*)((char*)& + offsetof(MIR::value_type, MIR::AsmParam::m_data)))[4]’ may be used uninitialized [-Wmaybe-uninitialized] 175 | #define TU_MOVE_CASE(tag, ...) case TAG_##tag: new(&m_data.tag) TU_DATANAME(tag)( ::std::move(x.m_data.tag) ); break;/* | ~~~~~~~~~~~^~~~~~~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:34:31: note: in expansion of macro ‘TU_MOVE_CASE’ 34 | #define TU_DISP2(n, _1, _2) n _1 n _2 | ^ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP2’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:226:105: note: in expansion of macro ‘TU_MOVE_CASES’ 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ^~~~~~~~~~~~~ src/mir/../hir/asm.hpp:68:5: note: in expansion of macro ‘TAGGED_UNION_EX’ 68 | TAGGED_UNION_EX(RegisterSpec, (), Explicit, ( | ^~~~~~~~~~~~~~~ src/trans/monomorphise.cpp: In function ‘MIR::FunctionPointer Trans_Monomorphise(const StaticTraitResolve&, const Trans_Params&, const MIR::FunctionPointer&)’: src/trans/monomorphise.cpp:311:45: note: ‘’ declared here 311 | new_params.push_back(params.monomorph(resolve, v)); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics In file included from src/hir/hir.hpp:19, from src/mir/main_bindings.hpp:10, from src/mir/optimise.cpp:9: In constructor ‘MIR::Constant::Constant(MIR::Constant&&)’, inlined from ‘MIR::AsmParam::AsmParam(MIR::AsmParam&&)’ at src/mir/mir.hpp:643:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’ at src/mir/optimise.cpp:1348:33: src/include/tagged_union.hpp:226:40: warning: ‘*(MIR::Constant*)((char*)& + offsetof(MIR::value_type, MIR::AsmParam::m_data)).MIR::Constant::m_tag’ may be used uninitialized [-Wmaybe-uninitialized] 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ~~^~~~~ src/mir/mir.hpp:454:1: note: in expansion of macro ‘TAGGED_UNION_EX’ 454 | TAGGED_UNION_EX(Constant, (), Int, ( | ^~~~~~~~~~~~~~~ src/mir/optimise.cpp: In member function ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’: src/mir/optimise.cpp:1348:33: note: ‘’ declared here 1348 | rv.push_back( this->monomorph(v) ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/path.hpp:16, from src/hir/type.hpp:13, from src/hir/hir.hpp:24, from src/mir/main_bindings.hpp:10, from src/mir/optimise.cpp:9: In constructor ‘HIR::GenericRef::GenericRef(HIR::GenericRef&&)’, inlined from ‘MIR::Constant::Constant(MIR::Constant&&)’ at src/mir/mir.hpp:454:1, inlined from ‘MIR::AsmParam::AsmParam(MIR::AsmParam&&)’ at src/mir/mir.hpp:643:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’ at src/mir/optimise.cpp:1348:33: src/hir/generic_ref.hpp:17:8: warning: ‘*(HIR::GenericRef*)((char*)& + offsetof(MIR::value_type, MIR::AsmParam::m_data) + 8).HIR::GenericRef::binding’ may be used uninitialized [-Wmaybe-uninitialized] 17 | struct GenericRef | ^~~~~~~~~~ src/mir/optimise.cpp: In member function ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’: src/mir/optimise.cpp:1348:33: note: ‘’ declared here 1348 | rv.push_back( this->monomorph(v) ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/hir.hpp:19, from src/mir/main_bindings.hpp:10, from src/mir/optimise.cpp:9: In constructor ‘MIR::AsmParam::Data_Reg::Data_Reg(MIR::AsmParam::Data_Reg&&)’, inlined from ‘MIR::AsmParam::AsmParam(MIR::AsmParam&&)’ at src/mir/mir.hpp:643:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’ at src/mir/optimise.cpp:1348:33: src/include/tagged_union.hpp:150:29: warning: ‘*(MIR::AsmParam::Data_Reg*)((char*)& + offsetof(MIR::value_type, MIR::AsmParam::m_data)).MIR::AsmParam::Data_Reg::dir’ may be used uninitialized [-Wmaybe-uninitialized] 150 | #define TU_DATANAME(name) Data_##name | ^~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:191:30: note: in expansion of macro ‘TU_EXP1’ 191 | #define TU_TYPEDEFS(...) TU_EXP1( TU_GMX(__VA_ARGS__)(TU_TYPEDEF ,__VA_ARGS__) ) | ^~~~~~~ src/include/tagged_union.hpp:165:54: note: in expansion of macro ‘TU_DATANAME’ 165 | #define TU_TYPEDEF(name, ...) typedef __VA_ARGS__ TU_DATANAME(name);/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:35:43: note: in expansion of macro ‘TU_TYPEDEF’ 35 | #define TU_DISP3(n, v, v2, v3) n v n v2 n v3 | ^ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP3’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:215:5: note: in expansion of macro ‘TU_TYPEDEFS’ 215 | TU_TYPEDEFS _variants/* | ^~~~~~~~~~~ src/include/tagged_union.hpp:210:50: note: in expansion of macro ‘TAGGED_UNION_EX’ 210 | #define TAGGED_UNION(_name, _def, ...) TU_EXP1( TAGGED_UNION_EX(_name, (), _def, (TU_EXP(__VA_ARGS__)), (), (), ()) ) | ^~~~~~~~~~~~~~~ src/mir/mir.hpp:643:1: note: in expansion of macro ‘TAGGED_UNION’ 643 | TAGGED_UNION(AsmParam, Const, | ^~~~~~~~~~~~ src/mir/optimise.cpp: In member function ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’: src/mir/optimise.cpp:1348:33: note: ‘’ declared here 1348 | rv.push_back( this->monomorph(v) ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/hir.hpp:19, from src/mir/main_bindings.hpp:10, from src/mir/optimise.cpp:9: In constructor ‘AsmCommon::RegisterSpec::RegisterSpec(AsmCommon::RegisterSpec&&)’, inlined from ‘MIR::AsmParam::Data_Reg::Data_Reg(MIR::AsmParam::Data_Reg&&)’ at src/mir/mir.hpp:643:1, inlined from ‘MIR::AsmParam::AsmParam(MIR::AsmParam&&)’ at src/mir/mir.hpp:643:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’ at src/mir/optimise.cpp:1348:33: src/include/tagged_union.hpp:226:40: warning: ‘*(AsmCommon::RegisterSpec*)((char*)& + offsetof(MIR::value_type, MIR::AsmParam::m_data) + 8).AsmCommon::RegisterSpec::m_tag’ may be used uninitialized [-Wmaybe-uninitialized] 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ~~^~~~~ src/mir/../hir/asm.hpp:68:5: note: in expansion of macro ‘TAGGED_UNION_EX’ 68 | TAGGED_UNION_EX(RegisterSpec, (), Explicit, ( | ^~~~~~~~~~~~~~~ src/mir/optimise.cpp: In member function ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’: src/mir/optimise.cpp:1348:33: note: ‘’ declared here 1348 | rv.push_back( this->monomorph(v) ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ In file included from src/hir/hir.hpp:19, from src/mir/main_bindings.hpp:10, from src/mir/optimise.cpp:9: In constructor ‘AsmCommon::RegisterSpec::RegisterSpec(AsmCommon::RegisterSpec&&)’, inlined from ‘MIR::AsmParam::Data_Reg::Data_Reg(MIR::AsmParam::Data_Reg&&)’ at src/mir/mir.hpp:643:1, inlined from ‘MIR::AsmParam::AsmParam(MIR::AsmParam&&)’ at src/mir/mir.hpp:643:1, inlined from ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/ext/new_allocator.h:162:4, inlined from ‘static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = MIR::AsmParam; _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/alloc_traits.h:516:17, inlined from ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {MIR::AsmParam}; _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/vector.tcc:115:30, inlined from ‘void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = MIR::AsmParam; _Alloc = std::allocator]’ at /usr/lib/gcc/aarch64-unknown-linux-gnu/11.3.0/include/g++-v11.3.0/bits/stl_vector.h:1204:21, inlined from ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’ at src/mir/optimise.cpp:1348:33: src/include/tagged_union.hpp:175:95: warning: ‘((AsmCommon::type*)((char*)& + offsetof(MIR::value_type, MIR::AsmParam::m_data)))[4]’ may be used uninitialized [-Wmaybe-uninitialized] 175 | #define TU_MOVE_CASE(tag, ...) case TAG_##tag: new(&m_data.tag) TU_DATANAME(tag)( ::std::move(x.m_data.tag) ); break;/* | ~~~~~~~~~~~^~~~~~~~~~~~~~ src/include/tagged_union.hpp:23:21: note: in definition of macro ‘TU_EXP1’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:34:31: note: in expansion of macro ‘TU_MOVE_CASE’ 34 | #define TU_DISP2(n, _1, _2) n _1 n _2 | ^ src/include/tagged_union.hpp:23:21: note: in expansion of macro ‘TU_DISP2’ 23 | #define TU_EXP1(x) x | ^ src/include/tagged_union.hpp:226:105: note: in expansion of macro ‘TU_MOVE_CASES’ 226 | */ _name(_name&& x) noexcept: m_tag(x.m_tag) TU_EXP _extra_move { switch(m_tag) { case TAGDEAD: break; TU_MOVE_CASES _variants } x.m_tag = TAGDEAD; }/* | ^~~~~~~~~~~~~ src/mir/../hir/asm.hpp:68:5: note: in expansion of macro ‘TAGGED_UNION_EX’ 68 | TAGGED_UNION_EX(RegisterSpec, (), Explicit, ( | ^~~~~~~~~~~~~~~ src/mir/optimise.cpp: In member function ‘std::vector MIR_Optimise_Inlining(MIR::TypeResolve&, MIR::Function&, bool, const TransList*)::Cloner::clone_asm_params(const std::vector&) const’: src/mir/optimise.cpp:1348:33: note: ‘’ declared here 1348 | rv.push_back( this->monomorph(v) ); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics fatal: not a git repository (or any parent up to mount point /var/tmp) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). fatal: not a git repository (or any parent up to mount point /var/tmp) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). fatal: not a git repository (or any parent up to mount point /var/tmp) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). fatal: not a git repository (or any parent up to mount point /var/tmp) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). fatal: not a git repository (or any parent up to mount point /var/tmp) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). [CXX] -o .obj/version.o [AR] bin/mrustc.a [CXX] -o bin/mrustc objcopy --only-keep-debug bin/mrustc bin/mrustc.debug objcopy --add-gnu-debuglink=bin/mrustc.debug bin/mrustc strip bin/mrustc make -j30 -f minicargo.mk LIBS /usr/bin/make -f Makefile all /usr/bin/make -C tools/minicargo/ make[1]: Entering directory '/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/tools/minicargo' make[1]: Entering directory '/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10' make[1]: Nothing to be done for 'all'. make[1]: Leaving directory '/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10' test -e bin/mrustc [CXX] main.cpp [CXX] manifest.cpp [CXX] cfg.cpp [CXX] repository.cpp [CXX] build.cpp manifest.cpp: In static member function ‘static PackageVersionSpec PackageVersionSpec::from_string(const string&)’: manifest.cpp:1343:26: warning: unused variable ‘tag_start’ [-Wunused-variable] 1343 | auto tag_start = pos+1; | ^~~~~~~~~ build.cpp: In function ‘bool spawn_process(const char*, const StringList&, const StringListKV&, const helpers::path&, const helpers::path&)’: build.cpp:1525:18: warning: ignoring return value of ‘int chdir(const char*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 1525 | chdir(working_directory.str().c_str()); | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ build.cpp:1541:19: warning: ignoring return value of ‘int fchdir(int)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 1541 | fchdir(fd_cwd); | ~~~~~~^~~~~~~~ [CXX] -o ../../bin/minicargo objcopy --only-keep-debug ../../bin/minicargo ../../bin/minicargo.debug objcopy --add-gnu-debuglink=../../bin/minicargo.debug ../../bin/minicargo strip ../../bin/minicargo make[1]: Leaving directory '/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/tools/minicargo' test -e bin/minicargo bin/minicargo rustc-1.54.0-src/library/std --vendor-dir rustc-1.54.0-src/vendor --script-overrides script-overrides/stable-1.54.0-linux/ --output-dir output-1.54.0/ -j 30 --manifest-overrides rustc-1.54.0-overrides.toml > /var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/bin/mrustc -Z print-cfgs (0/13) BUILDING core v0.0.0 > /var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/bin/mrustc rustc-1.54.0-src/library/core/src/lib.rs -o output-1.54.0/libcore.rlib --crate-name core --crate-type rlib -C emit-depfile=output-1.54.0/libcore.rlib.d --crate-tag 0_0_0 -g --cfg debug_assertions -O -L output-1.54.0 --edition 2018 :0: BUG:src/mir/from_hir.cpp:524: TODO: visit - asm! const qemu: uncaught target signal 6 (Aborted) - core dumped Process was terminated with signal 6 FAILING COMMAND: /var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10/bin/mrustc rustc-1.54.0-src/library/core/src/lib.rs -o output-1.54.0/libcore.rlib --crate-name core --crate-type rlib -C emit-depfile=output-1.54.0/libcore.rlib.d --crate-tag 0_0_0 -g --cfg debug_assertions -O -L output-1.54.0 --edition 2018 BUILD FAILED make: *** [minicargo.mk:188: output-1.54.0/libstd.rlib] Error 1 * ERROR: dev-lang/rust-1.54.0::lang-kit failed (compile phase): * emake failed * * If you need support, post the output of `emerge --info '=dev-lang/rust-1.54.0::lang-kit'`, * the complete build log and the output of `emerge -pqv '=dev-lang/rust-1.54.0::lang-kit'`. * The complete build log is located at '/var/tmp/portage/dev-lang/rust-1.54.0/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-lang/rust-1.54.0/temp/environment'. * Working directory: '/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10' * S: '/var/tmp/portage/dev-lang/rust-1.54.0/work/rustc-1.54.0-src' * Messages for package dev-lang/rust-1.54.0: * ERROR: dev-lang/rust-1.54.0::lang-kit failed (compile phase): * emake failed * * If you need support, post the output of `emerge --info '=dev-lang/rust-1.54.0::lang-kit'`, * the complete build log and the output of `emerge -pqv '=dev-lang/rust-1.54.0::lang-kit'`. * The complete build log is located at '/var/tmp/portage/dev-lang/rust-1.54.0/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-lang/rust-1.54.0/temp/environment'. * Working directory: '/var/tmp/portage/dev-lang/rust-1.54.0/work/mrustc-0.10' * S: '/var/tmp/portage/dev-lang/rust-1.54.0/work/rustc-1.54.0-src' real 9m46.928s user 147m26.761s sys 1m7.505s