From 30688c4a1e5c2ada212127b5768ed9c7a5b9870f Mon Sep 17 00:00:00 2001 From: cds-amal Date: Tue, 10 Mar 2026 18:17:30 -0400 Subject: [PATCH 01/15] feat(make): add self-documenting help target and modernize Makefile Add a 'make help' target with awk-based extraction of target descriptions. Also adds standalone 'fmt', 'clippy', 'stdlib-smir', 'build-info', and nightly administration targets. Uses the final Makefile structure: targets for golden file management, UI testing, and nightly lifecycle are included but depend on scripts added in later commits. --- Makefile | 210 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 186 insertions(+), 24 deletions(-) diff --git a/Makefile b/Makefile index eace0fc9..61d4f449 100644 --- a/Makefile +++ b/Makefile @@ -1,11 +1,31 @@ RELEASE_FLAG= -TOOLCHAIN_NAME='' +TOOLCHAIN_NAME= -default: build +.DEFAULT_GOAL := build +.PHONY: help +## Show this help message +help: + @echo "Available targets:" + @awk 'BEGIN {FS = ":.*"; printf "\nUsage:\n make \033[36m\033[0m\n"} \ + /^###/ {printf "\n\033[1m%s\033[0m\n", substr($$0, 5); next} \ + /^##/ {description=substr($$0, 4)} \ + /^[a-zA-Z0-9_-]+:/ { \ + if (description) { \ + printf " \033[36m%-18s\033[0m %s\n", $$1, description; \ + description = ""; \ + } \ + }' $(MAKEFILE_LIST) + +### Build + +.PHONY: build +## Build the project (use RELEASE_FLAG=--release for release) build: - cargo build ${RELEASE_FLAG} + cargo build $(RELEASE_FLAG) +.PHONY: clean +## Clean build artifacts, toolchain overrides, and graphs clean: rustup-clear-toolchain clean-graphs cargo clean @@ -13,45 +33,73 @@ clean: rustup-clear-toolchain clean-graphs rustup-clear-toolchain: rustup override unset rustup override unset --nonexistent - rustup toolchain uninstall "${TOOLCHAIN_NAME}" + rustup toolchain uninstall "$(TOOLCHAIN_NAME)" + +### Test TESTDIR=tests/integration/programs +# Detect the active nightly for golden-file lookup. +# The nightly name (e.g. nightly-2025-03-01) is derived from rustc's +# commit-date, which is one day before the nightly date. We add one day +# to align with the toolchain channel name that users actually see. +NIGHTLY_COMMIT_DATE := $(shell rustc -vV 2>/dev/null | awk '/^commit-date:/{print $$2}') +# Portable +1 day: macOS date(1) uses -v+1d, GNU date uses -d "+1 day". +NIGHTLY_DATE := $(shell \ + if [ -n "$(NIGHTLY_COMMIT_DATE)" ]; then \ + date -j -v+1d -f "%Y-%m-%d" "$(NIGHTLY_COMMIT_DATE)" "+%Y-%m-%d" 2>/dev/null \ + || date -d "$(NIGHTLY_COMMIT_DATE) +1 day" "+%Y-%m-%d" 2>/dev/null \ + || echo "$(NIGHTLY_COMMIT_DATE)"; \ + fi) +ACTIVE_NIGHTLY := nightly-$(NIGHTLY_DATE) + +# Golden file directory: per-nightly expected outputs. +# Falls back to the pinned nightly (from rust-toolchain.toml) if no +# directory exists for the active nightly. +PINNED_NIGHTLY := $(shell awk -F'"' '/^channel/{print $$2}' rust-toolchain.toml) +GOLDEN_BASE := tests/integration/expected +GOLDEN_DIR := $(shell \ + if [ -d "$(GOLDEN_BASE)/$(ACTIVE_NIGHTLY)" ]; then \ + echo "$(GOLDEN_BASE)/$(ACTIVE_NIGHTLY)"; \ + else \ + echo "$(GOLDEN_BASE)/$(PINNED_NIGHTLY)"; \ + fi) + .PHONY: integration-test integration-test: TESTS ?= $(shell find $(TESTDIR) -type f -name "*.rs") integration-test: SMIR ?= cargo run -- "-Zno-codegen" # override this to tweak how expectations are formatted -integration-test: NORMALIZE ?= jq -S -e -f $(TESTDIR)/../normalise-filter.jq +integration-test: FILTER ?= $(TESTDIR)/../normalise-filter.jq # override this to re-make golden files integration-test: DIFF ?= | diff - +## Run integration tests against expected outputs integration-test: + @echo "Using golden files from: $(GOLDEN_DIR)" errors=""; \ report() { echo "$$1: $$2"; errors="$$errors\n$$1: $$2"; }; \ - for rust in ${TESTS}; do \ + for rust in $(TESTS); do \ target=$${rust%.rs}.smir.json; \ + receipts=$${target%.json}.receipts.json; \ + name=$$(basename $${rust%.rs}); \ dir=$$(dirname $${rust}); \ + expected="$(GOLDEN_DIR)/$${name}.smir.json.expected"; \ echo "$$rust"; \ - ${SMIR} --out-dir $${dir} $${rust} || report "$$rust" "Conversion failed"; \ + $(SMIR) --out-dir $${dir} $${rust} || report "$$rust" "Conversion failed"; \ [ -f $${target} ] \ - && ${NORMALIZE} $${target} ${DIFF} $${target}.expected \ - && rm $${target} \ + && jq -S -e --slurpfile receipts $${receipts} -f $(FILTER) $${target} $(DIFF) $${expected} \ + && rm -f $${target} $${receipts} \ || report "$$rust" "Unexpected json output"; \ done; \ [ -z "$$errors" ] || (echo "===============\nFAILING TESTS:$$errors"; exit 1) - +.PHONY: golden +## Regenerate expected test outputs (golden files) for the active nightly golden: - make integration-test DIFF=">" - -format: - cargo fmt - bash -O globstar -c 'nixfmt **/*.nix' - -style-check: format - cargo clippy -- -Dwarnings - -.PHONY: remake-ui-tests test-ui + @mkdir -p "$(GOLDEN_BASE)/$(ACTIVE_NIGHTLY)" + $(MAKE) integration-test DIFF=">" GOLDEN_DIR="$(GOLDEN_BASE)/$(ACTIVE_NIGHTLY)" +.PHONY: remake-ui-tests +## Regenerate UI test fixtures (requires RUST_DIR_ROOT) remake-ui-tests: # Check if RUST_DIR_ROOT is set if [ -z "$$RUST_DIR_ROOT" ]; then \ @@ -61,20 +109,77 @@ remake-ui-tests: # This will run without saving source files. Run the script manually to do this. bash tests/ui/remake_ui_tests.sh "$$RUST_DIR_ROOT" +.PHONY: test-ui +## Run UI tests (requires RUST_DIR_ROOT, VERBOSE=1 for details) test-ui: VERBOSE?=0 test-ui: bash tests/ui/run_ui_tests.sh $(if $(filter 1,$(VERBOSE)),--verbose) "$$RUST_DIR_ROOT" -.PHONY: dot svg png d2 clean-graphs check-graphviz +.PHONY: test-directives +## Run unit tests for the directive parser (parse_test_directives.awk) +test-directives: + bash tests/ui/test_directives_test.sh + +.PHONY: test-ui-emit +## Generate effective UI test lists for a nightly (requires RUST_DIR_ROOT, NIGHTLY=nightly-YYYY-MM-DD) +test-ui-emit: + bash tests/ui/diff_test_lists.sh --emit "$$RUST_DIR_ROOT" $(NIGHTLY) + +### Nightly management + +.PHONY: nightly-add +## Add support for a new nightly (requires NIGHTLY, RUST_DIR_ROOT) +nightly-add: + @test -n "$$NIGHTLY" || { echo "Error: NIGHTLY not set (e.g., NIGHTLY=nightly-2025-08-01)"; exit 1; } + @test -n "$$RUST_DIR_ROOT" || { echo "Error: RUST_DIR_ROOT not set"; exit 1; } + python3 scripts/nightly_admin.py add "$$NIGHTLY" --rust-dir "$$RUST_DIR_ROOT" + +.PHONY: nightly-check +## Run all tests for a nightly (requires NIGHTLY, RUST_DIR_ROOT) +nightly-check: + @test -n "$$NIGHTLY" || { echo "Error: NIGHTLY not set"; exit 1; } + @test -n "$$RUST_DIR_ROOT" || { echo "Error: RUST_DIR_ROOT not set"; exit 1; } + python3 scripts/nightly_admin.py check "$$NIGHTLY" --rust-dir "$$RUST_DIR_ROOT" + +.PHONY: nightly-bump +## Bump the pinned nightly (requires NIGHTLY) +nightly-bump: + @test -n "$$NIGHTLY" || { echo "Error: NIGHTLY not set"; exit 1; } + python3 scripts/nightly_admin.py bump "$$NIGHTLY" + +### Diagnostics + +.PHONY: build-info +## Show build.rs cfg detection output (rustc commit-date, enabled flags) +build-info: + @touch build.rs + @cargo build -vv 2>&1 | grep '\] build\.rs:' + +### Code quality + +.PHONY: fmt format +## Format Rust and Nix source files +fmt format: + cargo fmt + bash -O globstar -c 'nixfmt **/*.nix' + +.PHONY: clippy +## Run clippy lint checks (deny warnings) +clippy: + cargo clippy -- -Dwarnings + +.PHONY: style-check +## Run format + clippy lint checks +style-check: format clippy + +### Graph generation OUTDIR_DOT=output-dot OUTDIR_SVG=output-svg OUTDIR_PNG=output-png OUTDIR_D2=output-d2 -clean-graphs: - @rm -rf $(OUTDIR_DOT) $(OUTDIR_SVG) $(OUTDIR_PNG) $(OUTDIR_D2) - +.PHONY: check-graphviz check-graphviz: @command -v dot >/dev/null 2>&1 || { \ echo "Error: Graphviz is not installed or 'dot' is not in PATH."; \ @@ -83,6 +188,8 @@ check-graphviz: exit 1; \ } +.PHONY: dot +## Generate DOT files from test programs dot: @mkdir -p $(OUTDIR_DOT) @for rs in $(TESTDIR)/*.rs; do \ @@ -92,6 +199,8 @@ dot: mv $$name.smir.dot $(OUTDIR_DOT)/ 2>/dev/null || true; \ done +.PHONY: svg +## Generate SVG files from DOT (requires graphviz) svg: check-graphviz dot @mkdir -p $(OUTDIR_SVG) @for dotfile in $(OUTDIR_DOT)/*.dot; do \ @@ -100,6 +209,8 @@ svg: check-graphviz dot dot -Tsvg $$dotfile -o $(OUTDIR_SVG)/$$name.svg; \ done +.PHONY: png +## Generate PNG files from DOT (requires graphviz) png: check-graphviz dot @mkdir -p $(OUTDIR_PNG) @for dotfile in $(OUTDIR_DOT)/*.dot; do \ @@ -108,6 +219,8 @@ png: check-graphviz dot dot -Tpng $$dotfile -o $(OUTDIR_PNG)/$$name.png; \ done +.PHONY: d2 +## Generate D2 diagram files from test programs d2: @mkdir -p $(OUTDIR_D2) @for rs in $(TESTDIR)/*.rs; do \ @@ -116,3 +229,52 @@ d2: cargo run --release -- --d2 -Zno-codegen $$rs 2>/dev/null; \ mv $$name.smir.d2 $(OUTDIR_D2)/ 2>/dev/null || true; \ done + +.PHONY: clean-graphs +## Remove generated graph output directories +clean-graphs: + @rm -rf $(OUTDIR_DOT) $(OUTDIR_SVG) $(OUTDIR_PNG) $(OUTDIR_D2) + +### stdlib smir.json + +STDLIB_OUTDIR=tests/stdlib-artifacts +STDLIB_TARGET=$(shell rustc --print target-triple 2>/dev/null || rustc -vV | grep host | awk '{print $$2}') +SYSROOT=$(shell rustc --print sysroot) +SMIR_BIN=$(CURDIR)/target/debug/stable_mir_json + +.PHONY: stdlib-smir +## Generate smir.json for stdlib via -Zbuild-std +stdlib-smir: build + @# Create a throwaway crate to drive -Zbuild-std + $(eval STDLIB_TMPDIR := $(shell mktemp -d)) + @echo '[package]' > $(STDLIB_TMPDIR)/Cargo.toml + @echo 'name = "stdlib-smir"' >> $(STDLIB_TMPDIR)/Cargo.toml + @echo 'version = "0.0.0"' >> $(STDLIB_TMPDIR)/Cargo.toml + @echo 'edition = "2021"' >> $(STDLIB_TMPDIR)/Cargo.toml + @echo '[[bin]]' >> $(STDLIB_TMPDIR)/Cargo.toml + @echo 'name = "stdlib-smir"' >> $(STDLIB_TMPDIR)/Cargo.toml + @echo 'path = "main.rs"' >> $(STDLIB_TMPDIR)/Cargo.toml + @echo 'fn main() {}' > $(STDLIB_TMPDIR)/main.rs + @# Build stdlib through our driver; set library path the same way + @# cargo does when it runs our binary via `cargo run` + cd $(STDLIB_TMPDIR) && \ + DYLD_LIBRARY_PATH=$(SYSROOT)/lib \ + LD_LIBRARY_PATH=$(SYSROOT)/lib \ + RUSTC=$(SMIR_BIN) \ + cargo build -Zbuild-std --target $(STDLIB_TARGET) + @# Collect artifacts, stripping hash suffixes from filenames + @rm -rf $(STDLIB_OUTDIR) + @mkdir -p $(STDLIB_OUTDIR) + @for f in $(STDLIB_TMPDIR)/target/$(STDLIB_TARGET)/debug/deps/*.smir.json; do \ + name=$$(basename "$$f" | sed 's/-[0-9a-f]*\.smir\.json/.smir.json/'); \ + case "$$name" in stdlib_smir*) continue ;; esac; \ + cp "$$f" $(STDLIB_OUTDIR)/$$name; \ + done + @rm -rf $(STDLIB_TMPDIR) + @echo "stdlib smir.json artifacts written to $(STDLIB_OUTDIR)/" + @ls -lhS $(STDLIB_OUTDIR)/ + +.PHONY: clean-stdlib-smir +## Remove stdlib smir.json artifacts +clean-stdlib-smir: + @rm -rf $(STDLIB_OUTDIR) From 38c9ae4122d14cb137824055db738b72a9edf769 Mon Sep 17 00:00:00 2001 From: cds-amal Date: Tue, 10 Mar 2026 18:17:43 -0400 Subject: [PATCH 02/15] fix(ty_visitor): catch rustc panics during layout computation Some types (e.g., dyn Trait in certain positions) cause rustc's layout computation to panic rather than returning an error. Wrap layout calls in catch_unwind so the type visitor can continue; panicked types are recorded and reported in a summary rather than crashing the whole run. --- src/printer/ty_visitor.rs | 63 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 59 insertions(+), 4 deletions(-) diff --git a/src/printer/ty_visitor.rs b/src/printer/ty_visitor.rs index bb375871..e2d5a802 100644 --- a/src/printer/ty_visitor.rs +++ b/src/printer/ty_visitor.rs @@ -13,6 +13,7 @@ use crate::compat::stable_mir; use std::collections::{HashMap, HashSet}; use std::ops::ControlFlow; +use std::panic::{catch_unwind, set_hook, take_hook, AssertUnwindSafe}; use stable_mir::mir::mono::Instance; use stable_mir::ty::{RigidTy, TyKind}; @@ -20,23 +21,77 @@ use stable_mir::visitor::{Visitable, Visitor}; use super::schema::TyMap; +/// A layout computation that panicked inside rustc. +pub(super) struct LayoutPanic { + pub ty: stable_mir::ty::Ty, + pub message: String, +} + +/// Attempt to get a type's layout, catching any rustc-internal panics. +/// +/// Some types (e.g., those involving `dyn Trait` in certain positions) cause +/// rustc's layout computation to panic rather than returning an error. We +/// catch those panics here so the visitor can continue; the caller gets +/// `Ok(Some(shape))` on success, `Ok(None)` when layout returns `Err`, or +/// `Err(message)` when rustc panicked. +fn try_layout_shape( + ty: &stable_mir::ty::Ty, +) -> Result, String> { + // Temporarily suppress the default panic hook so caught panics don't + // spray backtraces to stderr; we report them in our own summary. + let prev_hook = take_hook(); + set_hook(Box::new(|_| {})); + let result = catch_unwind(AssertUnwindSafe(|| ty.layout().ok().map(|l| l.shape()))); + set_hook(prev_hook); + + match result { + Ok(shape) => Ok(shape), + Err(payload) => { + let message = if let Some(s) = payload.downcast_ref::<&str>() { + (*s).to_string() + } else if let Some(s) = payload.downcast_ref::() { + s.clone() + } else { + "(non-string panic payload)".to_string() + }; + Err(message) + } + } +} + pub(super) struct TyCollector<'tcx> { tcx: TyCtxt<'tcx>, pub types: TyMap, + pub layout_panics: Vec, resolved: HashSet, } impl TyCollector<'_> { - pub fn new(tcx: TyCtxt<'_>) -> TyCollector { + pub fn new(tcx: TyCtxt<'_>) -> TyCollector<'_> { TyCollector { tcx, types: HashMap::new(), + layout_panics: Vec::new(), resolved: HashSet::new(), } } } impl TyCollector<'_> { + /// Get layout for `ty`, recording a [`LayoutPanic`] if rustc panics. + fn layout_shape_or_record( + &mut self, + ty: &stable_mir::ty::Ty, + ) -> Option { + match try_layout_shape(ty) { + Ok(shape) => shape, + Err(message) => { + self.layout_panics.push(LayoutPanic { ty: *ty, message }); + None + } + } + } + #[inline(always)] fn visit_instance(&mut self, instance: Instance) -> ControlFlow<::Break> { let fn_abi = instance.fn_abi().unwrap(); @@ -63,7 +118,7 @@ impl Visitor for TyCollector<'_> { let control = self.visit_instance(instance); // Mirror other branches: record closure Ty only when traversal succeeds. if matches!(control, ControlFlow::Continue(_)) { - let maybe_layout_shape = ty.layout().ok().map(|layout| layout.shape()); + let maybe_layout_shape = self.layout_shape_or_record(ty); self.types.insert(*ty, (ty.kind(), maybe_layout_shape)); } control @@ -97,7 +152,7 @@ impl Visitor for TyCollector<'_> { let control = ty.super_visit(self); if matches!(control, ControlFlow::Continue(_)) { - let maybe_layout_shape = ty.layout().ok().map(|layout| layout.shape()); + let maybe_layout_shape = self.layout_shape_or_record(ty); self.types.insert(*ty, (ty.kind(), maybe_layout_shape)); fields.super_visit(self) } else { @@ -108,7 +163,7 @@ impl Visitor for TyCollector<'_> { let control = ty.super_visit(self); match control { ControlFlow::Continue(_) => { - let maybe_layout_shape = ty.layout().ok().map(|layout| layout.shape()); + let maybe_layout_shape = self.layout_shape_or_record(ty); self.types.insert(*ty, (ty.kind(), maybe_layout_shape)); control } From 102122a6ab38ccd46df384b0431a27b3095861ed Mon Sep 17 00:00:00 2001 From: cds-amal Date: Tue, 10 Mar 2026 18:18:14 -0400 Subject: [PATCH 03/15] fix(cargo_stable_mir_json): derive toolchain lib path dynamically Instead of hardcoding the library path, resolve it from the active nightly toolchain at runtime. This avoids breakage when the toolchain directory name changes. --- src/bin/cargo_stable_mir_json.rs | 75 ++++++++++++++------------------ 1 file changed, 32 insertions(+), 43 deletions(-) diff --git a/src/bin/cargo_stable_mir_json.rs b/src/bin/cargo_stable_mir_json.rs index 2ab3c9cd..ce06000c 100644 --- a/src/bin/cargo_stable_mir_json.rs +++ b/src/bin/cargo_stable_mir_json.rs @@ -188,51 +188,40 @@ fn add_run_script(smir_json_dir: &Path, ld_library_path: &Path, profile: Profile Ok(()) } -fn record_ld_library_path(smir_json_dir: &Path) -> Result { - #[cfg(target_os = "macos")] - { - // macOS: Check DYLD_LIBRARY_PATH or use default path - if let Some(paths) = env::var_os("DYLD_LIBRARY_PATH") { - let mut ld_library_file = std::fs::File::create(smir_json_dir.join("ld_library_path"))?; - match paths.to_str() { - Some(ld_library_path) => { - writeln!(ld_library_file, "{}", ld_library_path)?; - Ok(ld_library_path.into()) - } - None => bail!("Couldn't cast DYLD_LIBRARY_PATH to str"), - } - } else { - // Use default macOS library path including Rust toolchain - let rustup_home = env::var("HOME").unwrap_or_else(|_| "/Users".to_string()); - let rust_toolchain_path = format!( - "{}/.rustup/toolchains/nightly-2024-11-29-aarch64-apple-darwin/lib", - rustup_home - ); - let default_path = format!("{}:/usr/local/lib:/usr/lib", rust_toolchain_path); - let mut ld_library_file = std::fs::File::create(smir_json_dir.join("ld_library_path"))?; - writeln!(ld_library_file, "{}", default_path)?; - Ok(default_path.into()) - } +/// Resolve the rustc toolchain lib path dynamically via `rustc --print sysroot`. +fn rustc_lib_path() -> Result { + let output = std::process::Command::new("rustc") + .args(["--print", "sysroot"]) + .output()?; + if !output.status.success() { + bail!("rustc --print sysroot failed"); } + let sysroot = String::from_utf8(output.stdout)?.trim().to_string(); + Ok(PathBuf::from(sysroot).join("lib")) +} - #[cfg(not(target_os = "macos"))] - { - // Linux and other systems: Check LD_LIBRARY_PATH - if let Some(paths) = env::var_os("LD_LIBRARY_PATH") { - let mut ld_library_file = std::fs::File::create(smir_json_dir.join("ld_library_path"))?; - match paths.to_str() { - Some(ld_library_path) => { - writeln!(ld_library_file, "{}", ld_library_path)?; - Ok(ld_library_path.into()) - } - None => bail!("Couldn't cast LD_LIBRARY_PATH to str"), - } +fn record_ld_library_path(smir_json_dir: &Path) -> Result { + // Prefer the environment variable if set; otherwise derive the path + // from the active rustc toolchain so the wrapper script stays in sync + // with whatever nightly rust-toolchain.toml selects. + let lib_path = { + #[cfg(target_os = "macos")] + let env_var = "DYLD_LIBRARY_PATH"; + #[cfg(not(target_os = "macos"))] + let env_var = "LD_LIBRARY_PATH"; + + if let Some(paths) = env::var_os(env_var) { + paths + .to_str() + .ok_or_else(|| anyhow::anyhow!("Couldn't cast {} to str", env_var))? + .to_string() } else { - // Use default Linux library path - let default_path = "/usr/local/lib:/usr/lib"; - let mut ld_library_file = std::fs::File::create(smir_json_dir.join("ld_library_path"))?; - writeln!(ld_library_file, "{}", default_path)?; - Ok(default_path.into()) + let toolchain_lib = rustc_lib_path()?; + format!("{}:/usr/local/lib:/usr/lib", toolchain_lib.display()) } - } + }; + + let mut ld_library_file = std::fs::File::create(smir_json_dir.join("ld_library_path"))?; + writeln!(ld_library_file, "{lib_path}")?; + Ok(lib_path.into()) } From 21a3dddd60357c38b1213422d56ddee3f3bd3b4f Mon Sep 17 00:00:00 2001 From: cds-amal Date: Tue, 10 Mar 2026 18:18:36 -0400 Subject: [PATCH 04/15] refactor: derive rustc commit from toolchain, inline format args Drop the [metadata] section from rust-toolchain.toml; the UI test scripts now derive the rustc commit hash directly from the nightly date via the Rust manifest. Also fixes clippy uninlined_format_args warnings. --- .github/workflows/test.yml | 75 +++++++++++++++++++++++++++------ rust-toolchain.toml | 6 --- src/printer/collect.rs | 10 +++++ src/printer/items.rs | 5 +-- src/printer/schema.rs | 5 +-- tests/ui/ensure_rustc_commit.sh | 42 +++++++++++------- 6 files changed, 103 insertions(+), 40 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 08f81b8c..4d208c79 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,10 +22,31 @@ jobs: ref: ${{ github.event.pull_request.head.sha }} submodules: recursive + - name: Install yq + run: | + set -euo pipefail + YQ_VERSION="v4.52.4" + mkdir -p "$HOME/.local/bin" + wget -qO "$HOME/.local/bin/yq" \ + "https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_linux_amd64" + chmod +x "$HOME/.local/bin/yq" + echo "$HOME/.local/bin" >> $GITHUB_PATH + + - name: 'Read nightly channel from rust-toolchain.toml' + id: toolchain-meta + run: | + set -euo pipefail + CHANNEL=$(yq -r '.toolchain.channel' rust-toolchain.toml) + if [ -z "$CHANNEL" ] || [ "$CHANNEL" = "null" ]; then + echo "::error::Could not read toolchain.channel from rust-toolchain.toml" + exit 1 + fi + echo "channel=$CHANNEL" >> "$GITHUB_OUTPUT" + - name: "Set up nightly Rust" # https://github.com/rust-lang/rustup/issues/3409 uses: dtolnay/rust-toolchain@master with: - toolchain: nightly-2024-11-29 # Hardcoded version, same as is in the build.rs + toolchain: ${{ steps.toolchain-meta.outputs.channel }} - name: 'Build stable-mir-json' # rustfmt documentation claims it is unstable on code that doesn't build run: | @@ -66,10 +87,31 @@ jobs: ref: ${{ github.event.pull_request.head.sha }} submodules: recursive + - name: Install yq + run: | + set -euo pipefail + YQ_VERSION="v4.52.4" + mkdir -p "$HOME/.local/bin" + wget -qO "$HOME/.local/bin/yq" \ + "https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_linux_amd64" + chmod +x "$HOME/.local/bin/yq" + echo "$HOME/.local/bin" >> $GITHUB_PATH + + - name: 'Read nightly channel from rust-toolchain.toml' + id: toolchain-meta + run: | + set -euo pipefail + CHANNEL=$(yq -r '.toolchain.channel' rust-toolchain.toml) + if [ -z "$CHANNEL" ] || [ "$CHANNEL" = "null" ]; then + echo "::error::Could not read toolchain.channel from rust-toolchain.toml" + exit 1 + fi + echo "channel=$CHANNEL" >> "$GITHUB_OUTPUT" + - name: "Set up nightly Rust" # https://github.com/rust-lang/rustup/issues/3409 uses: dtolnay/rust-toolchain@master with: - toolchain: nightly-2024-11-29 # Hardcoded version, same as is in the build.rs + toolchain: ${{ steps.toolchain-meta.outputs.channel }} - name: 'Build stable-mir-json' run: | # Warning check should be redundant since code-quality runs first @@ -108,16 +150,30 @@ jobs: "https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_linux_amd64" chmod +x "$HOME/.local/bin/yq" echo "$HOME/.local/bin" >> $GITHUB_PATH - yq --version + - name: 'Read nightly channel from rust-toolchain.toml' + id: toolchain-meta + run: | + set -euo pipefail + CHANNEL=$(yq -r '.toolchain.channel' rust-toolchain.toml) + if [ -z "$CHANNEL" ] || [ "$CHANNEL" = "null" ]; then + echo "::error::Could not read toolchain.channel from rust-toolchain.toml" + exit 1 + fi + echo "channel=$CHANNEL" >> "$GITHUB_OUTPUT" + + - name: "Set up nightly Rust" # https://github.com/rust-lang/rustup/issues/3409 + uses: dtolnay/rust-toolchain@master + with: + toolchain: ${{ steps.toolchain-meta.outputs.channel }} - - name: 'Read rustc commit from rust-toolchain.toml' + - name: 'Derive rustc commit and check out Rust repo' id: rustc-meta run: | set -euo pipefail - COMMIT=$(yq '.metadata.rustc-commit' rust-toolchain.toml) - if [ -z "$COMMIT" ] || [ "$COMMIT" = "null" ]; then - echo "::error::metadata.rustc-commit not found in rust-toolchain.toml" + COMMIT=$(rustc -vV | grep 'commit-hash' | cut -d' ' -f2) + if [ -z "$COMMIT" ]; then + echo "::error::Could not determine rustc commit-hash from 'rustc -vV'" exit 1 fi echo "rustc-commit=$COMMIT" >> "$GITHUB_OUTPUT" @@ -130,11 +186,6 @@ jobs: path: rust fetch-depth: 1 - - name: "Set up nightly Rust" # https://github.com/rust-lang/rustup/issues/3409 - uses: dtolnay/rust-toolchain@master - with: - toolchain: nightly-2024-11-29 # Hardcoded version, same as is in the build.rs - - name: 'Build stable-mir-json' run: | # Warning check should be redundant since code-quality runs first RUSTFLAGS='--deny warnings' cargo build -vv diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 9249d51a..06f099e1 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,9 +1,3 @@ [toolchain] channel = "nightly-2024-11-29" components = ["llvm-tools", "rustc-dev", "rust-src", "rust-analyzer"] - -# Ignored by rustup; used by our test scripts. -# This is the rustc commit that backs the nightly above. -# UI test scripts automatically checkout this commit in RUST_DIR_ROOT. -[metadata] -rustc-commit = "a2545fd6fc66b4323f555223a860c451885d1d2b" diff --git a/src/printer/collect.rs b/src/printer/collect.rs index c8089e6e..f44a8532 100644 --- a/src/printer/collect.rs +++ b/src/printer/collect.rs @@ -142,6 +142,16 @@ fn collect_and_analyze_items( all_items.push(item); } + if !ty_visitor.layout_panics.is_empty() { + eprintln!( + "warning: {} type layout(s) could not be computed (rustc panicked):", + ty_visitor.layout_panics.len() + ); + for panic in &ty_visitor.layout_panics { + eprintln!(" type {:?}: {}", panic.ty, panic.message); + } + } + ( CollectedCrate { items: all_items, diff --git a/src/printer/items.rs b/src/printer/items.rs index a253ad2c..884ab49d 100644 --- a/src/printer/items.rs +++ b/src/printer/items.rs @@ -101,8 +101,7 @@ pub(super) fn mk_item(tcx: TyCtxt<'_>, item: MonoItem, sym_name: String) -> (Mon Ok(alloc) => Some(alloc), err => { eprintln!( - "StaticDef({:#?}).eval_initializer() failed with: {:#?}", - static_def, err + "StaticDef({static_def:#?}).eval_initializer() failed with: {err:#?}" ); None } @@ -125,7 +124,7 @@ pub(super) fn mk_item(tcx: TyCtxt<'_>, item: MonoItem, sym_name: String) -> (Mon ) } MonoItem::GlobalAsm(ref asm) => { - let asm_str = format!("{:#?}", asm); + let asm_str = format!("{asm:#?}"); ( item, Item::new( diff --git a/src/printer/schema.rs b/src/printer/schema.rs index d75da9ba..18ccad06 100644 --- a/src/printer/schema.rs +++ b/src/printer/schema.rs @@ -118,11 +118,10 @@ impl AllocMap { assert!( missing_from_map.is_empty(), - "Alloc-id coherence violation: AllocIds {:?} are referenced in \ + "Alloc-id coherence violation: AllocIds {missing_from_map:?} are referenced in \ stored Item bodies but missing from the alloc map. This means \ the analysis phase collected allocations from a different body \ - than what is stored in the Items.", - missing_from_map + than what is stored in the Items." ); assert!( diff --git a/tests/ui/ensure_rustc_commit.sh b/tests/ui/ensure_rustc_commit.sh index 5054b341..e1b76cbc 100644 --- a/tests/ui/ensure_rustc_commit.sh +++ b/tests/ui/ensure_rustc_commit.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash # # Ensures a rust checkout (regular or bare+worktree) is at the commit -# specified in rust-toolchain.toml's [metadata] rustc-commit field. +# that backs the active nightly toolchain (derived from `rustc -vV`). # # Usage: source this script after setting RUST_DIR to the repo root. # It sets RUST_SRC_DIR to the directory containing the source files @@ -11,21 +11,11 @@ set -u : "${RUST_DIR:?RUST_DIR must be set before sourcing ensure_rustc_commit.sh}" -# Require yq (mikefarah/yq) for TOML parsing -if ! command -v yq &> /dev/null; then - echo "Error: yq is required but not installed." - echo "Install via: brew install yq | apt install yq | nix shell nixpkgs#yq-go" - echo "See: https://github.com/mikefarah/yq#install" - exit 1 -fi - -_SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) -_REPO_ROOT=$( cd -- "$_SCRIPT_DIR/../.." &> /dev/null && pwd ) - -# Read the expected rustc commit from rust-toolchain.toml -RUSTC_COMMIT=$(yq -r '.metadata.rustc-commit' "$_REPO_ROOT/rust-toolchain.toml") -if [ -z "$RUSTC_COMMIT" ] || [ "$RUSTC_COMMIT" = "null" ]; then - echo "Error: Could not read metadata.rustc-commit from $_REPO_ROOT/rust-toolchain.toml" +# Derive the rustc commit from the active toolchain; rust-toolchain.toml +# selects the nightly, so this stays in sync automatically. +RUSTC_COMMIT=$(rustc -vV | grep 'commit-hash' | cut -d' ' -f2) +if [ -z "$RUSTC_COMMIT" ]; then + echo "Error: Could not determine rustc commit-hash from 'rustc -vV'" exit 1 fi @@ -48,6 +38,16 @@ if [ "$IS_BARE" = "true" ]; then exit 1 fi else + # Ensure the commit is available locally; fetch if needed. + if ! git -C "$RUST_DIR" cat-file -e "$RUSTC_COMMIT" 2>/dev/null; then + echo "Commit ${SHORT_COMMIT} not found locally; fetching..." + git -C "$RUST_DIR" fetch origin "$RUSTC_COMMIT" --quiet 2>/dev/null || \ + git -C "$RUST_DIR" fetch origin --quiet || { + echo "Error: Could not fetch commit ${RUSTC_COMMIT}." + echo "Ensure ${RUST_DIR} is a clone of https://github.com/rust-lang/rust" + exit 1 + } + fi echo "Creating worktree at ${WORKTREE_DIR} for commit ${SHORT_COMMIT}..." git -C "$RUST_DIR" worktree add "$WORKTREE_DIR" "$RUSTC_COMMIT" --detach --quiet || { echo "Error: Failed to create worktree for commit ${RUSTC_COMMIT} in ${RUST_DIR}" @@ -59,6 +59,16 @@ else # Regular repo: checkout the commit directly CURRENT_COMMIT=$(git -C "$RUST_DIR" rev-parse HEAD 2>/dev/null) if [ "${CURRENT_COMMIT}" != "${RUSTC_COMMIT}" ]; then + # Ensure the commit is available locally; fetch if needed. + if ! git -C "$RUST_DIR" cat-file -e "$RUSTC_COMMIT" 2>/dev/null; then + echo "Commit ${SHORT_COMMIT} not found locally; fetching..." + git -C "$RUST_DIR" fetch origin "$RUSTC_COMMIT" --quiet 2>/dev/null || \ + git -C "$RUST_DIR" fetch origin --quiet || { + echo "Error: Could not fetch commit ${RUSTC_COMMIT}." + echo "Ensure ${RUST_DIR} is a clone of https://github.com/rust-lang/rust" + exit 1 + } + fi echo "Checking out rustc commit ${SHORT_COMMIT} in ${RUST_DIR}..." git -C "$RUST_DIR" checkout "$RUSTC_COMMIT" --quiet || { echo "Error: Failed to checkout commit ${RUSTC_COMMIT} in ${RUST_DIR}" From 182985542bb4ba1a8939daa677d24762b5c6c0a5 Mon Sep 17 00:00:00 2001 From: cds-amal Date: Tue, 10 Mar 2026 20:12:42 -0400 Subject: [PATCH 05/15] fix(make): revert integration-test to flat golden files for PR 1 The receipt-driven integration-test target requires receipts (PR 2) and per-nightly golden directories (PR 3). Revert to master's flat-file version so CI passes on the foundation PR. --- Makefile | 30 ++++++------------------------ 1 file changed, 6 insertions(+), 24 deletions(-) diff --git a/Makefile b/Makefile index 61d4f449..91d79a8c 100644 --- a/Makefile +++ b/Makefile @@ -53,50 +53,32 @@ NIGHTLY_DATE := $(shell \ fi) ACTIVE_NIGHTLY := nightly-$(NIGHTLY_DATE) -# Golden file directory: per-nightly expected outputs. -# Falls back to the pinned nightly (from rust-toolchain.toml) if no -# directory exists for the active nightly. -PINNED_NIGHTLY := $(shell awk -F'"' '/^channel/{print $$2}' rust-toolchain.toml) -GOLDEN_BASE := tests/integration/expected -GOLDEN_DIR := $(shell \ - if [ -d "$(GOLDEN_BASE)/$(ACTIVE_NIGHTLY)" ]; then \ - echo "$(GOLDEN_BASE)/$(ACTIVE_NIGHTLY)"; \ - else \ - echo "$(GOLDEN_BASE)/$(PINNED_NIGHTLY)"; \ - fi) - .PHONY: integration-test integration-test: TESTS ?= $(shell find $(TESTDIR) -type f -name "*.rs") integration-test: SMIR ?= cargo run -- "-Zno-codegen" # override this to tweak how expectations are formatted -integration-test: FILTER ?= $(TESTDIR)/../normalise-filter.jq +integration-test: NORMALIZE ?= jq -S -e -f $(TESTDIR)/../normalise-filter.jq # override this to re-make golden files integration-test: DIFF ?= | diff - ## Run integration tests against expected outputs integration-test: - @echo "Using golden files from: $(GOLDEN_DIR)" errors=""; \ report() { echo "$$1: $$2"; errors="$$errors\n$$1: $$2"; }; \ - for rust in $(TESTS); do \ + for rust in ${TESTS}; do \ target=$${rust%.rs}.smir.json; \ - receipts=$${target%.json}.receipts.json; \ - name=$$(basename $${rust%.rs}); \ dir=$$(dirname $${rust}); \ - expected="$(GOLDEN_DIR)/$${name}.smir.json.expected"; \ echo "$$rust"; \ - $(SMIR) --out-dir $${dir} $${rust} || report "$$rust" "Conversion failed"; \ + ${SMIR} --out-dir $${dir} $${rust} || report "$$rust" "Conversion failed"; \ [ -f $${target} ] \ - && jq -S -e --slurpfile receipts $${receipts} -f $(FILTER) $${target} $(DIFF) $${expected} \ - && rm -f $${target} $${receipts} \ + && ${NORMALIZE} $${target} ${DIFF} $${target}.expected \ + && rm $${target} \ || report "$$rust" "Unexpected json output"; \ done; \ [ -z "$$errors" ] || (echo "===============\nFAILING TESTS:$$errors"; exit 1) .PHONY: golden -## Regenerate expected test outputs (golden files) for the active nightly golden: - @mkdir -p "$(GOLDEN_BASE)/$(ACTIVE_NIGHTLY)" - $(MAKE) integration-test DIFF=">" GOLDEN_DIR="$(GOLDEN_BASE)/$(ACTIVE_NIGHTLY)" + make integration-test DIFF=">" .PHONY: remake-ui-tests ## Regenerate UI test fixtures (requires RUST_DIR_ROOT) From 4067da0b76a0c4d1cef3573e4c5c1706d340a074 Mon Sep 17 00:00:00 2001 From: cds-amal Date: Wed, 11 Mar 2026 15:06:47 -0400 Subject: [PATCH 06/15] fix(ty_visitor): drop global panic hook swap, keep catch_unwind TIL (thanks Copilot!), the previous approach temporarily replaced the process-wide panic hook with a no-op to suppress backtraces from caught layout panics. Turns out that's a thread-safety footgun: rustc's own worker threads could panic while the no-op hook is installed, silently swallowing unrelated diagnostics. The hook swap was also racy with anything else that calls set_hook concurrently. catch_unwind is what actually keeps the process alive; the hook swap was purely cosmetic (suppressing stderr noise). Dropped it entirely and accepted the default backtrace output for caught panics. The end-of-run LayoutPanic summary still reports everything it did before. My research surfaced a way to suppress the stderr noise that I decided was too much for a little noise, but I'm including here for completeness. Set teh hook once at startup (not per-call) to a hook that checks a thread-local flag: ```rust thread_local! { static SUPPRESS_PANIC_OUTPUT: Cell = const { Cell::new(false) }; } // Called once, e.g. in driver setup: std::panic::set_hook(Box::new(|info| { SUPPRESS_PANIC_OUTPUT.with(|flag| { if !flag.get() { eprintln!("{info}"); } }); })); // Then in try_layout_shape, just toggle the flag: SUPPRESS_PANIC_OUTPUT.with(|f| f.set(true)); let result = catch_unwind(AssertUnwindSafe(|| ty.layout()...)); SUPPRESS_PANIC_OUTPUT.with(|f| f.set(false)); This is thread-safe (thread-local, not global), no race conditions, no risk of swallowing other threads' panics, and our collected LayoutPanic report at teh end works exactly as before. --- src/printer/ty_visitor.rs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/printer/ty_visitor.rs b/src/printer/ty_visitor.rs index e2d5a802..d2735c49 100644 --- a/src/printer/ty_visitor.rs +++ b/src/printer/ty_visitor.rs @@ -13,7 +13,7 @@ use crate::compat::stable_mir; use std::collections::{HashMap, HashSet}; use std::ops::ControlFlow; -use std::panic::{catch_unwind, set_hook, take_hook, AssertUnwindSafe}; +use std::panic::{catch_unwind, AssertUnwindSafe}; use stable_mir::mir::mono::Instance; use stable_mir::ty::{RigidTy, TyKind}; @@ -37,12 +37,13 @@ pub(super) struct LayoutPanic { fn try_layout_shape( ty: &stable_mir::ty::Ty, ) -> Result, String> { - // Temporarily suppress the default panic hook so caught panics don't - // spray backtraces to stderr; we report them in our own summary. - let prev_hook = take_hook(); - set_hook(Box::new(|_| {})); + // catch_unwind keeps the process alive when rustc's layout engine panics + // (e.g. on certain `dyn Trait` types). The default panic hook will still + // print a backtrace to stderr for each caught panic; that's noisy but + // harmless, and avoids the thread-safety issues of swapping the global + // hook per-call. We collect the messages and report them in our own + // summary at the end. let result = catch_unwind(AssertUnwindSafe(|| ty.layout().ok().map(|l| l.shape()))); - set_hook(prev_hook); match result { Ok(shape) => Ok(shape), From 2b38837291331362e72bd2a610cb2309b4d3a06d Mon Sep 17 00:00:00 2001 From: cds-amal Date: Wed, 11 Mar 2026 15:06:53 -0400 Subject: [PATCH 07/15] fix(ensure_rustc_commit): resolve repo root before running rustc -vV If this script is sourced from a working directory outside the repo tree, rustup won't find rust-toolchain.toml and may select whatever default toolchain happens to be active, giving us the wrong commit hash. We now derive the repo root from BASH_SOURCE (two levels up from the script's own directory) and cd there before invoking rustc, so the toolchain selection stays correct regardless of the caller's CWD. --- tests/ui/ensure_rustc_commit.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/ui/ensure_rustc_commit.sh b/tests/ui/ensure_rustc_commit.sh index e1b76cbc..21f8e46f 100644 --- a/tests/ui/ensure_rustc_commit.sh +++ b/tests/ui/ensure_rustc_commit.sh @@ -13,7 +13,11 @@ set -u # Derive the rustc commit from the active toolchain; rust-toolchain.toml # selects the nightly, so this stays in sync automatically. -RUSTC_COMMIT=$(rustc -vV | grep 'commit-hash' | cut -d' ' -f2) +# Run from the repo root so rustup picks up rust-toolchain.toml even when +# the caller's CWD is outside the repository. +_SCRIPT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd) +_REPO_ROOT=$(cd -- "$_SCRIPT_DIR/../.." &>/dev/null && pwd) +RUSTC_COMMIT=$(cd "$_REPO_ROOT" && rustc -vV | grep 'commit-hash' | cut -d' ' -f2) if [ -z "$RUSTC_COMMIT" ]; then echo "Error: Could not determine rustc commit-hash from 'rustc -vV'" exit 1 From b1edcde66daff623f567beb6c345c3472d67a82e Mon Sep 17 00:00:00 2001 From: cds-amal Date: Wed, 11 Mar 2026 15:06:57 -0400 Subject: [PATCH 08/15] fix(make): guard toolchain uninstall on non-empty TOOLCHAIN_NAME TOOLCHAIN_NAME defaults to empty in the Makefile, which meant make clean would always run rustup toolchain uninstall "" and fail. Now we only attempt the uninstall when the variable is actually set. --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 91d79a8c..453f65ad 100644 --- a/Makefile +++ b/Makefile @@ -33,7 +33,7 @@ clean: rustup-clear-toolchain clean-graphs rustup-clear-toolchain: rustup override unset rustup override unset --nonexistent - rustup toolchain uninstall "$(TOOLCHAIN_NAME)" + if [ -n "$(TOOLCHAIN_NAME)" ]; then rustup toolchain uninstall "$(TOOLCHAIN_NAME)"; fi ### Test From 9f0fe12db3758e3ded1f6ade12129a7d52e2da6e Mon Sep 17 00:00:00 2001 From: cds-amal Date: Wed, 11 Mar 2026 15:07:03 -0400 Subject: [PATCH 09/15] fix(ci): verify yq checksum and DRY up install into shared script The workflow was downloading yq from GitHub releases without any integrity check (a supply-chain risk, however small, on CI runners). We now download the upstream checksums file alongside the binary and verify the SHA256 before installing. While we're at it, the identical 8-line install block was copy-pasted across all three jobs. Extracted into .github/scripts/install-yq.sh so there's exactly one place to update the version or change the verification logic. --- .github/scripts/install-yq.sh | 25 +++++++++++++++++++++++++ .github/workflows/test.yml | 27 +++------------------------ 2 files changed, 28 insertions(+), 24 deletions(-) create mode 100755 .github/scripts/install-yq.sh diff --git a/.github/scripts/install-yq.sh b/.github/scripts/install-yq.sh new file mode 100755 index 00000000..aa536f77 --- /dev/null +++ b/.github/scripts/install-yq.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash +# +# Installs yq (mikefarah/yq) into ~/.local/bin with SHA256 verification. +# Intended for CI runners (Linux amd64). + +set -euo pipefail + +YQ_VERSION="${YQ_VERSION:-v4.52.4}" +INSTALL_DIR="$HOME/.local/bin" +BASE_URL="https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}" + +mkdir -p "$INSTALL_DIR" + +wget -qO "$INSTALL_DIR/yq_linux_amd64" "${BASE_URL}/yq_linux_amd64" +wget -qO "$INSTALL_DIR/checksums" "${BASE_URL}/checksums" + +( + cd "$INSTALL_DIR" + grep 'yq_linux_amd64$' checksums | sha256sum -c - + mv yq_linux_amd64 yq + rm -f checksums + chmod +x yq +) + +echo "$INSTALL_DIR" >> "${GITHUB_PATH:-/dev/null}" diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4d208c79..cf425808 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -23,14 +23,7 @@ jobs: submodules: recursive - name: Install yq - run: | - set -euo pipefail - YQ_VERSION="v4.52.4" - mkdir -p "$HOME/.local/bin" - wget -qO "$HOME/.local/bin/yq" \ - "https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_linux_amd64" - chmod +x "$HOME/.local/bin/yq" - echo "$HOME/.local/bin" >> $GITHUB_PATH + run: .github/scripts/install-yq.sh - name: 'Read nightly channel from rust-toolchain.toml' id: toolchain-meta @@ -88,14 +81,7 @@ jobs: submodules: recursive - name: Install yq - run: | - set -euo pipefail - YQ_VERSION="v4.52.4" - mkdir -p "$HOME/.local/bin" - wget -qO "$HOME/.local/bin/yq" \ - "https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_linux_amd64" - chmod +x "$HOME/.local/bin/yq" - echo "$HOME/.local/bin" >> $GITHUB_PATH + run: .github/scripts/install-yq.sh - name: 'Read nightly channel from rust-toolchain.toml' id: toolchain-meta @@ -142,14 +128,7 @@ jobs: submodules: recursive - name: Install yq - run: | - set -euo pipefail - YQ_VERSION="v4.52.4" - mkdir -p "$HOME/.local/bin" - wget -qO "$HOME/.local/bin/yq" \ - "https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_linux_amd64" - chmod +x "$HOME/.local/bin/yq" - echo "$HOME/.local/bin" >> $GITHUB_PATH + run: .github/scripts/install-yq.sh - name: 'Read nightly channel from rust-toolchain.toml' id: toolchain-meta From cf679886c18c0b603097da63c9e494c23fc74121 Mon Sep 17 00:00:00 2001 From: cds-amal Date: Wed, 11 Mar 2026 15:30:30 -0400 Subject: [PATCH 10/15] fix(ci): use checksums-bsd for yq integrity verification The checksums file from mikefarah/yq uses a custom multi-hash-per-line format that isn't compatible with sha256sum -c (which expects GNU coreutils format). Switched to checksums-bsd, which uses the standard BSD-style "SHA256 (file) = hash" layout; a small sed converts that to GNU format for verification. --- .github/scripts/install-yq.sh | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/scripts/install-yq.sh b/.github/scripts/install-yq.sh index aa536f77..94d8b6a4 100755 --- a/.github/scripts/install-yq.sh +++ b/.github/scripts/install-yq.sh @@ -12,13 +12,19 @@ BASE_URL="https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}" mkdir -p "$INSTALL_DIR" wget -qO "$INSTALL_DIR/yq_linux_amd64" "${BASE_URL}/yq_linux_amd64" -wget -qO "$INSTALL_DIR/checksums" "${BASE_URL}/checksums" +wget -qO "$INSTALL_DIR/checksums-bsd" "${BASE_URL}/checksums-bsd" ( cd "$INSTALL_DIR" - grep 'yq_linux_amd64$' checksums | sha256sum -c - + # checksums-bsd uses BSD-style: SHA256 (yq_linux_amd64) = 0c4d965e... + # sha256sum -c expects GNU-style: 0c4d965e... yq_linux_amd64 + # sed captures the filename (\1) and hash (\2), discarding "SHA256 (", ") = ", + # then emits them in reversed order to match GNU format. + grep 'SHA256 (yq_linux_amd64)' checksums-bsd \ + | sed 's/SHA256 (\(.*\)) = \(.*\)/\2 \1/' \ + | sha256sum -c - mv yq_linux_amd64 yq - rm -f checksums + rm -f checksums-bsd chmod +x yq ) From 3a9432c5d219cb470793a2d4479676ef6b2b088e Mon Sep 17 00:00:00 2001 From: cds-amal Date: Tue, 10 Mar 2026 18:18:59 -0400 Subject: [PATCH 11/15] feat(printer): add interned-index receipt system Add a spy-based serialization pass that detects which JSON paths carry non-deterministic interned indices (Ty, Span, AllocId, etc.) and emits a companion *.smir.receipts.json alongside each *.smir.json output. The receipts declare three categories of interned indices: - interned_keys: object field names whose values are interned - interned_newtypes: enum variant wrappers around bare integers - interned_positions: known tuple positions carrying interned indices These receipts drive the normalise-filter.jq used for golden-file comparison, replacing the previous hardcoded normalization rules with a data-driven approach. See ADR-004 for the design rationale. --- docs/adr/004-interned-index-receipts.md | 167 ++++++ src/printer/mod.rs | 29 +- src/printer/receipts.rs | 680 ++++++++++++++++++++++++ 3 files changed, 872 insertions(+), 4 deletions(-) create mode 100644 docs/adr/004-interned-index-receipts.md create mode 100644 src/printer/receipts.rs diff --git a/docs/adr/004-interned-index-receipts.md b/docs/adr/004-interned-index-receipts.md new file mode 100644 index 00000000..23f72e70 --- /dev/null +++ b/docs/adr/004-interned-index-receipts.md @@ -0,0 +1,167 @@ +# ADR-004: Interned index receipts for golden-file normalization + +**Status:** Proposed +**Date:** 2026-03-10 + +## Context + +Integration test golden files compare serialized Stable MIR JSON across platforms +(macOS vs. Linux CI). Several values in the output are "interned indices": +compile-session-specific integers assigned by rustc's internal interning machinery +for types like `Ty`, `Span`, `AllocId`, `DefId`, and `AdtDef`. These indices are +consistent within a single rustc invocation but differ across platforms and across +runs; a `Ty` that interns as index 42 on macOS might be index 37 on Linux. + +The normalise filter (`normalise-filter.jq`) strips or zeroes these indices before +comparison. The trouble is that the filter has to independently know the JSON +schema: every time Stable MIR adds a new field or array position that carries an +interned index, the filter needs a corresponding rule. We've been discovering +these gaps exclusively through CI failures on the other platform; the feedback +loop is slow and the pattern is pure whack-a-mole. In the span of three commits, +we hit three distinct categories of missed interned index (bare `span` fields, +`{"Type": N}` newtype wrappers, and positional indices inside `Cast[2]` and +`Closure[0]` arrays). + +The root cause: the schema knowledge (which values are interned) lives in the +Rust type definitions, but the normalization rules live in a separate jq script +that has to reverse-engineer that knowledge from examples. There's no contract +between the producer (the printer) and the consumer (the normaliser) that says +"these are the interned paths." + +## Decision + +The printer emits a companion "receipts" file (`*.smir.receipts.json`) alongside +each `*.smir.json` output. The receipts file declares which JSON key names, +newtype wrappers, and array positions carry interned indices. The normalise filter +reads the receipts and applies them generically, rather than hardcoding per-field +rules. + +The receipts are generated dynamically by observing actual serde serialization +calls, not by a static list. This is the key property: if upstream adds a new `Ty` +field somewhere inside `Body` (which we don't control), the receipt generator +automatically detects it because serde's derive-generated code calls +`serialize_newtype_struct("Ty", ...)` for the new field, and our serialization +observer records it. + +### Receipt format + +```json +{ + "interned_keys": ["span", "ty", "def_id", "id", "alloc_id", "adt_def"], + "interned_newtypes": ["Type"], + "interned_positions": { + "Cast": [2], + "Closure": [0], + "VTable": [0], + "Adt": [0], + "Field": [1] + } +} +``` + +Three categories, mapping directly to the three normalization patterns the jq +filter needs: + +| Category | Meaning | jq action | +|----------|---------|-----------| +| `interned_keys` | Object field names whose values are interned indices | `del(.[$key])` or zero the value | +| `interned_newtypes` | Enum variant names that wrap a bare interned integer (e.g. `{"Type": 42}`) | `.[$name] = 0` when value is a number | +| `interned_positions` | Parent array name to list of positions carrying interned indices | `.[$name][$pos] = 0` | + +### How it works: the spy serializer + +The mechanism is a "spy" `serde::Serializer` implementation that mirrors the +structure of a real serializer but produces no output; it only tracks context +(which struct field, which array position, which enum variant we're currently +inside) and records findings. + +When the spy encounters a `serialize_newtype_struct` call whose type name matches +a known interned type (`Ty`, `Span`, `AllocId`, `DefId`, `AdtDef`, `CrateNum`, +`VariantIdx`), it examines the current context to classify the finding: + +- Inside a struct field named `"ty"` → `interned_keys` gets `"ty"` +- Inside an enum newtype variant named `"Type"` → `interned_newtypes` gets `"Type"` +- Inside a tuple variant named `"Cast"` at position 2 → `interned_positions["Cast"]` gets `2` + +The spy serializer runs as a separate pass before the real `serde_json` serialization. +This means we serialize twice, which is acceptable: the spy pass is cheap (no I/O, +no string formatting, just context tracking) and the SmirJson structure is +typically modest in size. The two passes are: + +1. `value.serialize(&mut SpySerializer::new(...))` — collect receipts +2. `serde_json::to_string(&value)` — produce the actual JSON + +### How the normaliser consumes receipts + +The normalise filter receives the receipts file via jq's `--slurpfile` mechanism: + +```shell +jq -S -e --slurpfile receipts input.smir.receipts.json \ + -f normalise-filter.jq input.smir.json +``` + +The items walk simplifies from a list of hardcoded rules to a generic application +of the receipt: + +```jq +# Before (hardcoded): +walk(if type == "object" then del(.ty) | del(.span) | del(.def_id) | del(.id) + | if .Field then .Field[1] = 0 else . end + | if .Type and (.Type | type) == "number" then .Type = 0 else . end + # ... more rules added with each CI failure ... + else . end) + +# After (receipt-driven): +walk(if type == "object" then + reduce ($receipts[0].interned_keys[]) as $k (.; del(.[$k])) + | reduce ($receipts[0].interned_newtypes[]) as $n (.; + if .[$n] and (.[$n] | type) == "number" then .[$n] = 0 else . end) + | reduce ($receipts[0].interned_positions | to_entries[]) as $e (.; + if .[$e.key] then + reduce ($e.value[]) as $p (.; .[$e.key][$p] = 0) + else . end) + else . end) +``` + +The normalise filter no longer needs to know about individual field names or +array positions. A new interned field upstream is automatically captured by the +receipts; the filter handles it without any change. + +## Consequences + +**What improves:** + +- The schema knowledge moves from the jq filter to the Rust code, right next to + the type definitions. The jq filter becomes a generic consumer. +- New interned fields in Body (which comes from stable_mir and whose structure we + don't control) are automatically detected via the spy serializer observing + serde's derive-generated code. +- The receipts file is itself a useful diagnostic artifact: it tells you exactly + which parts of the output carry non-deterministic values. + +**What stays the same:** + +- The top-level array handling in the normalise filter (stripping alloc_id from + the allocs array, removing the Ty key from the types array, etc.) is + structurally different from the walk-based normalization and remains as + explicit jq code. The receipts cover the Body tree where the whack-a-mole + problem lives; the top-level arrays are stable and few. +- Golden files still need regeneration when the normalise filter changes. The + receipts reduce how often the filter needs to change, but they don't eliminate + golden file churn entirely. + +**What to watch for:** + +- The spy serializer depends on stable_mir types using `#[derive(Serialize)]` with + standard newtype struct serialization. If a type switches to a custom Serialize + impl that doesn't call `serialize_newtype_struct`, the spy won't detect it. In + practice this is unlikely for the interned index types (they're all simple + newtypes around `usize`), but worth noting. +- The `INTERNED_TYPES` list (the set of type names the spy recognizes) is + maintained in Rust. If stable_mir adds a new interned newtype with a name not + in the list, it won't be detected. This is a small, infrequently-changing list + (currently 7 entries) and is trivial to update; it's also easy to validate by + comparing receipts across platforms. +- The receipts file adds one more output artifact per compilation. The Makefile + and test harness need to account for it (passing the receipts to jq, cleaning + up receipts files alongside JSON files). diff --git a/src/printer/mod.rs b/src/printer/mod.rs index f251e27f..efba326b 100644 --- a/src/printer/mod.rs +++ b/src/printer/mod.rs @@ -14,6 +14,7 @@ //! | [`mir_visitor`] | `BodyAnalyzer`: single-pass MIR body traversal collecting calls, allocs, types, spans | //! | [`ty_visitor`] | `TyCollector`: recursively collects reachable types with layout info (some special kinds are traversed but not stored) | //! | [`link_map`] | Function resolution map: type + instance kind to symbol name | +//! | [`receipts`] | Spy serializer that discovers interned-index locations; emits `*.smir.receipts.json` (see ADR-004) | //! | [`types`] | Type helpers and [`TypeMetadata`](schema::TypeMetadata) construction | //! | [`util`] | Name resolution, attribute queries, and small collection utilities | @@ -49,6 +50,7 @@ mod collect; mod items; mod link_map; mod mir_visitor; +pub(crate) mod receipts; mod schema; mod ty_visitor; mod types; @@ -61,19 +63,38 @@ pub use schema::{AllocInfo, FnSymType, Item, LinkMapKey, SmirJson, TypeMetadata} pub(crate) use util::hash; pub fn emit_smir(tcx: TyCtxt<'_>) { - let smir_json = - serde_json::to_string(&collect_smir(tcx)).expect("serde_json failed to write result"); + let collected = collect_smir(tcx); + + // Run the spy serializer to discover which JSON paths carry interned + // indices, then serialize the receipts alongside the main output. + let receipt = receipts::collect_receipts(&collected); + let receipt_json = + serde_json::to_string(&receipt).expect("serde_json failed to write receipts"); + + let smir_json = serde_json::to_string(&collected).expect("serde_json failed to write result"); match crate::compat::output::mir_output_path(tcx, "smir.json") { crate::compat::output::OutputDest::Stdout => { - write!(&io::stdout(), "{}", smir_json).expect("Failed to write smir.json"); + write!(&io::stdout(), "{smir_json}").expect("Failed to write smir.json"); + // Receipts go to stderr when main output goes to stdout, + // so they can be captured separately. + eprintln!("{receipt_json}"); } crate::compat::output::OutputDest::File(path) => { let mut b = io::BufWriter::new( File::create(&path) .unwrap_or_else(|e| panic!("Failed to create {}: {}", path.display(), e)), ); - write!(b, "{}", smir_json).expect("Failed to write smir.json"); + write!(b, "{smir_json}").expect("Failed to write smir.json"); + + // Write the receipts file alongside the JSON output: + // foo.smir.json → foo.smir.receipts.json + let receipts_path = path.with_extension("receipts.json"); + let mut rb = + io::BufWriter::new(File::create(&receipts_path).unwrap_or_else(|e| { + panic!("Failed to create {}: {}", receipts_path.display(), e) + })); + write!(rb, "{receipt_json}").expect("Failed to write receipts"); } } } diff --git a/src/printer/receipts.rs b/src/printer/receipts.rs new file mode 100644 index 00000000..fc31a141 --- /dev/null +++ b/src/printer/receipts.rs @@ -0,0 +1,680 @@ +//! Interned index receipt generation. +//! +//! Emits a companion `*.smir.receipts.json` alongside each `*.smir.json` that +//! declares which JSON paths carry non-deterministic interned indices (`Ty`, +//! `Span`, `AllocId`, etc.). See ADR-004 for the design rationale. +//! +//! The receipt is generated by a "spy" serde [`Serializer`] that mirrors the +//! structure of a real serializer but produces no output; it only tracks which +//! struct fields, enum variants, and array positions contain known interned +//! types. The spy runs as a separate pass before the real `serde_json` +//! serialization. + +use crate::compat::serde; + +use serde::ser::{self, Serialize}; +use serde::Serialize as SerializeDerive; +use std::cell::RefCell; +use std::collections::{BTreeMap, BTreeSet, HashSet}; +use std::fmt; +use std::rc::Rc; + +// ── Known interned type names ─────────────────────────────────────────────── +// +// These are the stable_mir newtype struct names whose `#[derive(Serialize)]` +// calls `serialize_newtype_struct("", &inner_usize)`. When the spy +// serializer sees one of these names, it records the enclosing context in +// the receipt. + +const INTERNED_TYPES: &[&str] = &["Ty", "Span", "AllocId", "DefId", "AdtDef", "CrateNum"]; + +// Interned key names that always need normalizing, regardless of whether +// the spy encounters them in a particular program's output. These fields +// carry interned indices used as cross-reference keys by downstream tools +// (joining AggregateKind::Adt in MIR bodies with type metadata entries, +// etc.), so they can't be dropped from the output itself; they're only +// stripped for golden-file comparison. +// +// The spy may miss them because (a) the program under test doesn't +// exercise the code path that produces them, or (b) the DefId is wrapped +// in a domain-specific newtype (TraitDef, StaticDef, ClosureDef) that's +// transparent in JSON but opaque to the spy's immediate-parent check. +const SEEDED_INTERNED_KEYS: &[&str] = &["def_id", "adt_def", "ty", "span", "id", "alloc_id"]; + +// Interned newtype wrappers that always need normalizing. On newer +// nightlies the serialize_index_impl! macro serializes interned types +// as bare integers, so the spy can't discover these dynamically. +const SEEDED_INTERNED_NEWTYPES: &[&str] = &["Type", "Array"]; + +// Interned positions that always need normalizing. +const SEEDED_INTERNED_POSITIONS: &[(&str, &[usize])] = &[ + ("Field", &[1]), + ("Cast", &[2]), + ("Closure", &[0]), + ("VTable", &[0]), + ("Adt", &[0]), +]; + +// ── Receipt output ────────────────────────────────────────────────────────── + +/// Schema-level receipt of where interned indices appear in the JSON output. +/// +/// Three categories, mapping to the three normalization patterns the jq filter +/// needs (see ADR-004 for the full mapping table). +#[derive(Debug, Clone, SerializeDerive)] +pub struct Receipts { + /// Object field names whose values are interned indices. + pub interned_keys: BTreeSet, + /// Enum variant / newtype names that wrap a bare interned integer. + pub interned_newtypes: BTreeSet, + /// Parent array name → positions within the array carrying interned indices. + pub interned_positions: BTreeMap>, +} + +// ── Tracker (mutable state) ───────────────────────────────────────────────── + +/// What kind of container we're currently inside. +#[derive(Debug, Clone)] +#[allow(dead_code)] // SeqElement's index is structurally meaningful even if unused in matching +enum ParentKind { + /// Serializing the value for a struct/map field with this key. + Field(String), + /// Serializing element N of a tuple variant / tuple struct with this name. + TupleEntry(String, usize), + /// Serializing the inner value of a newtype variant / newtype struct. + Newtype(String), + /// Serializing element N of a plain sequence (no named parent). + SeqElement(usize), + /// Top-level or unknown context. + Root, +} + +#[derive(Debug)] +struct Tracker { + /// Stack of enclosing contexts. The spy pushes on entry and pops on exit. + context: Vec, + /// The set of type names we recognize as interned. + interned_names: HashSet<&'static str>, + // Accumulated receipt data: + keys: BTreeSet, + newtypes: BTreeSet, + positions: BTreeMap>, +} + +impl Tracker { + fn new() -> Self { + let mut positions = BTreeMap::new(); + for (name, idxs) in SEEDED_INTERNED_POSITIONS { + positions + .entry(name.to_string()) + .or_insert_with(BTreeSet::new) + .extend(idxs.iter().copied()); + } + Self { + context: vec![ParentKind::Root], + interned_names: INTERNED_TYPES.iter().copied().collect(), + keys: SEEDED_INTERNED_KEYS.iter().map(|s| s.to_string()).collect(), + newtypes: SEEDED_INTERNED_NEWTYPES + .iter() + .map(|s| s.to_string()) + .collect(), + positions, + } + } + + /// Called when `serialize_newtype_struct` sees a known interned type. + /// + /// Looks at the immediate parent context to classify the finding. + /// Only struct fields, newtype wrappers, and tuple positions are + /// recorded; sequence elements and the root context are ignored + /// (the interned value is inside a collection, not directly + /// assignable to a named field). + fn record_interned(&mut self) { + let Some(frame) = self.context.last() else { + return; + }; + match frame { + ParentKind::Field(key) => { + self.keys.insert(key.clone()); + } + ParentKind::Newtype(name) => { + self.newtypes.insert(name.clone()); + } + ParentKind::TupleEntry(name, idx) => { + self.positions.entry(name.clone()).or_default().insert(*idx); + } + ParentKind::SeqElement(_) | ParentKind::Root => { + // Inside a sequence or at top level; the enclosing field + // is a collection, not a direct interned-index carrier. + } + } + } + + fn into_receipts(self) -> Receipts { + Receipts { + interned_keys: self.keys, + interned_newtypes: self.newtypes, + interned_positions: self.positions, + } + } +} + +type SharedTracker = Rc>; + +// ── Error type ────────────────────────────────────────────────────────────── + +/// The spy serializer never truly fails; this error type exists only to satisfy +/// serde's trait bounds. +#[derive(Debug)] +struct SpyError; + +impl fmt::Display for SpyError { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + f.write_str("spy serializer error (should never happen)") + } +} + +impl std::error::Error for SpyError {} + +impl ser::Error for SpyError { + fn custom(_msg: T) -> Self { + SpyError + } +} + +// ── Spy serializer ────────────────────────────────────────────────────────── + +struct SpySerializer { + tracker: SharedTracker, +} + +impl SpySerializer { + fn new(tracker: SharedTracker) -> Self { + Self { tracker } + } +} + +/// Compound serializer for sequences, tuples, structs, and maps. +/// +/// A single type handles all compound serde traits. The `parent` field +/// records the context that was pushed when the compound was opened; +/// `index` tracks the current element position for tuple/seq types. +struct SpyCompound { + tracker: SharedTracker, + /// Name of the enclosing construct (struct name, variant name, etc.) + name: String, + /// Current element index (for tuples and sequences). + index: usize, + /// Whether this is a struct-like compound (named fields) vs. tuple-like. + #[allow(dead_code)] // reserved for potential future use in context classification + is_struct: bool, +} + +impl SpyCompound { + fn new(tracker: SharedTracker, name: &str, is_struct: bool) -> Self { + Self { + tracker, + name: name.to_string(), + index: 0, + is_struct, + } + } +} + +// ── Serializer trait impl ─────────────────────────────────────────────────── + +macro_rules! spy_primitive { + ($method:ident, $ty:ty) => { + fn $method(self, _v: $ty) -> Result { + Ok(()) + } + }; +} + +impl ser::Serializer for SpySerializer { + type Ok = (); + type Error = SpyError; + type SerializeSeq = SpyCompound; + type SerializeTuple = SpyCompound; + type SerializeTupleStruct = SpyCompound; + type SerializeTupleVariant = SpyCompound; + type SerializeMap = SpyCompound; + type SerializeStruct = SpyCompound; + type SerializeStructVariant = SpyCompound; + + spy_primitive!(serialize_bool, bool); + spy_primitive!(serialize_i8, i8); + spy_primitive!(serialize_i16, i16); + spy_primitive!(serialize_i32, i32); + spy_primitive!(serialize_i64, i64); + spy_primitive!(serialize_u8, u8); + spy_primitive!(serialize_u16, u16); + spy_primitive!(serialize_u32, u32); + spy_primitive!(serialize_u64, u64); + spy_primitive!(serialize_f32, f32); + spy_primitive!(serialize_f64, f64); + spy_primitive!(serialize_char, char); + spy_primitive!(serialize_str, &str); + spy_primitive!(serialize_bytes, &[u8]); + + fn serialize_none(self) -> Result { + Ok(()) + } + + fn serialize_some(self, value: &T) -> Result { + value.serialize(SpySerializer::new(self.tracker)) + } + + fn serialize_unit(self) -> Result { + Ok(()) + } + + fn serialize_unit_struct(self, _name: &'static str) -> Result { + Ok(()) + } + + fn serialize_unit_variant( + self, + _name: &'static str, + _variant_index: u32, + _variant: &'static str, + ) -> Result { + Ok(()) + } + + fn serialize_newtype_struct( + self, + name: &'static str, + value: &T, + ) -> Result { + { + let tracker = self.tracker.borrow(); + if tracker.interned_names.contains(name) { + drop(tracker); + self.tracker.borrow_mut().record_interned(); + return Ok(()); + } + } + // Not an interned type; push context and recurse. + self.tracker + .borrow_mut() + .context + .push(ParentKind::Newtype(name.to_string())); + let result = value.serialize(SpySerializer::new(self.tracker.clone())); + self.tracker.borrow_mut().context.pop(); + result + } + + fn serialize_newtype_variant( + self, + _name: &'static str, + _variant_index: u32, + variant: &'static str, + value: &T, + ) -> Result { + self.tracker + .borrow_mut() + .context + .push(ParentKind::Newtype(variant.to_string())); + let result = value.serialize(SpySerializer::new(self.tracker.clone())); + self.tracker.borrow_mut().context.pop(); + result + } + + fn serialize_seq(self, _len: Option) -> Result { + Ok(SpyCompound::new(self.tracker, "", false)) + } + + fn serialize_tuple(self, _len: usize) -> Result { + Ok(SpyCompound::new(self.tracker, "", false)) + } + + fn serialize_tuple_struct( + self, + name: &'static str, + _len: usize, + ) -> Result { + // On newer nightlies (post-ThreadLocalIndex), interned types like + // Ty(usize, ThreadLocalIndex) serialize as tuple structs instead of + // newtype structs. Detect them the same way we detect newtypes. + { + let tracker = self.tracker.borrow(); + if tracker.interned_names.contains(name) { + drop(tracker); + self.tracker.borrow_mut().record_interned(); + // Return a compound that ignores its fields; we've already + // recorded the finding and don't need to recurse deeper. + return Ok(SpyCompound::new(self.tracker, "", false)); + } + } + Ok(SpyCompound::new(self.tracker, name, false)) + } + + fn serialize_tuple_variant( + self, + _name: &'static str, + _variant_index: u32, + variant: &'static str, + _len: usize, + ) -> Result { + Ok(SpyCompound::new(self.tracker, variant, false)) + } + + fn serialize_map(self, _len: Option) -> Result { + Ok(SpyCompound::new(self.tracker, "", true)) + } + + fn serialize_struct( + self, + _name: &'static str, + _len: usize, + ) -> Result { + Ok(SpyCompound::new(self.tracker, "", true)) + } + + fn serialize_struct_variant( + self, + _name: &'static str, + _variant_index: u32, + variant: &'static str, + _len: usize, + ) -> Result { + Ok(SpyCompound::new(self.tracker, variant, true)) + } +} + +// ── Compound trait impls ──────────────────────────────────────────────────── + +impl ser::SerializeSeq for SpyCompound { + type Ok = (); + type Error = SpyError; + + fn serialize_element(&mut self, value: &T) -> Result<(), Self::Error> { + self.tracker + .borrow_mut() + .context + .push(ParentKind::SeqElement(self.index)); + let result = value.serialize(SpySerializer::new(self.tracker.clone())); + self.tracker.borrow_mut().context.pop(); + self.index += 1; + result + } + + fn end(self) -> Result { + Ok(()) + } +} + +impl ser::SerializeTuple for SpyCompound { + type Ok = (); + type Error = SpyError; + + fn serialize_element(&mut self, value: &T) -> Result<(), Self::Error> { + let parent = if self.name.is_empty() { + ParentKind::SeqElement(self.index) + } else { + ParentKind::TupleEntry(self.name.clone(), self.index) + }; + self.tracker.borrow_mut().context.push(parent); + let result = value.serialize(SpySerializer::new(self.tracker.clone())); + self.tracker.borrow_mut().context.pop(); + self.index += 1; + result + } + + fn end(self) -> Result { + Ok(()) + } +} + +impl ser::SerializeTupleStruct for SpyCompound { + type Ok = (); + type Error = SpyError; + + fn serialize_field(&mut self, value: &T) -> Result<(), Self::Error> { + let parent = if self.name.is_empty() { + ParentKind::SeqElement(self.index) + } else { + ParentKind::TupleEntry(self.name.clone(), self.index) + }; + self.tracker.borrow_mut().context.push(parent); + let result = value.serialize(SpySerializer::new(self.tracker.clone())); + self.tracker.borrow_mut().context.pop(); + self.index += 1; + result + } + + fn end(self) -> Result { + Ok(()) + } +} + +impl ser::SerializeTupleVariant for SpyCompound { + type Ok = (); + type Error = SpyError; + + fn serialize_field(&mut self, value: &T) -> Result<(), Self::Error> { + self.tracker + .borrow_mut() + .context + .push(ParentKind::TupleEntry(self.name.clone(), self.index)); + let result = value.serialize(SpySerializer::new(self.tracker.clone())); + self.tracker.borrow_mut().context.pop(); + self.index += 1; + result + } + + fn end(self) -> Result { + Ok(()) + } +} + +impl ser::SerializeMap for SpyCompound { + type Ok = (); + type Error = SpyError; + + fn serialize_key(&mut self, _key: &T) -> Result<(), Self::Error> { + // We don't track map keys for now; they'd need to be captured as + // strings for the Field context, which requires serializing the key + // to a string. For SmirJson's purposes, all maps are HashMap + // and the keys aren't interned indices themselves. + Ok(()) + } + + fn serialize_value(&mut self, value: &T) -> Result<(), Self::Error> { + value.serialize(SpySerializer::new(self.tracker.clone())) + } + + fn end(self) -> Result { + Ok(()) + } +} + +impl ser::SerializeStruct for SpyCompound { + type Ok = (); + type Error = SpyError; + + fn serialize_field( + &mut self, + key: &'static str, + value: &T, + ) -> Result<(), Self::Error> { + self.tracker + .borrow_mut() + .context + .push(ParentKind::Field(key.to_string())); + let result = value.serialize(SpySerializer::new(self.tracker.clone())); + self.tracker.borrow_mut().context.pop(); + result + } + + fn end(self) -> Result { + Ok(()) + } +} + +impl ser::SerializeStructVariant for SpyCompound { + type Ok = (); + type Error = SpyError; + + fn serialize_field( + &mut self, + key: &'static str, + value: &T, + ) -> Result<(), Self::Error> { + self.tracker + .borrow_mut() + .context + .push(ParentKind::Field(key.to_string())); + let result = value.serialize(SpySerializer::new(self.tracker.clone())); + self.tracker.borrow_mut().context.pop(); + result + } + + fn end(self) -> Result { + Ok(()) + } +} + +// ── Public API ────────────────────────────────────────────────────────────── + +/// Serialize `value` through the spy serializer to discover which JSON paths +/// carry interned indices. Returns a [`Receipts`] describing the findings. +pub fn collect_receipts(value: &T) -> Receipts { + let tracker = Rc::new(RefCell::new(Tracker::new())); + // The spy serializer never fails (SpyError is unreachable in practice), + // but we handle it gracefully just in case. + let _ = value.serialize(SpySerializer::new(tracker.clone())); + let tracker = Rc::try_unwrap(tracker) + .expect("tracker should have a single owner after serialization") + .into_inner(); + tracker.into_receipts() +} + +#[cfg(test)] +mod tests { + use super::*; + + /// Minimal stand-in for a newtype that mimics stable_mir's Ty(usize). + #[derive(serde::Serialize)] + struct Ty(usize); + + /// Minimal stand-in for Span(usize). + #[derive(serde::Serialize)] + struct Span(usize); + + /// Minimal stand-in for AllocId(usize). + #[derive(serde::Serialize)] + struct AllocId(usize); + + /// An enum variant wrapping Ty, like stable_mir's GenericArgKind::Type. + #[derive(serde::Serialize)] + enum GenArg { + Type(Ty), + Const(u64), + } + + /// A tuple variant carrying a Ty at a known position, like Cast or Closure. + #[derive(serde::Serialize)] + enum Rvalue { + Cast(String, String, Ty), + Use(String), + } + + /// A struct with named fields containing interned types. + #[derive(serde::Serialize)] + struct Statement { + kind: String, + span: Span, + } + + #[derive(serde::Serialize)] + struct TestRoot { + items: Vec, + args: Vec, + rvalues: Vec, + alloc_id: AllocId, + } + + #[test] + fn discovers_interned_keys() { + let root = TestRoot { + items: vec![Statement { + kind: "Assign".into(), + span: Span(42), + }], + args: vec![GenArg::Type(Ty(7)), GenArg::Const(99)], + rvalues: vec![ + Rvalue::Cast("Unsize".into(), "op".into(), Ty(13)), + Rvalue::Use("x".into()), + ], + alloc_id: AllocId(5), + }; + + let receipts = collect_receipts(&root); + + // "span" should be in interned_keys (struct field) + assert!( + receipts.interned_keys.contains("span"), + "expected 'span' in interned_keys, got: {:?}", + receipts.interned_keys + ); + + // "alloc_id" should be in interned_keys (struct field) + assert!( + receipts.interned_keys.contains("alloc_id"), + "expected 'alloc_id' in interned_keys, got: {:?}", + receipts.interned_keys + ); + + // "Type" should be in interned_newtypes (enum newtype variant) + assert!( + receipts.interned_newtypes.contains("Type"), + "expected 'Type' in interned_newtypes, got: {:?}", + receipts.interned_newtypes + ); + + // Cast[2] should be in interned_positions + assert!( + receipts + .interned_positions + .get("Cast") + .map_or(false, |s| s.contains(&2)), + "expected Cast[2] in interned_positions, got: {:?}", + receipts.interned_positions + ); + + // Seeded values should always be present, even if the test type + // doesn't exercise the code paths that produce them. + for key in SEEDED_INTERNED_KEYS { + assert!( + receipts.interned_keys.contains(*key), + "expected seeded key '{}' in interned_keys, got: {:?}", + key, + receipts.interned_keys + ); + } + for nt in SEEDED_INTERNED_NEWTYPES { + assert!( + receipts.interned_newtypes.contains(*nt), + "expected seeded newtype '{}' in interned_newtypes, got: {:?}", + nt, + receipts.interned_newtypes + ); + } + for (name, idxs) in SEEDED_INTERNED_POSITIONS { + for idx in *idxs { + assert!( + receipts + .interned_positions + .get(*name) + .map_or(false, |s| s.contains(idx)), + "expected seeded position {}[{}] in interned_positions, got: {:?}", + name, + idx, + receipts.interned_positions + ); + } + } + } +} From c0c84c2747661838cb03e71ef8efeb29aed74c90 Mon Sep 17 00:00:00 2001 From: cds-amal Date: Thu, 12 Mar 2026 21:11:28 -0400 Subject: [PATCH 12/15] feat(build): add breakpoint detection framework and golden file infrastructure Add build.rs with a breakpoint table that detects the active rustc nightly's commit-date and emits cfg flags for stable MIR API changes. Add nightly_admin.py for managing nightly toolchains (add/check/bump). Update normalise-filter.jq for receipt-driven normalization. Add pr.md to .gitignore. --- .gitignore | 3 +- build.rs | 149 ++++++++ scripts/nightly_admin.py | 472 ++++++++++++++++++++++++++ tests/integration/normalise-filter.jq | 70 +++- 4 files changed, 679 insertions(+), 15 deletions(-) create mode 100644 build.rs create mode 100755 scripts/nightly_admin.py diff --git a/.gitignore b/.gitignore index 8e0c979c..76ba23f0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ target/ tests/ui/failing/* tests/ui/passing/* -tests/ui/debug/* \ No newline at end of file +tests/ui/debug/* +pr.md \ No newline at end of file diff --git a/build.rs b/build.rs new file mode 100644 index 00000000..177d616f --- /dev/null +++ b/build.rs @@ -0,0 +1,149 @@ +//! Build script: detect the active rustc nightly's commit-date and emit +//! `cargo:rustc-cfg` flags so that the rest of the crate can gate match +//! arms (and other code) on stable MIR API changes. +//! +//! The approach: run `rustc -vV`, parse `commit-date: YYYY-MM-DD`, and +//! compare against a table of known API breakpoints. ISO date strings +//! sort lexicographically, so `>=` comparison is correct. + +use std::process::Command; + +/// A single API breakpoint: the date at which the change landed, the +/// cfg flag to emit, and a human-readable description (for the table +/// below; not used at runtime beyond the cargo warning). +struct Breakpoint { + date: &'static str, + cfg: &'static str, + description: &'static str, +} + +/// Known stable MIR API breakpoints. +/// +/// Naming convention: +/// `smir_has_` for additions +/// `smir_no_` for removals +/// +/// Keep this table sorted by date. +const BREAKPOINTS: &[Breakpoint] = &[ + Breakpoint { + date: "2024-12-14", + cfg: "smir_has_coroutine_closure", + description: "AggregateKind::CoroutineClosure added", + }, + Breakpoint { + date: "2025-01-24", + cfg: "smir_has_run_compiler_fn", + description: "RunCompiler struct replaced by run_compiler() free function", + }, + Breakpoint { + date: "2025-01-27", + cfg: "smir_has_named_mono_item_partitions", + description: "MonoItemPartitions changed from tuple to named fields", + }, + Breakpoint { + date: "2025-01-28", + cfg: "smir_has_raw_ptr_kind", + description: "Rvalue::AddressOf changed from Mutability to RawPtrKind", + }, + Breakpoint { + date: "2025-07-04", + cfg: "smir_no_indexed_val", + description: "IndexedVal trait became pub(crate), to_index()/to_val() unavailable", + }, + Breakpoint { + date: "2025-07-07", + cfg: "smir_rustc_internal_moved", + description: "rustc_internal::{internal,stable,run} moved from rustc_smir to stable_mir", + }, + Breakpoint { + date: "2025-07-10", + cfg: "smir_has_global_alloc_typeid", + description: "GlobalAlloc::TypeId { ty } variant added", + }, + Breakpoint { + date: "2025-07-14", + cfg: "smir_crate_renamed", + description: "stable_mir -> rustc_public, rustc_smir -> rustc_public_bridge", + }, + Breakpoint { + date: "2025-07-25", + cfg: "smir_no_coroutine_movability", + description: "Movability removed from RigidTy::Coroutine and AggregateKind::Coroutine", + }, + Breakpoint { + date: "2025-09-18", + cfg: "smir_no_dyn_kind", + description: "DynKind removed from TyKind::Dynamic (3 fields to 2)", + }, + Breakpoint { + date: "2025-10-02", + cfg: "smir_no_projection_subtype", + description: "ProjectionElem::Subtype moved to CastKind::Subtype", + }, + Breakpoint { + date: "2025-10-11", + cfg: "smir_no_deinit", + description: "StatementKind::Deinit removed", + }, + Breakpoint { + date: "2025-11-18", + cfg: "smir_no_nullop_offsetof", + description: "NullOp::OffsetOf removed, NullaryOp loses Ty field", + }, + Breakpoint { + date: "2025-12-05", + cfg: "smir_has_reify_fn_pointer_safety", + description: "PointerCoercion::ReifyFnPointer gains Safety field", + }, + Breakpoint { + date: "2025-12-13", + cfg: "smir_no_filename_display_pref", + description: + "FileNameDisplayPreference became private; display() takes RemapPathScopeComponents", + }, + Breakpoint { + date: "2025-12-22", + cfg: "smir_no_nullary_op", + description: "Rvalue::NullaryOp and NullOp enum removed entirely", + }, +]; + +fn main() { + // Re-run when the toolchain changes. + println!("cargo:rerun-if-env-changed=RUSTUP_TOOLCHAIN"); + println!("cargo:rerun-if-changed=rust-toolchain.toml"); + + let commit_date = detect_commit_date(); + eprintln!("build.rs: rustc commit-date: {commit_date}"); + + for bp in BREAKPOINTS { + // Unconditionally declare the cfg so that rustc doesn't warn about + // `unexpected_cfgs` on nightlies where the flag isn't active. + println!("cargo:rustc-check-cfg=cfg({})", bp.cfg); + + if commit_date.as_str() >= bp.date { + println!("cargo:rustc-cfg={}", bp.cfg); + eprintln!( + "build.rs: enabled cfg `{}` (>= {}): {}", + bp.cfg, bp.date, bp.description + ); + } + } +} + +/// Run `rustc -vV` and extract the `commit-date` field. +fn detect_commit_date() -> String { + let output = Command::new("rustc") + .args(["-vV"]) + .output() + .expect("failed to run `rustc -vV`"); + + let stdout = String::from_utf8(output.stdout).expect("rustc -vV produced non-UTF-8 output"); + + stdout + .lines() + .find_map(|line| line.strip_prefix("commit-date: ")) + .expect("rustc -vV output missing `commit-date` field") + .trim() + .to_string() +} diff --git a/scripts/nightly_admin.py b/scripts/nightly_admin.py new file mode 100755 index 00000000..464ef87c --- /dev/null +++ b/scripts/nightly_admin.py @@ -0,0 +1,472 @@ +#!/usr/bin/env python3 +"""Manage nightly toolchains for stable-mir-json. + +Formalizes the manual workflow for adding, checking, and bumping nightly +toolchains into three composable subcommands. Each step that was previously +a sequence of shell commands and file edits is now a single invocation. + +Usage: + python3 scripts/nightly_admin.py add nightly-YYYY-MM-DD --rust-dir /path/to/rust + python3 scripts/nightly_admin.py check nightly-YYYY-MM-DD --rust-dir /path/to/rust + python3 scripts/nightly_admin.py bump nightly-YYYY-MM-DD +""" + +from __future__ import annotations + +import argparse +import dataclasses +import os +import re +import shutil +import subprocess +import sys +from pathlib import Path + +# --------------------------------------------------------------------------- +# Constants +# --------------------------------------------------------------------------- + +REPO_ROOT = Path(__file__).resolve().parent.parent +RUST_TOOLCHAIN_TOML = REPO_ROOT / "rust-toolchain.toml" +README_MD = REPO_ROOT / "README.md" +DIFF_SCRIPT = REPO_ROOT / "tests" / "ui" / "diff_test_lists.sh" +GOLDEN_BASE = REPO_ROOT / "tests" / "integration" / "expected" +OVERRIDE_BASE = REPO_ROOT / "tests" / "ui" / "overrides" +MAKEFILE = REPO_ROOT / "Makefile" + +NIGHTLY_RE = re.compile(r"^nightly-(\d{4})-(\d{2})-(\d{2})$") +COMPONENTS = ["llvm-tools", "rustc-dev", "rust-src", "rust-analyzer"] + + +# --------------------------------------------------------------------------- +# Data model +# --------------------------------------------------------------------------- + +@dataclasses.dataclass(frozen=True) +class NightlySpec: + """A validated nightly toolchain identifier with derived paths.""" + + channel: str # e.g. "nightly-2025-08-01" + date: str # e.g. "2025-08-01" + + @property + def golden_dir(self) -> Path: + return GOLDEN_BASE / self.channel + + @property + def override_dir(self) -> Path: + return OVERRIDE_BASE / self.channel + + @property + def override_tsv(self) -> Path: + return OVERRIDE_BASE / f"{self.channel}.tsv" + + +# --------------------------------------------------------------------------- +# Utilities +# --------------------------------------------------------------------------- + +def log(msg: str) -> None: + print(f" {msg}", flush=True) + + +def log_step(msg: str) -> None: + print(f"\n>> {msg}", flush=True) + + +def log_warn(msg: str) -> None: + print(f" WARNING: {msg}", file=sys.stderr, flush=True) + + +def die(msg: str) -> None: + print(f"Error: {msg}", file=sys.stderr) + sys.exit(1) + + +def validate_nightly(raw: str) -> NightlySpec: + """Parse and validate a nightly channel string.""" + m = NIGHTLY_RE.match(raw) + if not m: + die(f"invalid nightly format: {raw!r} (expected nightly-YYYY-MM-DD)") + date = f"{m.group(1)}-{m.group(2)}-{m.group(3)}" + return NightlySpec(channel=raw, date=date) + + +def run( + cmd: list[str], + *, + check: bool = True, + capture: bool = False, + env: dict[str, str] | None = None, + cwd: Path | None = None, +) -> subprocess.CompletedProcess[str]: + """Run a subprocess, forwarding output unless capture is requested.""" + merged_env = {**os.environ, **(env or {})} + kwargs: dict = dict( + cwd=cwd or REPO_ROOT, + env=merged_env, + ) + if capture: + kwargs["stdout"] = subprocess.PIPE + kwargs["stderr"] = subprocess.PIPE + kwargs["text"] = True + result = subprocess.run(cmd, **kwargs) + if check and result.returncode != 0: + die(f"command failed (exit {result.returncode}): {' '.join(cmd)}") + return result + + +def toolchain_env(nightly: str) -> dict[str, str]: + """Return env dict that forces a specific toolchain.""" + return {"RUSTUP_TOOLCHAIN": nightly} + + +def read_file(path: Path) -> str: + return path.read_text(encoding="utf-8") + + +def write_file(path: Path, content: str) -> None: + path.write_text(content, encoding="utf-8") + + +def count_lines(path: Path) -> int: + """Count non-empty, non-comment lines in a TSV file.""" + if not path.exists(): + return 0 + return sum( + 1 for line in path.read_text().splitlines() + if line.strip() and not line.startswith("#") + ) + + +def current_pin() -> str: + """Read the currently pinned nightly from rust-toolchain.toml.""" + content = read_file(RUST_TOOLCHAIN_TOML) + m = re.search(r'channel\s*=\s*"([^"]+)"', content) + if not m: + die("could not parse channel from rust-toolchain.toml") + return m.group(1) + + +# --------------------------------------------------------------------------- +# DEFAULT_NIGHTLIES management +# --------------------------------------------------------------------------- + +def read_default_nightlies() -> list[str]: + """Parse DEFAULT_NIGHTLIES from diff_test_lists.sh.""" + content = read_file(DIFF_SCRIPT) + m = re.search(r'DEFAULT_NIGHTLIES="([^"]*)"', content) + if not m: + die("could not parse DEFAULT_NIGHTLIES from diff_test_lists.sh") + return m.group(1).split() + + +def write_default_nightlies(nightlies: list[str]) -> None: + """Rewrite the DEFAULT_NIGHTLIES line, keeping sorted order.""" + content = read_file(DIFF_SCRIPT) + sorted_list = sorted(nightlies) + new_line = f'DEFAULT_NIGHTLIES="{" ".join(sorted_list)}"' + updated = re.sub(r'DEFAULT_NIGHTLIES="[^"]*"', new_line, content) + write_file(DIFF_SCRIPT, updated) + + +# --------------------------------------------------------------------------- +# Override TSV management +# --------------------------------------------------------------------------- + +def find_most_recent_override_tsv(before: NightlySpec) -> Path | None: + """Find the most recent override .tsv file with a date before `before`.""" + candidates: list[tuple[str, Path]] = [] + for f in OVERRIDE_BASE.glob("nightly-*.tsv"): + if f.is_file() and NIGHTLY_RE.match(f.stem): + m = NIGHTLY_RE.match(f.stem) + if m: + fdate = f"{m.group(1)}-{m.group(2)}-{m.group(3)}" + if fdate < before.date: + candidates.append((fdate, f)) + if not candidates: + return None + candidates.sort(key=lambda x: x[0]) + return candidates[-1][1] + + +def create_override_tsv(spec: NightlySpec) -> Path: + """Create an override .tsv for the given nightly, templated from the most + recent existing one.""" + if spec.override_tsv.exists(): + log(f"override TSV already exists: {spec.override_tsv.relative_to(REPO_ROOT)}") + return spec.override_tsv + + template = find_most_recent_override_tsv(spec) + if template is not None: + content = read_file(template) + # Update the header comment's nightly reference + old_nightly = template.stem + content = content.replace(old_nightly, spec.channel, 1) + write_file(spec.override_tsv, content) + log(f"created override TSV (from {template.name})") + else: + header = ( + f"# Manual overrides for {spec.channel}\n" + f"# Format: actionpath[extra]\n" + f"#\n" + f"# Actions:\n" + f"# - remove from passing list\n" + f"# + add to passing list\n" + f"# skip remove from passing list (alias for -)\n" + f"# fail move to failing list (extra = expected exit code)\n" + f"# pass move from failing to passing list\n" + ) + write_file(spec.override_tsv, header) + log("created skeleton override TSV (no prior template found)") + + return spec.override_tsv + + +# --------------------------------------------------------------------------- +# Subcommand: add +# --------------------------------------------------------------------------- + +def cmd_add(args: argparse.Namespace) -> None: + """Add support for a new nightly toolchain.""" + spec = validate_nightly(args.nightly) + rust_dir = Path(args.rust_dir).resolve() + if not rust_dir.is_dir(): + die(f"RUST_DIR_ROOT is not a directory: {rust_dir}") + + print(f"Adding nightly: {spec.channel}") + env = toolchain_env(spec.channel) + + # 1. Install toolchain + log_step("Installing toolchain") + install_cmd = ["rustup", "toolchain", "install", spec.channel] + run(install_cmd) + run(["rustup", "component", "add", *COMPONENTS, "--toolchain", spec.channel]) + + # 2. Build + if not args.skip_build: + log_step("Building with target toolchain") + result = run(["cargo", "build"], env=env, check=False) + if result.returncode != 0: + die( + "build failed; you may need to:\n" + " - Add compat code in src/printer/ or src/mk_graph/\n" + " - Add a new breakpoint in build.rs\n" + " - See docs/nightly-compat.md for the full playbook" + ) + + # 3. Generate golden files + log_step("Generating integration test golden files") + if spec.golden_dir.exists() and not args.force: + log(f"golden files already exist: {spec.golden_dir.relative_to(REPO_ROOT)}") + else: + spec.golden_dir.mkdir(parents=True, exist_ok=True) + run(["make", "golden"], env=env) + n_golden = len(list(spec.golden_dir.glob("*.expected"))) + log(f"{n_golden} golden files in {spec.golden_dir.relative_to(REPO_ROOT)}") + + # 4. Generate UI test effective lists + if not args.skip_ui: + log_step("Generating UI test effective lists") + run( + ["make", "test-ui-emit"], + env={**env, "RUST_DIR_ROOT": str(rust_dir), "NIGHTLY": spec.channel}, + ) + n_pass = count_lines(spec.override_dir / "passing.tsv") + n_fail = count_lines(spec.override_dir / "failing.tsv") + log(f"effective lists: {n_pass} passing, {n_fail} failing") + + # 5. Create override TSV + log_step("Creating override TSV") + create_override_tsv(spec) + + # 6. Add to DEFAULT_NIGHTLIES + log_step("Updating DEFAULT_NIGHTLIES") + nightlies = read_default_nightlies() + if spec.channel in nightlies: + log("already in DEFAULT_NIGHTLIES") + else: + nightlies.append(spec.channel) + write_default_nightlies(nightlies) + log(f"added {spec.channel} to DEFAULT_NIGHTLIES") + + # 7. Report + print(f"\nDone. Next steps:") + print(f" - Review {spec.override_tsv.relative_to(REPO_ROOT)} for accuracy") + print(f" - Run: python3 scripts/nightly_admin.py check {spec.channel} --rust-dir {rust_dir}") + + +# --------------------------------------------------------------------------- +# Subcommand: check +# --------------------------------------------------------------------------- + +def cmd_check(args: argparse.Namespace) -> None: + """Run all tests for a nightly toolchain.""" + spec = validate_nightly(args.nightly) + rust_dir = Path(args.rust_dir).resolve() + if not rust_dir.is_dir(): + die(f"RUST_DIR_ROOT is not a directory: {rust_dir}") + + print(f"Checking nightly: {spec.channel}") + env = toolchain_env(spec.channel) + + # Pre-flight + if not spec.golden_dir.exists(): + die( + f"no golden files for {spec.channel}; run " + f"'python3 scripts/nightly_admin.py add {spec.channel} --rust-dir {rust_dir}' first" + ) + + results: list[tuple[str, bool]] = [] + + # 1. Build + if not args.skip_build: + log_step("Build") + r = run(["cargo", "build"], env=env, check=False) + results.append(("Build", r.returncode == 0)) + if r.returncode != 0: + log("FAIL") + else: + log("PASS") + + # 2. Integration tests + log_step("Integration tests") + r = run(["make", "integration-test"], env=env, check=False) + results.append(("Integration tests", r.returncode == 0)) + log("PASS" if r.returncode == 0 else "FAIL") + + # 3. UI tests + if spec.override_dir.exists(): + log_step("UI tests") + r = run( + ["make", "test-ui"], + env={**env, "RUST_DIR_ROOT": str(rust_dir)}, + check=False, + ) + results.append(("UI tests", r.returncode == 0)) + log("PASS" if r.returncode == 0 else "FAIL") + else: + log_step("UI tests (skipped: no effective lists)") + results.append(("UI tests", True)) + + # 4. Directive parser tests + log_step("Directive parser tests") + r = run(["make", "test-directives"], check=False) + results.append(("Directive tests", r.returncode == 0)) + log("PASS" if r.returncode == 0 else "FAIL") + + # Summary + print(f"\n{'=' * 40}") + print(f"Nightly check: {spec.channel}\n") + all_pass = True + for name, passed in results: + status = "PASS" if passed else "FAIL" + print(f" {name:<25} {status}") + if not passed: + all_pass = False + print(f"\nOverall: {'PASS' if all_pass else 'FAIL'}") + sys.exit(0 if all_pass else 1) + + +# --------------------------------------------------------------------------- +# Subcommand: bump +# --------------------------------------------------------------------------- + +def cmd_bump(args: argparse.Namespace) -> None: + """Bump the pinned nightly in rust-toolchain.toml and README.md.""" + spec = validate_nightly(args.nightly) + old_pin = current_pin() + + print(f"Bumping pinned nightly: {old_pin} -> {spec.channel}") + + warnings: list[str] = [] + if not spec.golden_dir.exists(): + warnings.append( + f"no golden files for {spec.channel}; " + f"run 'python3 scripts/nightly_admin.py add {spec.channel} ...' first" + ) + if not spec.override_dir.exists(): + warnings.append( + f"no UI test effective lists for {spec.channel}; " + f"run 'python3 scripts/nightly_admin.py add {spec.channel} ...' first" + ) + if spec.channel < old_pin: + warnings.append( + f"target nightly {spec.channel} is older than current pin {old_pin}" + ) + + for w in warnings: + log_warn(w) + + if args.dry_run: + print("\nDry run; no files modified.") + return + + # Update rust-toolchain.toml + content = read_file(RUST_TOOLCHAIN_TOML) + updated = re.sub(r'channel\s*=\s*"[^"]*"', f'channel = "{spec.channel}"', content) + write_file(RUST_TOOLCHAIN_TOML, updated) + log(f"updated rust-toolchain.toml: {old_pin} -> {spec.channel}") + + # Update README.md + readme = read_file(README_MD) + new_readme = re.sub( + r"Pinned nightly: `[^`]*`", + f"Pinned nightly: `{spec.channel}`", + readme, + ) + new_readme = re.sub( + r"through `[^`]*`", + f"through `{spec.channel}`", + new_readme, + ) + if new_readme == readme: + log_warn("README.md pinned nightly callout not found; manual update needed") + else: + write_file(README_MD, new_readme) + log(f"updated README.md pinned nightly and supported range") + + # Report + print(f"\nDone. Next steps:") + print(f" - Run: cargo build") + print(f" - Run: python3 scripts/nightly_admin.py check {spec.channel} --rust-dir ...") + print(f" - Commit the changes") + + +# --------------------------------------------------------------------------- +# CLI entry point +# --------------------------------------------------------------------------- + +def main() -> None: + parser = argparse.ArgumentParser( + prog="nightly_admin", + description="Manage nightly toolchains for stable-mir-json.", + ) + sub = parser.add_subparsers(dest="command", required=True) + + # --- add --- + p_add = sub.add_parser("add", help="Add support for a new nightly") + p_add.add_argument("nightly", help="Toolchain channel (e.g. nightly-2025-08-01)") + p_add.add_argument("--rust-dir", required=True, help="Path to rust-lang/rust checkout") + p_add.add_argument("--skip-build", action="store_true", help="Skip build verification") + p_add.add_argument("--skip-ui", action="store_true", help="Skip UI test list generation") + p_add.add_argument("--force", action="store_true", help="Regenerate existing artifacts") + + # --- check --- + p_check = sub.add_parser("check", help="Run all tests for a nightly") + p_check.add_argument("nightly", help="Toolchain channel") + p_check.add_argument("--rust-dir", required=True, help="Path to rust-lang/rust checkout") + p_check.add_argument("--skip-build", action="store_true", help="Skip build step") + + # --- bump --- + p_bump = sub.add_parser("bump", help="Bump the pinned nightly") + p_bump.add_argument("nightly", help="Toolchain channel to pin to") + p_bump.add_argument("--dry-run", action="store_true", help="Show what would change") + + args = parser.parse_args() + dispatch = {"add": cmd_add, "check": cmd_check, "bump": cmd_bump} + dispatch[args.command](args) + + +if __name__ == "__main__": + main() diff --git a/tests/integration/normalise-filter.jq b/tests/integration/normalise-filter.jq index d9ff1005..0485959c 100644 --- a/tests/integration/normalise-filter.jq +++ b/tests/integration/normalise-filter.jq @@ -1,6 +1,32 @@ -# Remove the hashes at the end of mangled names -.functions = ( [ .functions[] | if .[1].NormalSym then .[1].NormalSym = .[1].NormalSym[:-17] else . end ] ) - | .items = ( [ .items[] | if .symbol_name then .symbol_name = .symbol_name[:-17] else . end ] ) +# normalise-filter.jq +# +# Normalizes *.smir.json output for golden-file comparison. Interned +# indices (Ty, Span, DefId, etc.) are non-deterministic across platforms +# and runs; we strip or zero them so that cross-platform diffs are clean. +# +# This filter reads a companion receipts file ($receipts) that declares +# which JSON paths carry interned indices. See ADR-004 for the design. +# +# The receipts cover the Body tree (where the whack-a-mole problem lives); +# top-level array transformations below are structural and stay explicit. + +# ── Hash stripping ────────────────────────────────────────────────────── +# +# Strip platform-specific crate hashes from mangled symbol names. +# Legacy mangling (_ZN...): hash is always the trailing 17 chars (16 hex + "h" prefix). +# v0 mangling (_R...): crate disambiguators appear as C_ throughout the symbol; +# replace each with "C_" to normalize across platforms. +def strip_hashes: + if startswith("_R") then gsub("C[a-zA-Z0-9]+_(?=[0-9])"; "C_") + else .[:-17] end; + +# ── Top-level structural transforms ───────────────────────────────────── +# +# These operate on the SmirJson arrays directly and are unrelated to the +# walk-based interned-index normalization that the receipts drive. + +.functions = ( [ .functions[] | if .[1].NormalSym then .[1].NormalSym = (.[1].NormalSym | strip_hashes) else . end ] ) + | .items = ( [ .items[] | if .symbol_name then .symbol_name = (.symbol_name | strip_hashes) else . end ] ) # delete unstable alloc, function, and type IDs | .allocs = ( .allocs | map(del(.alloc_id)) | map(del(.ty)) ) | .functions = ( [ .functions[] ] | map(del(.[0])) ) @@ -8,10 +34,12 @@ # remove "Never" type | .types = ( [ .types[] ] | map(select(.[0] != "VoidType")) ) | -# Apply the normalisation filter + +# ── Restructure and sort ──────────────────────────────────────────────── + { allocs: ( .allocs | sort ), functions: (.functions | sort ), - items: (.items | map(walk(if type == "object" then del(.ty) else . end)) | sort ), + items: (.items | sort_by(.symbol_name + "|" + (.mono_item_kind.MonoItemFn.name // "")) ), types: ( [ # sort by constructors and remove unstable IDs within each ( .types | map(select(.[0].PrimitiveType)) | sort ), @@ -29,12 +57,26 @@ ( .types | map(select(.[0].FunType) | sort) ) ] | flatten(1) ) } -# Strip def_id fields globally. These are interned compiler indices (the -# underlying ID inside AdtDef) that are consistent within a single rustc -# invocation but not stable across runs; the same non-determinism that -# affects alloc_id, Ty indices, and adt_def (see lines 5-6, 18-21 above). -# Downstream consumers use adt_def/def_id as cross-reference keys to join -# AggregateKind::Adt in MIR bodies with type metadata entries, so the -# values can't be dropped from the output itself; we only strip them here -# for golden-file comparison. -| walk(if type == "object" then del(.def_id) else . end) + +# ── Receipt-driven interned-index normalization ───────────────────────── +# +# Instead of hardcoding per-field rules, we read the receipts and apply +# three generic passes: +# +# 1. interned_keys: delete object fields whose values are interned +# 2. interned_newtypes: zero enum-variant wrappers around bare integers +# 3. interned_positions: zero known tuple positions carrying interned indices + +| walk(if type == "object" then + # 1. Strip interned key fields (e.g. "span", "ty", "def_id", "id") + reduce ($receipts[0].interned_keys[]) as $k (.; del(.[$k])) + # 2. Zero interned newtype wrappers (e.g. {"Type": 42} → {"Type": 0}) + | reduce ($receipts[0].interned_newtypes[]) as $n (.; + if .[$n] and (.[$n] | type) == "number" then .[$n] = 0 else . end) + # 3. Zero interned positions in tuple variants (e.g. Cast[2], Field[1]) + | reduce ($receipts[0].interned_positions | to_entries[]) as $e (.; + if .[$e.key] and (.[$e.key] | type) == "array" then + reduce ($e.value[]) as $p (.; + if .[$e.key][$p] then .[$e.key][$p] = 0 else . end) + else . end) + else . end) From 293bd90972055ad652d1a53dd91b61ce0b06201c Mon Sep 17 00:00:00 2001 From: cds-amal Date: Thu, 12 Mar 2026 21:11:33 -0400 Subject: [PATCH 13/15] feat(compat): add compat code for initial breakpoints (2025-01-24 through 2025-03-01) --- src/compat/mono_collect.rs | 5 +++++ src/driver.rs | 5 +++++ src/mk_graph/context.rs | 24 ++++++++++++++++-------- src/mk_graph/output/dot.rs | 8 ++++---- src/mk_graph/util.rs | 23 ++++++++++++++++++++--- 5 files changed, 50 insertions(+), 15 deletions(-) diff --git a/src/compat/mono_collect.rs b/src/compat/mono_collect.rs index e99ac9d0..8a43a8c5 100644 --- a/src/compat/mono_collect.rs +++ b/src/compat/mono_collect.rs @@ -11,7 +11,12 @@ use stable_mir::mir::mono::MonoItem; /// Collect all monomorphized items from the compiler. pub fn mono_collect(tcx: TyCtxt<'_>) -> Vec { + // In nightlies >= 2025-01-27, MonoItemPartitions changed from a tuple + // to named fields. See build.rs BREAKPOINTS table. + #[cfg(not(smir_has_named_mono_item_partitions))] let units = tcx.collect_and_partition_mono_items(()).1; + #[cfg(smir_has_named_mono_item_partitions)] + let units = tcx.collect_and_partition_mono_items(()).codegen_units; units .iter() .flat_map(|unit| { diff --git a/src/driver.rs b/src/driver.rs index 7522ebd8..0e348138 100644 --- a/src/driver.rs +++ b/src/driver.rs @@ -44,5 +44,10 @@ pub fn stable_mir_driver(args_outer: &[String], callback_fn: fn(TyCtxt) -> ()) { let early_dcx = rustc_session::EarlyDiagCtxt::new(rustc_session::config::ErrorOutputType::default()); rustc_driver::init_rustc_env_logger(&early_dcx); + // In nightlies >= 2025-01-24, RunCompiler was replaced with a free + // function run_compiler(). See build.rs BREAKPOINTS table. + #[cfg(not(smir_has_run_compiler_fn))] let _ = rustc_driver::RunCompiler::new(args_outer, &mut callbacks).run(); + #[cfg(smir_has_run_compiler_fn)] + rustc_driver::run_compiler(args_outer, &mut callbacks); } diff --git a/src/mk_graph/context.rs b/src/mk_graph/context.rs index fd620299..aec1afca 100644 --- a/src/mk_graph/context.rs +++ b/src/mk_graph/context.rs @@ -3,9 +3,11 @@ use std::collections::HashMap; use crate::compat::stable_mir; +#[cfg(not(smir_has_raw_ptr_kind))] +use stable_mir::mir::Mutability; use stable_mir::mir::{ - BorrowKind, ConstOperand, Mutability, NonDivergingIntrinsic, Operand, Rvalue, Statement, - StatementKind, Terminator, TerminatorKind, + BorrowKind, ConstOperand, NonDivergingIntrinsic, Operand, Rvalue, Statement, StatementKind, + Terminator, TerminatorKind, }; use stable_mir::ty::{ConstantKind, IndexedVal, MirConst, Ty}; @@ -153,8 +155,8 @@ impl GraphContext { } => format!("Ascribe {}.{}", place.label(), projections.base), Coverage(_) => "Coverage".to_string(), Intrinsic(intr) => format!("Intr: {}", self.render_intrinsic(intr)), - ConstEvalCounter {} => "ConstEvalCounter".to_string(), - Nop {} => "Nop".to_string(), + ConstEvalCounter => "ConstEvalCounter".to_string(), + Nop => "Nop".to_string(), } } @@ -162,10 +164,16 @@ impl GraphContext { pub fn render_rvalue(&self, v: &Rvalue) -> String { use Rvalue::*; match v { + // In nightlies >= 2025-01-28, AddressOf's first field changed from + // Mutability (Mut/Not) to RawPtrKind (Mut/Const/FakeForPtrMetadata). + // See build.rs BREAKPOINTS table. + #[cfg(not(smir_has_raw_ptr_kind))] AddressOf(mutability, p) => match mutability { Mutability::Not => format!("&raw {}", p.label()), Mutability::Mut => format!("&raw mut {}", p.label()), }, + #[cfg(smir_has_raw_ptr_kind)] + AddressOf(kind, p) => format!("&raw {:?} {}", kind, p.label()), Aggregate(kind, operands) => { let os: Vec = operands.iter().map(|op| self.render_operand(op)).collect(); format!("{} ({})", kind.label(), os.join(", ")) @@ -227,10 +235,10 @@ impl GraphContext { match &term.kind { Goto { .. } => "Goto".to_string(), SwitchInt { discr, .. } => format!("SwitchInt {}", self.render_operand(discr)), - Resume {} => "Resume".to_string(), - Abort {} => "Abort".to_string(), - Return {} => "Return".to_string(), - Unreachable {} => "Unreachable".to_string(), + Resume => "Resume".to_string(), + Abort => "Abort".to_string(), + Return => "Return".to_string(), + Unreachable => "Unreachable".to_string(), Drop { place, .. } => format!("Drop {}", place.label()), Call { func, diff --git a/src/mk_graph/output/dot.rs b/src/mk_graph/output/dot.rs index 78f03478..142ba4e0 100644 --- a/src/mk_graph/output/dot.rs +++ b/src/mk_graph/output/dot.rs @@ -125,16 +125,16 @@ impl SmirJson { .attributes() .set_label("other"); } - Resume {} => { + Resume => { label_strs.push("Resume".to_string()); } - Abort {} => { + Abort => { label_strs.push("Abort".to_string()); } - Return {} => { + Return => { label_strs.push("Return".to_string()); } - Unreachable {} => { + Unreachable => { label_strs.push("Unreachable".to_string()); } TerminatorKind::Drop { diff --git a/src/mk_graph/util.rs b/src/mk_graph/util.rs index ac21cbb1..c5d278eb 100644 --- a/src/mk_graph/util.rs +++ b/src/mk_graph/util.rs @@ -44,16 +44,27 @@ impl GraphLabelString for Operand { } } } - +/// Some `AggregateKind` variants only exist on certain nightlies (the +/// stable MIR API evolves across compiler versions). Arms gated with +/// `#[cfg(smir_has_*)]` are toggled by `build.rs`, which inspects the +/// active rustc's commit-date and emits the appropriate cfg flags. +/// This keeps the match exhaustive on every supported nightly: without +/// the flag the variant doesn't exist in the enum, so the arm is +/// excluded; with the flag the arm is included to cover the new variant. impl GraphLabelString for AggregateKind { fn label(&self) -> String { use AggregateKind::*; match &self { Array(_ty) => "Array".to_string(), - Tuple {} => "Tuple".to_string(), + Tuple => "Tuple".to_string(), Adt(_, idx, _, _, _) => format!("Adt{{{}}}", idx.to_index()), Closure(_, _) => "Closure".to_string(), Coroutine(_, _, _) => "Coroutine".to_string(), + + // Added in nightlies >= 2024-12-14; see build.rs BREAKPOINTS table. + #[cfg(smir_has_coroutine_closure)] + CoroutineClosure(_, _) => "CoroutineClosure".to_string(), + RawPtr(ty, Mutability::Mut) => format!("*mut ({})", ty), RawPtr(ty, Mutability::Not) => format!("*({})", ty), } @@ -64,10 +75,16 @@ impl GraphLabelString for Rvalue { fn label(&self) -> String { use Rvalue::*; match &self { + // In nightlies >= 2025-01-28, AddressOf's first field changed from + // Mutability (Mut/Not) to RawPtrKind (Mut/Const/FakeForPtrMetadata). + // See build.rs BREAKPOINTS table. + #[cfg(not(smir_has_raw_ptr_kind))] AddressOf(mutability, p) => match mutability { Mutability::Not => format!("&raw {}", p.label()), Mutability::Mut => format!("&raw mut {}", p.label()), }, + #[cfg(smir_has_raw_ptr_kind)] + AddressOf(kind, p) => format!("&raw {:?} {}", kind, p.label()), Aggregate(kind, operands) => { let os: Vec = operands.iter().map(|op| op.label()).collect(); format!("{} ({})", kind.label(), os.join(", ")) @@ -239,7 +256,7 @@ pub fn terminator_targets(term: &Terminator) -> Vec { result.push(targets.otherwise()); result } - Resume {} | Abort {} | Return {} | Unreachable {} => vec![], + Resume | Abort | Return | Unreachable => vec![], Drop { target, unwind, .. } => { let mut result = vec![*target]; if let UnwindAction::Cleanup(t) = unwind { From 273f002ceef64956ace0404b7a8775bbaa4fc2b1 Mon Sep 17 00:00:00 2001 From: cds-amal Date: Thu, 12 Mar 2026 21:11:50 -0400 Subject: [PATCH 14/15] test: migrate golden files to per-nightly directories Move integration test expected outputs from flat files in programs/ to per-nightly directories under expected/nightly-2025-03-01/, enabling the test harness to select the correct golden files for the active toolchain. --- .../assert_eq.smir.json.expected | 3456 ++++-------- .../binop.smir.json.expected | 2471 +++------ .../char-trivial.smir.json.expected | 1325 ++--- .../closure-args.smir.json.expected | 1605 +++--- .../closure-no-args.smir.json.expected | 1422 ++--- .../const-arithm-simple.smir.json.expected | 1428 ++--- .../div.smir.json.expected | 1344 ++--- .../double-ref-deref.smir.json.expected | 1327 ++--- .../enum.smir.json.expected | 1392 ++--- .../fibonacci.smir.json.expected | 2797 +++++----- .../float.smir.json.expected | 2329 ++++----- .../fn-ptr-in-arg.smir.json.expected | 4645 +++++++++-------- .../modulo.smir.json.expected | 2064 +++----- .../mutual_recursion.smir.json.expected | 1501 ++---- .../option-construction.smir.json.expected | 1546 +++--- .../param_types.smir.json.expected | 3350 ++++++------ .../primitive-type-bounds.smir.json.expected | 1335 ++--- .../recursion-simple-match.smir.json.expected | 1858 +++---- .../recursion-simple.smir.json.expected | 1858 +++---- .../ref-deref.smir.json.expected | 1501 ++---- .../shl_min.smir.json.expected | 4205 +++++++-------- .../slice.smir.json.expected | 4073 ++++++--------- ...vtable-nonbuiltin-deref.smir.json.expected | 2055 ++++---- .../strange-ref-deref.smir.json.expected | 1327 ++--- .../struct.smir.json.expected | 2054 +++----- .../sum-to-n.smir.json.expected | 3007 +++++------ .../tuple-eq.smir.json.expected | 2049 +++----- .../tuples-simple.smir.json.expected | 1321 ++--- .../weirdRefs.smir.json.expected | 3832 ++++++-------- 29 files changed, 26278 insertions(+), 38199 deletions(-) rename tests/integration/{programs => expected/nightly-2025-03-01}/assert_eq.smir.json.expected (72%) rename tests/integration/{programs => expected/nightly-2025-03-01}/binop.smir.json.expected (87%) rename tests/integration/{programs => expected/nightly-2025-03-01}/char-trivial.smir.json.expected (77%) rename tests/integration/{programs => expected/nightly-2025-03-01}/closure-args.smir.json.expected (79%) rename tests/integration/{programs => expected/nightly-2025-03-01}/closure-no-args.smir.json.expected (77%) rename tests/integration/{programs => expected/nightly-2025-03-01}/const-arithm-simple.smir.json.expected (78%) rename tests/integration/{programs => expected/nightly-2025-03-01}/div.smir.json.expected (79%) rename tests/integration/{programs => expected/nightly-2025-03-01}/double-ref-deref.smir.json.expected (78%) rename tests/integration/{programs => expected/nightly-2025-03-01}/enum.smir.json.expected (75%) rename tests/integration/{programs => expected/nightly-2025-03-01}/fibonacci.smir.json.expected (80%) rename tests/integration/{programs => expected/nightly-2025-03-01}/float.smir.json.expected (80%) rename tests/integration/{programs => expected/nightly-2025-03-01}/fn-ptr-in-arg.smir.json.expected (86%) rename tests/integration/{programs => expected/nightly-2025-03-01}/modulo.smir.json.expected (79%) rename tests/integration/{programs => expected/nightly-2025-03-01}/mutual_recursion.smir.json.expected (80%) rename tests/integration/{programs => expected/nightly-2025-03-01}/option-construction.smir.json.expected (78%) rename tests/integration/{programs => expected/nightly-2025-03-01}/param_types.smir.json.expected (86%) rename tests/integration/{programs => expected/nightly-2025-03-01}/primitive-type-bounds.smir.json.expected (79%) rename tests/integration/{programs => expected/nightly-2025-03-01}/recursion-simple-match.smir.json.expected (79%) rename tests/integration/{programs => expected/nightly-2025-03-01}/recursion-simple.smir.json.expected (79%) rename tests/integration/{programs => expected/nightly-2025-03-01}/ref-deref.smir.json.expected (77%) rename tests/integration/{programs => expected/nightly-2025-03-01}/shl_min.smir.json.expected (84%) rename tests/integration/{programs => expected/nightly-2025-03-01}/slice.smir.json.expected (83%) rename tests/integration/{programs => expected/nightly-2025-03-01}/static-vtable-nonbuiltin-deref.smir.json.expected (83%) rename tests/integration/{programs => expected/nightly-2025-03-01}/strange-ref-deref.smir.json.expected (78%) rename tests/integration/{programs => expected/nightly-2025-03-01}/struct.smir.json.expected (79%) rename tests/integration/{programs => expected/nightly-2025-03-01}/sum-to-n.smir.json.expected (80%) rename tests/integration/{programs => expected/nightly-2025-03-01}/tuple-eq.smir.json.expected (80%) rename tests/integration/{programs => expected/nightly-2025-03-01}/tuples-simple.smir.json.expected (78%) rename tests/integration/{programs => expected/nightly-2025-03-01}/weirdRefs.smir.json.expected (83%) diff --git a/tests/integration/programs/assert_eq.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/assert_eq.smir.json.expected similarity index 72% rename from tests/integration/programs/assert_eq.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/assert_eq.smir.json.expected index ee3c7ecd..ca4cba95 100644 --- a/tests/integration/programs/assert_eq.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/assert_eq.smir.json.expected @@ -26,26 +26,6 @@ "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], - [ - { - "NormalSym": "_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i32$GT$3fmt17h" - } - ], - [ - { - "NormalSym": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h" - } - ], - [ - { - "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h" - } - ], - [ - { - "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h" - } - ], [ { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" @@ -61,11 +41,6 @@ "NormalSym": "_ZN4core9panicking13assert_failed17h" } ], - [ - { - "NormalSym": "_ZN4core9panicking19assert_failed_inner17h" - } - ], [ { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" @@ -78,222 +53,66 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ { "kind": { - "Assign": [ - { - "local": 1, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 93, - "user_ty": null - } - } - } - ] - }, - "span": 93 + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } }, { "kind": { "Assign": [ { - "local": 3, + "local": 7, "projection": [] }, { - "CheckedBinaryOp": [ - "Add", + "Aggregate": [ { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 3, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } - }, - "span": 90, - "user_ty": null - } + ] + ] }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 39, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 91, - "user_ty": null + [ + { + "Copy": { + "local": 1, + "projection": [] + } } - } + ] ] } ] - }, - "span": 92 - } - ], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 3, - "projection": [ - { - "Field": [ - 1, - 40 - ] - } - ] - } - }, - "expected": false, - "msg": { - "Overflow": [ - "Add", - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 3, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 90, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 39, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 91, - "user_ty": null - } - } - ] - }, - "target": 1, - "unwind": "Continue" } }, - "span": 92 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 3, - "projection": [ - { - "Field": [ - 0, - 16 - ] - } - ] - } - } - } - ] - }, - "span": 92 - }, { "kind": { "Assign": [ { - "local": 5, + "local": 6, "projection": [] }, { @@ -303,401 +122,138 @@ }, "Shared", { - "local": 2, + "local": 7, "projection": [] } ] } ] - }, - "span": 95 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 5, "projection": [] }, { - "Ref": [ + "Cast": [ { - "kind": "ReErased" + "PointerCoercion": "Unsize" }, - "Shared", { - "local": 1, - "projection": [] - } + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 ] } ] - }, - "span": 96 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Aggregate": [ - "Tuple", - [ - { - "Move": { - "local": 5, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 97 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 4, - "projection": [ - { - "Field": [ - 0, - 25 - ] - } - ] - } - } - } - ] - }, - "span": 98 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 4, - "projection": [ - { - "Field": [ - 1, - 25 - ] - } - ] - } - } - } - ] - }, - "span": 99 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 7, - "projection": [ - "Deref" - ] - } - } - } - ] - }, - "span": 100 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 8, - "projection": [ - "Deref" - ] - } - } - } - ] - }, - "span": 101 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 10, - "projection": [] - } - }, - { - "Move": { - "local": 11, - "projection": [] - } - } - ] - } - ] - }, - "span": 94 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 9, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 2 - } - } - }, - "span": 94 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 102 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 10, - 0, - [], - null, - null - ] - }, - [] - ] - } - ] - }, - "span": 105 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 11, - 0, - [ - { - "Type": 42 - } - ], - null, - null - ] - }, - [] - ] - } - ] - }, - "span": 106 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { "Move": { - "local": 12, + "local": 5, "projection": [] } }, { - "Copy": { - "local": 7, + "Move": { + "local": 2, "projection": [] } }, { - "Copy": { - "local": 8, + "Move": { + "local": 3, "projection": [] } }, { "Move": { - "local": 14, + "local": 4, "projection": [] } } ], "destination": { - "local": 13, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 19, "kind": "ZeroSized" }, - "span": 103, "user_ty": null } }, - "target": null, + "target": 1, "unwind": "Continue" } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 5 + } }, - "span": 104 + { + "kind": { + "StorageDead": 7 + } + } + ], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 107 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 108 + "mutability": "Not" }, { - "mutability": "Not", - "span": 109 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 92 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 97 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 95 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 96 + "mutability": "Not" }, { - "mutability": "Not", - "span": 98 - }, - { - "mutability": "Not", - "span": 99 - }, - { - "mutability": "Mut", - "span": 94 - }, - { - "mutability": "Mut", - "span": 100 - }, - { - "mutability": "Mut", - "span": 101 - }, - { - "mutability": "Not", - "span": 110 - }, - { - "mutability": "Not", - "span": 104 - }, - { - "mutability": "Mut", - "span": 106 + "mutability": "Not" } ], - "span": 111, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "a", + "name": "main", "source_info": { - "scope": 1, - "span": 108 + "scope": 0 }, "value": { "Place": { @@ -707,12 +263,11 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "b", + "name": "argc", "source_info": { - "scope": 2, - "span": 109 + "scope": 0 }, "value": { "Place": { @@ -722,127 +277,39 @@ } }, { - "argument_index": null, - "composite": null, - "name": "left_val", - "source_info": { - "scope": 3, - "span": 98 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": null, + "argument_index": 3, "composite": null, - "name": "right_val", + "name": "argv", "source_info": { - "scope": 3, - "span": 99 + "scope": 0 }, "value": { "Place": { - "local": 8, + "local": 3, "projection": [] } } }, { - "argument_index": null, + "argument_index": 4, "composite": null, - "name": "kind", + "name": "sigpipe", "source_info": { - "scope": 4, - "span": 110 + "scope": 0 }, "value": { "Place": { - "local": 12, + "local": 4, "projection": [] } } } ] }, - "id": 9, - "name": "main" - } - }, - "symbol_name": "_ZN9assert_eq4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 74 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 74 - }, - { - "mutability": "Not", - "span": 74 - } - ], - "span": 74, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 6, - "name": "std::ptr::drop_in_place::<&i32>" - } - }, - "symbol_name": "_ZN4core3ptr28drop_in_place$LT$$RF$i32$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 74 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 74 - }, - { - "mutability": "Not", - "span": 74 - } - ], - "span": 74, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 6, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -852,63 +319,94 @@ "arg_count": 1, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 4, "projection": [] } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } } ], "destination": { - "local": 0, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 4 + } + } + ], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] } } ], @@ -919,101 +417,162 @@ "func": { "Constant": { "const_": { - "id": 5, "kind": "ZeroSized" }, - "span": 34, "user_ty": null } }, "target": 2, - "unwind": "Unreachable" + "unwind": "Continue" } - }, - "span": 35 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 0 + ] + }, + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + 0 + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 2 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ + "mutability": "Mut" + }, { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } + "mutability": "Mut" + }, + { + "mutability": "Mut" }, + { + "mutability": "Mut" + } + ], + "spread_arg": null, + "var_debug_info": [ { "argument_index": null, "composite": null, - "name": "result", + "name": "main", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, - "projection": [] + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] } } }, { "argument_index": 1, "composite": null, - "name": "dummy", + "name": "self", "source_info": { - "scope": 2, - "span": 41 + "scope": 1 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 2, + "projection": [] } } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1023,439 +582,219 @@ "arg_count": 1, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 0, - "projection": [] + "Move": { + "local": 1, + "projection": [] + } }, { - "Use": { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 86, - "user_ty": null - } + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } - ] - }, - "span": 86 + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } } - ], + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], "terminator": { - "kind": "Return", - "span": 85 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 87 + "mutability": "Mut" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 88 + "mutability": "Not" } ], - "span": 89, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", "source_info": { - "scope": 0, - "span": 88 + "scope": 2 }, "value": { "Const": { "const_": { - "id": 4, "kind": "ZeroSized" }, - "span": 32, "user_ty": null } } } ] }, - "id": 8, - "name": "<() as std::process::Termination>::report" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 15 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 17 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - } - ] - }, - "span": 17 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 4, + "local": 1, + "projection": [ + "Deref" + ] + } + }, + { + "Move": { + "local": 2, "projection": [] } } ], "destination": { - "local": 3, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 19 - } - ], + "statements": [], "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 2, - "kind": "ZeroSized" - }, - "span": 18, - "user_ty": null - } - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 16 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 21 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 22 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 16 - ] - } - ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 27 - } - ], - "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 - }, - { - "mutability": "Mut", - "span": 16 - }, - { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 22 - }, - { - "mutability": "Mut", - "span": 23 + "mutability": "Not" } ], - "span": 3, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] + "spread_arg": 2, + "var_debug_info": [] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1483,123 +822,35 @@ "target": 1, "unwind": "Continue" } - }, - "span": 73 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 73 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 73 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 73 + "mutability": "Not" }, { - "mutability": "Not", - "span": 73 + "mutability": "Not" } ], - "span": 73, "spread_arg": 2, "var_debug_info": [] }, - "id": 5, "name": ">::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 12, - "kind": "ZeroSized" - }, - "span": 73, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 73 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 73 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 73 - }, - { - "mutability": "Not", - "span": 73 - }, - { - "mutability": "Not", - "span": 73 - } - ], - "span": 73, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 5, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, { "details": null, "mono_item_kind": { @@ -1633,8 +884,7 @@ ] } ] - }, - "span": 73 + } } ], "terminator": { @@ -1661,10 +911,8 @@ "func": { "Constant": { "const_": { - "id": 13, "kind": "ZeroSized" }, - "span": 73, "user_ty": null } }, @@ -1673,8 +921,7 @@ "Cleanup": 3 } } - }, - "span": 73 + } } }, { @@ -1689,15 +936,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 73 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 73 + "kind": "Return" } }, { @@ -1712,41 +957,33 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 73 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 73 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 73 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 73 + "mutability": "Not" }, { - "mutability": "Not", - "span": 73 + "mutability": "Not" }, { - "mutability": "Not", - "span": 73 + "mutability": "Not" } ], - "span": 73, "spread_arg": 2, "var_debug_info": [] }, - "id": 5, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1757,7 +994,37 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, "blocks": [ { "statements": [ @@ -1765,176 +1032,97 @@ "kind": { "Assign": [ { - "local": 3, + "local": 0, "projection": [] }, { "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref" - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } } ] - }, - "span": 45 + } } ], "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 44 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 46 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - }, - { - "mutability": "Not", - "span": 49 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 48 + "mutability": "Not" } ], - "span": 50, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 49 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 3, - "name": "<&i32 as std::fmt::Debug>::fmt" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 0, "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 52 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 53 - }, { "kind": { "Assign": [ { - "local": 4, + "local": 1, "projection": [] }, { "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 53 + } }, { "kind": { @@ -1944,23 +1132,38 @@ "projection": [] }, { - "BinaryOp": [ - "BitAnd", + "CheckedBinaryOp": [ + "Add", { - "Move": { - "local": 4, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 3, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } }, { "Constant": { "const_": { - "id": 7, "kind": { "Allocated": { "align": 4, "bytes": [ - 16, + 39, 0, 0, 0 @@ -1972,504 +1175,119 @@ } } }, - "span": 32, "user_ty": null } } ] } ] - }, - "span": 52 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 54 + } } ], "terminator": { "kind": { - "SwitchInt": { - "discr": { + "Assert": { + "cond": { "Move": { "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 + "projection": [ + { + "Field": [ + 1, + 0 + ] + } ] - ], - "otherwise": 1 - } - } - }, - "span": 51 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 51 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } } - ], - "destination": { - "local": 0, - "projection": [] }, - "func": { - "Constant": { - "const_": { - "id": 8, - "kind": "ZeroSized" - }, - "span": 55, - "user_ty": null - } - }, - "target": 6, - "unwind": "Continue" - } - }, - "span": 56 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 51 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 58 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 59 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] + "expected": false, + "msg": { + "Overflow": [ + "Add", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 3, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } - } - } - ] - }, - "span": 59 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 32, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 39, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] } } - }, - "span": 32, - "user_ty": null - } + } + }, + "user_ty": null } - ] - } - ] - }, - "span": 58 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 60 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 57 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 57 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 10, - "kind": "ZeroSized" - }, - "span": 61, - "user_ty": null - } - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 62 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 57 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized" - }, - "span": 63, - "user_ty": null - } + ] }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 64 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 66 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 67 - }, - { - "mutability": "Not", - "span": 68 - }, - { - "mutability": "Not", - "span": 69 - }, - { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Mut", - "span": 53 - }, - { - "mutability": "Mut", - "span": 58 - }, - { - "mutability": "Mut", - "span": 59 - } - ], - "span": 72, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 68 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 69 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 70 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 71 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - }, - "id": 4, - "name": "core::fmt::num::::fmt" - } - }, - "symbol_name": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ { "kind": { "Assign": [ { - "local": 8, + "local": 2, "projection": [] }, { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] + "Use": { + "Move": { + "local": 3, + "projection": [ + { + "Field": [ + 0, + 0 + ] } - } - ] - ] + ] + } + } } ] - }, - "span": 3 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 5, "projection": [] }, { @@ -2479,14 +1297,13 @@ }, "Shared", { - "local": 8, + "local": 2, "projection": [] } ] } ] - }, - "span": 2 + } }, { "kind": { @@ -2496,370 +1313,248 @@ "projection": [] }, { - "Cast": [ + "Ref": [ { - "PointerCoercion": "Unsize" + "kind": "ReErased" }, + "Shared", { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 + "local": 1, + "projection": [] + } ] } ] - }, - "span": 2 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" } }, - "span": 1 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ { - "local": 0, + "local": 4, "projection": [] }, { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 - } - ], - "terminator": { - "kind": "Return", - "span": 4 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 - }, - { - "mutability": "Not", - "span": 3 - } - ], - "span": 13, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] - }, - "id": 0, - "name": "std::rt::lang_start::<()>" - } - }, - "symbol_name": "_ZN3std2rt10lang_start17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ + "Aggregate": [ + "Tuple", + [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 6, + "projection": [] + } + } + ] + ] + } + ] + } + }, { "kind": { - "StorageLive": 5 - }, - "span": 77 + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 4, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 8, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [] + "Use": { + "Copy": { + "local": 4, + "projection": [ + { + "Field": [ + 1, + 0 + ] + } + ] } - ] + } } ] - }, - "span": 77 + } }, { "kind": { "Assign": [ { - "local": 5, + "local": 10, "projection": [] }, { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 6, - "projection": [] - } - }, - 36 - ] + "Use": { + "Copy": { + "local": 7, + "projection": [ + "Deref" + ] + } + } } ] - }, - "span": 77 + } }, { "kind": { - "StorageLive": 7 - }, - "span": 78 + "Assign": [ + { + "local": 11, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 8, + "projection": [ + "Deref" + ] + } + } + } + ] + } }, { "kind": { "Assign": [ { - "local": 8, + "local": 9, "projection": [] }, { - "Ref": [ + "BinaryOp": [ + "Eq", { - "kind": "ReErased" + "Move": { + "local": 10, + "projection": [] + } }, - "Shared", { - "local": 3, - "projection": [] + "Move": { + "local": 11, + "projection": [] + } } ] } ] - }, - "span": 78 - }, + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 9, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 3 + ] + ], + "otherwise": 2 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [ { "kind": { "Assign": [ { - "local": 7, + "local": 12, "projection": [] }, { - "Cast": [ + "Aggregate": [ { - "PointerCoercion": "Unsize" + "Adt": [ + 0, + 0, + [], + null, + null + ] }, + [] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 14, + "projection": [] + }, + { + "Aggregate": [ { - "Copy": { - "local": 8, - "projection": [] - } + "Adt": [ + 0, + 0, + [ + { + "Type": 0 + } + ], + null, + null + ] }, - 36 + [] ] } ] - }, - "span": 78 + } } ], "terminator": { @@ -2868,99 +1563,103 @@ "args": [ { "Move": { - "local": 1, + "local": 12, "projection": [] } }, { - "Move": { - "local": 5, + "Copy": { + "local": 7, "projection": [] } }, { - "Move": { - "local": 7, + "Copy": { + "local": 8, "projection": [] } }, { "Move": { - "local": 4, + "local": 14, "projection": [] } } ], "destination": { - "local": 0, + "local": 13, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 75, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 76 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 79 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 80 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 81 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 82 + "mutability": "Not" }, { - "mutability": "Not", - "span": 83 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 77 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 77 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 78 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 78 + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" } ], - "span": 84, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "kind", + "name": "a", "source_info": { - "scope": 0, - "span": 80 + "scope": 1 }, "value": { "Place": { @@ -2970,12 +1669,11 @@ } }, { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "left", + "name": "b", "source_info": { - "scope": 0, - "span": 81 + "scope": 2 }, "value": { "Place": { @@ -2985,42 +1683,53 @@ } }, { - "argument_index": 3, + "argument_index": null, "composite": null, - "name": "right", + "name": "left_val", "source_info": { - "scope": 0, - "span": 82 + "scope": 3 }, "value": { "Place": { - "local": 3, + "local": 7, "projection": [] } } }, { - "argument_index": 4, + "argument_index": null, + "composite": null, + "name": "right_val", + "source_info": { + "scope": 3 + }, + "value": { + "Place": { + "local": 8, + "projection": [] + } + } + }, + { + "argument_index": null, "composite": null, - "name": "args", + "name": "kind", "source_info": { - "scope": 0, - "span": 83 + "scope": 4 }, "value": { "Place": { - "local": 4, + "local": 12, "projection": [] } } } ] }, - "id": 7, - "name": "core::panicking::assert_failed::" + "name": "main" } }, - "symbol_name": "_ZN4core9panicking13assert_failed17h" + "symbol_name": "_ZN9assert_eq4main17h" } ], "types": [ @@ -3686,6 +2395,135 @@ } } ], + [ + { + "EnumType": { + "discriminants": [ + 0, + 1, + 2 + ], + "fields": "elided", + "layout": { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 2, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Multiple": { + "tag": { + "Initialized": { + "valid_range": { + "end": 2, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + }, + "tag_encoding": "Direct", + "tag_field": 0, + "variants": [ + { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Single": { + "index": 0 + } + } + }, + { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Single": { + "index": 1 + } + } + }, + { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Single": { + "index": 2 + } + } + } + ] + } + } + }, + "name": "std::fmt::Alignment" + } + } + ], [ { "EnumType": { @@ -3807,9 +2645,140 @@ } } } - ] + ] + }, + "abi_align": 8, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, + "size": { + "num_bits": 128 + }, + "variants": { + "Single": { + "index": 1 + } + } + } + ] + } + } + }, + "name": "std::option::Option<&[core::fmt::rt::Placeholder]>" + } + } + ], + [ + { + "EnumType": { + "discriminants": [ + 0, + 1 + ], + "fields": "elided", + "layout": { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 3, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Multiple": { + "tag": { + "Initialized": { + "valid_range": { + "end": 3, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + }, + "tag_encoding": { + "Niche": { + "niche_start": 3, + "niche_variants": { + "end": 0, + "start": 0 + }, + "untagged_variant": 1 + } + }, + "tag_field": 0, + "variants": [ + { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [] + } + }, + "size": { + "num_bits": 0 + }, + "variants": { + "Single": { + "index": 0 + } + } + }, + { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 2, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } }, - "abi_align": 8, + "abi_align": 1, "fields": { "Arbitrary": { "offsets": [ @@ -3820,7 +2789,7 @@ } }, "size": { - "num_bits": 128 + "num_bits": 8 }, "variants": { "Single": { @@ -3832,7 +2801,7 @@ } } }, - "name": "std::option::Option<&[core::fmt::rt::Placeholder]>" + "name": "std::option::Option" } } ], @@ -4225,54 +3194,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -4437,28 +3358,61 @@ "Arbitrary": { "offsets": [ { - "num_bits": 416 + "num_bits": 0 }, { "num_bits": 384 + } + ] + } + }, + "size": { + "num_bits": 512 + }, + "variants": { + "Single": { + "index": 0 + } + } + }, + "name": "std::fmt::Formatter<'_>" + } + } + ], + [ + { + "StructType": { + "fields": "elided", + "layout": { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 8, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 288 }, { - "num_bits": 448 + "num_bits": 256 }, { - "num_bits": 0 + "num_bits": 320 }, { - "num_bits": 128 + "num_bits": 0 }, { - "num_bits": 256 + "num_bits": 128 } ] } }, "size": { - "num_bits": 512 + "num_bits": 384 }, "variants": { "Single": { @@ -4466,7 +3420,7 @@ } } }, - "name": "std::fmt::Formatter<'_>" + "name": "std::fmt::FormattingOptions" } } ], @@ -4939,39 +3893,6 @@ } } ], - [ - { - "PtrType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Mut", - "pointee_type": "elided" - } - } - ], [ { "PtrType": { @@ -5269,72 +4190,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { @@ -5689,63 +4544,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "ScalarPair": [ - { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - }, - { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - ] - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - }, - { - "num_bits": 64 - } - ] - } - }, - "size": { - "num_bits": 128 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "FunType": "{closure@std::rt::lang_start<()>::{closure#0}}" diff --git a/tests/integration/programs/binop.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/binop.smir.json.expected similarity index 87% rename from tests/integration/programs/binop.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/binop.smir.json.expected index 0c56360d..28862d3f 100644 --- a/tests/integration/programs/binop.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/binop.smir.json.expected @@ -1162,89 +1162,118 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 2, + "local": 7, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 42, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] } - }, - "span": 163, - "user_ty": null - } - } + } + ] + ] } ] - }, - "span": 164 + } }, { "kind": { "Assign": [ { - "local": 3, + "local": 6, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 43, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 10, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 165, - "user_ty": null + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] } - } + ] } ] - }, - "span": 166 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } } ], "terminator": { "kind": { "Call": { "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, { "Move": { "local": 2, @@ -1256,288 +1285,84 @@ "local": 3, "projection": [] } + }, + { + "Move": { + "local": 4, + "projection": [] + } } ], "destination": { - "local": 1, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 41, "kind": "ZeroSized" }, - "span": 161, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 162 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 167 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 168 - }, - { - "mutability": "Not", - "span": 162 - }, - { - "mutability": "Mut", - "span": 164 - }, - { - "mutability": "Mut", - "span": 166 - } - ], - "span": 171, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "x", - "source_info": { - "scope": 1, - "span": 169 - }, - "value": { - "Const": { - "const_": { - "id": 42, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 163, - "user_ty": null } } }, { - "argument_index": null, - "composite": null, - "name": "y", - "source_info": { - "scope": 2, - "span": 170 - }, - "value": { - "Const": { - "const_": { - "id": 43, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 10, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 165, - "user_ty": null + "statements": [ + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 7 + } } - } - } - ] - }, - "id": 7, - "name": "main" - } - }, - "symbol_name": "_ZN5binop4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], + ], "terminator": { - "kind": "Return", - "span": 44 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 44 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ + "mutability": "Not" + }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" - }, - "span": 31, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 33 - } + "mutability": "Not" }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 35 - } + "mutability": "Not" }, { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ + "mutability": "Not" + }, { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -1547,136 +1372,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 + "Place": { + "local": 3, + "projection": [] } - ], - "terminator": { - "kind": "Return", - "span": 45 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 }, { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, + "argument_index": 4, "composite": null, - "name": "self", + "name": "sigpipe", "source_info": { - "scope": 0, - "span": 48 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1690,20 +1432,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -1721,7 +1460,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1729,8 +1468,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -1751,18 +1489,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -1770,8 +1505,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -1792,18 +1526,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -1811,14 +1542,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -1827,42 +1556,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1871,13 +1564,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -1885,8 +1578,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -1900,73 +1592,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1974,8 +1645,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1985,7 +1655,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1997,8 +1667,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -2006,25 +1675,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -2035,62 +1688,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -2127,52 +1868,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -2206,8 +1993,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -2234,10 +2020,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -2246,8 +2030,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -2262,15 +2045,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -2285,46 +2066,130 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 43 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "<() as std::process::Termination>::report" + } + }, + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + }, { "details": null, "mono_item_kind": { @@ -2359,8 +2224,7 @@ ] } ] - }, - "span": 50 + } } ], "terminator": { @@ -2373,7 +2237,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -2400,8 +2264,7 @@ "target": 1, "unwind": "Continue" } - }, - "span": 50 + } } }, { @@ -2421,7 +2284,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -2429,8 +2292,7 @@ } } ] - }, - "span": 50 + } } ], "terminator": { @@ -2452,8 +2314,7 @@ "otherwise": 3 } } - }, - "span": 51 + } } }, { @@ -2483,8 +2344,7 @@ ] } ] - }, - "span": 52 + } } ], "terminator": { @@ -2497,7 +2357,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -2524,8 +2384,7 @@ "target": 4, "unwind": "Continue" } - }, - "span": 52 + } } }, { @@ -2537,7 +2396,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 8, @@ -2571,7 +2429,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -2583,18 +2440,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 53, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 53 + } } }, { @@ -2614,7 +2468,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -2622,8 +2476,7 @@ } } ] - }, - "span": 52 + } } ], "terminator": { @@ -2645,8 +2498,7 @@ "otherwise": 6 } } - }, - "span": 54 + } } }, { @@ -2676,8 +2528,7 @@ ] } ] - }, - "span": 55 + } } ], "terminator": { @@ -2690,7 +2541,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -2717,8 +2568,7 @@ "target": 7, "unwind": "Continue" } - }, - "span": 55 + } } }, { @@ -2730,7 +2580,6 @@ { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 8, @@ -2764,7 +2613,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -2776,18 +2624,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 56, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 56 + } } }, { @@ -2807,7 +2652,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -2815,8 +2660,7 @@ } } ] - }, - "span": 55 + } }, { "kind": { @@ -2843,8 +2687,7 @@ ] } ] - }, - "span": 57 + } } ], "terminator": { @@ -2857,7 +2700,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -2884,8 +2727,7 @@ "target": 8, "unwind": "Continue" } - }, - "span": 57 + } } }, { @@ -2905,7 +2747,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -2913,8 +2755,7 @@ } } ] - }, - "span": 57 + } }, { "kind": { @@ -2941,8 +2782,7 @@ ] } ] - }, - "span": 58 + } } ], "terminator": { @@ -2964,8 +2804,7 @@ "otherwise": 9 } } - }, - "span": 58 + } } }, { @@ -2995,8 +2834,7 @@ ] } ] - }, - "span": 59 + } } ], "terminator": { @@ -3009,7 +2847,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -3036,8 +2874,7 @@ "target": 11, "unwind": "Continue" } - }, - "span": 59 + } } }, { @@ -3049,7 +2886,6 @@ { "Constant": { "const_": { - "id": 12, "kind": { "Allocated": { "align": 8, @@ -3083,7 +2919,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -3095,18 +2930,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 60, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 60 + } } }, { @@ -3126,7 +2958,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -3134,8 +2966,7 @@ } } ] - }, - "span": 59 + } } ], "terminator": { @@ -3157,8 +2988,7 @@ "otherwise": 13 } } - }, - "span": 61 + } } }, { @@ -3188,8 +3018,7 @@ ] } ] - }, - "span": 62 + } } ], "terminator": { @@ -3202,7 +3031,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -3229,8 +3058,7 @@ "target": 14, "unwind": "Continue" } - }, - "span": 62 + } } }, { @@ -3242,7 +3070,6 @@ { "Constant": { "const_": { - "id": 13, "kind": { "Allocated": { "align": 8, @@ -3276,7 +3103,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -3288,18 +3114,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 63, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 63 + } } }, { @@ -3319,7 +3142,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -3327,8 +3150,7 @@ } } ] - }, - "span": 62 + } } ], "terminator": { @@ -3350,8 +3172,7 @@ "otherwise": 16 } } - }, - "span": 64 + } } }, { @@ -3381,8 +3202,7 @@ ] } ] - }, - "span": 65 + } } ], "terminator": { @@ -3395,7 +3215,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -3422,8 +3242,7 @@ "target": 17, "unwind": "Continue" } - }, - "span": 65 + } } }, { @@ -3435,7 +3254,6 @@ { "Constant": { "const_": { - "id": 14, "kind": { "Allocated": { "align": 8, @@ -3469,7 +3287,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -3481,18 +3298,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 66, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 66 + } } }, { @@ -3512,7 +3326,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -3520,8 +3334,7 @@ } } ] - }, - "span": 65 + } }, { "kind": { @@ -3548,8 +3361,7 @@ ] } ] - }, - "span": 67 + } } ], "terminator": { @@ -3562,7 +3374,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -3589,8 +3401,7 @@ "target": 18, "unwind": "Continue" } - }, - "span": 67 + } } }, { @@ -3610,7 +3421,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -3618,8 +3429,7 @@ } } ] - }, - "span": 67 + } }, { "kind": { @@ -3646,8 +3456,7 @@ ] } ] - }, - "span": 68 + } } ], "terminator": { @@ -3669,8 +3478,7 @@ "otherwise": 19 } } - }, - "span": 68 + } } }, { @@ -3700,8 +3508,7 @@ ] } ] - }, - "span": 69 + } } ], "terminator": { @@ -3714,7 +3521,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -3741,8 +3548,7 @@ "target": 21, "unwind": "Continue" } - }, - "span": 69 + } } }, { @@ -3754,7 +3560,6 @@ { "Constant": { "const_": { - "id": 15, "kind": { "Allocated": { "align": 8, @@ -3788,7 +3593,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -3800,18 +3604,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 70, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 70 + } } }, { @@ -3831,7 +3632,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -3839,8 +3640,7 @@ } } ] - }, - "span": 69 + } } ], "terminator": { @@ -3862,8 +3662,7 @@ "otherwise": 23 } } - }, - "span": 71 + } } }, { @@ -3887,7 +3686,6 @@ { "Constant": { "const_": { - "id": 16, "kind": { "Allocated": { "align": 4, @@ -3904,15 +3702,13 @@ } } }, - "span": 72, "user_ty": null } } ] } ] - }, - "span": 72 + } } ], "terminator": { @@ -3936,8 +3732,7 @@ "target": 24, "unwind": "Continue" } - }, - "span": 72 + } } }, { @@ -3949,7 +3744,6 @@ { "Constant": { "const_": { - "id": 17, "kind": { "Allocated": { "align": 8, @@ -3983,7 +3777,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -3995,18 +3788,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 73, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 73 + } } }, { @@ -4030,8 +3820,7 @@ ] } ] - }, - "span": 72 + } }, { "kind": { @@ -4058,8 +3847,7 @@ ] } ] - }, - "span": 74 + } } ], "terminator": { @@ -4072,7 +3860,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -4099,8 +3887,7 @@ "target": 25, "unwind": "Continue" } - }, - "span": 74 + } } }, { @@ -4120,7 +3907,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -4128,8 +3915,7 @@ } } ] - }, - "span": 74 + } } ], "terminator": { @@ -4151,8 +3937,7 @@ "otherwise": 27 } } - }, - "span": 75 + } } }, { @@ -4176,7 +3961,6 @@ { "Constant": { "const_": { - "id": 16, "kind": { "Allocated": { "align": 4, @@ -4193,15 +3977,13 @@ } } }, - "span": 76, "user_ty": null } } ] } ] - }, - "span": 76 + } } ], "terminator": { @@ -4225,8 +4007,7 @@ "target": 28, "unwind": "Continue" } - }, - "span": 76 + } } }, { @@ -4238,7 +4019,6 @@ { "Constant": { "const_": { - "id": 18, "kind": { "Allocated": { "align": 8, @@ -4272,7 +4052,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -4284,18 +4063,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 77, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 77 + } } }, { @@ -4319,8 +4095,7 @@ ] } ] - }, - "span": 76 + } }, { "kind": { @@ -4347,8 +4122,7 @@ ] } ] - }, - "span": 78 + } } ], "terminator": { @@ -4361,7 +4135,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -4388,8 +4162,7 @@ "target": 29, "unwind": "Continue" } - }, - "span": 78 + } } }, { @@ -4409,7 +4182,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -4417,8 +4190,7 @@ } } ] - }, - "span": 78 + } } ], "terminator": { @@ -4440,8 +4212,7 @@ "otherwise": 31 } } - }, - "span": 79 + } } }, { @@ -4465,7 +4236,6 @@ { "Constant": { "const_": { - "id": 16, "kind": { "Allocated": { "align": 4, @@ -4482,15 +4252,13 @@ } } }, - "span": 80, "user_ty": null } } ] } ] - }, - "span": 80 + } } ], "terminator": { @@ -4514,8 +4282,7 @@ "target": 32, "unwind": "Continue" } - }, - "span": 80 + } } }, { @@ -4527,7 +4294,6 @@ { "Constant": { "const_": { - "id": 19, "kind": { "Allocated": { "align": 8, @@ -4561,7 +4327,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -4573,18 +4338,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 81, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 81 + } } }, { @@ -4608,8 +4370,7 @@ ] } ] - }, - "span": 80 + } }, { "kind": { @@ -4630,7 +4391,6 @@ { "Constant": { "const_": { - "id": 16, "kind": { "Allocated": { "align": 4, @@ -4647,15 +4407,13 @@ } } }, - "span": 82, "user_ty": null } } ] } ] - }, - "span": 82 + } } ], "terminator": { @@ -4679,8 +4437,7 @@ "target": 33, "unwind": "Continue" } - }, - "span": 82 + } } }, { @@ -4704,8 +4461,7 @@ ] } ] - }, - "span": 82 + } }, { "kind": { @@ -4732,8 +4488,7 @@ ] } ] - }, - "span": 83 + } } ], "terminator": { @@ -4746,7 +4501,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -4773,8 +4528,7 @@ "target": 34, "unwind": "Continue" } - }, - "span": 83 + } } }, { @@ -4794,7 +4548,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -4802,8 +4556,7 @@ } } ] - }, - "span": 83 + } } ], "terminator": { @@ -4825,8 +4578,7 @@ "otherwise": 36 } } - }, - "span": 84 + } } }, { @@ -4844,7 +4596,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -4861,14 +4612,12 @@ } } }, - "span": 86, "user_ty": null } }, { "Constant": { "const_": { - "id": 21, "kind": { "Allocated": { "align": 4, @@ -4885,15 +4634,13 @@ } } }, - "span": 87, "user_ty": null } } ] } ] - }, - "span": 88 + } } ], "terminator": { @@ -4915,8 +4662,7 @@ "otherwise": 38 } } - }, - "span": 85 + } } }, { @@ -4928,7 +4674,6 @@ { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { "align": 8, @@ -4962,7 +4707,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -4974,18 +4718,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 89, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 89 + } } }, { @@ -5003,7 +4744,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -5020,14 +4760,12 @@ } } }, - "span": 91, "user_ty": null } }, { "Constant": { "const_": { - "id": 23, "kind": { "Allocated": { "align": 4, @@ -5044,15 +4782,13 @@ } } }, - "span": 92, "user_ty": null } } ] } ] - }, - "span": 93 + } } ], "terminator": { @@ -5074,8 +4810,7 @@ "otherwise": 40 } } - }, - "span": 90 + } } }, { @@ -5087,7 +4822,6 @@ { "Constant": { "const_": { - "id": 24, "kind": { "Allocated": { "align": 8, @@ -5121,7 +4855,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -5133,18 +4866,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 94, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 94 + } } }, { @@ -5162,7 +4892,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -5179,14 +4908,12 @@ } } }, - "span": 96, "user_ty": null } }, { "Constant": { "const_": { - "id": 21, "kind": { "Allocated": { "align": 4, @@ -5203,15 +4930,13 @@ } } }, - "span": 97, "user_ty": null } } ] } ] - }, - "span": 98 + } } ], "terminator": { @@ -5233,8 +4958,7 @@ "otherwise": 42 } } - }, - "span": 95 + } } }, { @@ -5246,7 +4970,6 @@ { "Constant": { "const_": { - "id": 25, "kind": { "Allocated": { "align": 8, @@ -5280,7 +5003,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -5292,18 +5014,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 99, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 99 + } } }, { @@ -5321,7 +5040,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -5338,14 +5056,12 @@ } } }, - "span": 101, "user_ty": null } }, { "Constant": { "const_": { - "id": 23, "kind": { "Allocated": { "align": 4, @@ -5362,15 +5078,13 @@ } } }, - "span": 102, "user_ty": null } } ] } ] - }, - "span": 103 + } } ], "terminator": { @@ -5392,8 +5106,7 @@ "otherwise": 44 } } - }, - "span": 100 + } } }, { @@ -5405,7 +5118,6 @@ { "Constant": { "const_": { - "id": 26, "kind": { "Allocated": { "align": 8, @@ -5439,7 +5151,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -5451,18 +5162,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 104, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 104 + } } }, { @@ -5480,7 +5188,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -5497,14 +5204,12 @@ } } }, - "span": 106, "user_ty": null } }, { "Constant": { "const_": { - "id": 21, "kind": { "Allocated": { "align": 4, @@ -5521,15 +5226,13 @@ } } }, - "span": 107, "user_ty": null } } ] } ] - }, - "span": 108 + } } ], "terminator": { @@ -5551,8 +5254,7 @@ "otherwise": 46 } } - }, - "span": 105 + } } }, { @@ -5564,7 +5266,6 @@ { "Constant": { "const_": { - "id": 27, "kind": { "Allocated": { "align": 8, @@ -5598,7 +5299,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -5610,18 +5310,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 109, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 109 + } } }, { @@ -5639,7 +5336,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -5656,14 +5352,12 @@ } } }, - "span": 111, "user_ty": null } }, { "Constant": { "const_": { - "id": 23, "kind": { "Allocated": { "align": 4, @@ -5680,15 +5374,13 @@ } } }, - "span": 112, "user_ty": null } } ] } ] - }, - "span": 113 + } } ], "terminator": { @@ -5710,8 +5402,7 @@ "otherwise": 48 } } - }, - "span": 110 + } } }, { @@ -5723,7 +5414,6 @@ { "Constant": { "const_": { - "id": 28, "kind": { "Allocated": { "align": 8, @@ -5757,7 +5447,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -5769,18 +5458,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 114, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 114 + } } }, { @@ -5798,7 +5484,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -5815,16 +5500,14 @@ } } }, - "span": 116, "user_ty": null } }, - 28 + 0 ] } ] - }, - "span": 117 + } }, { "kind": { @@ -5845,7 +5528,6 @@ { "Constant": { "const_": { - "id": 29, "kind": { "Allocated": { "align": 4, @@ -5862,15 +5544,13 @@ } } }, - "span": 117, "user_ty": null } } ] } ] - }, - "span": 117 + } } ], "terminator": { @@ -5889,7 +5569,6 @@ { "Constant": { "const_": { - "id": 21, "kind": { "Allocated": { "align": 4, @@ -5906,14 +5585,12 @@ } } }, - "span": 115, "user_ty": null } }, { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -5930,7 +5607,6 @@ } } }, - "span": 116, "user_ty": null } } @@ -5939,8 +5615,7 @@ "target": 49, "unwind": "Continue" } - }, - "span": 117 + } } }, { @@ -5952,7 +5627,6 @@ { "Constant": { "const_": { - "id": 30, "kind": { "Allocated": { "align": 8, @@ -5986,7 +5660,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -5998,18 +5671,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 118, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 118 + } } }, { @@ -6027,7 +5697,6 @@ { "Constant": { "const_": { - "id": 21, "kind": { "Allocated": { "align": 4, @@ -6044,14 +5713,12 @@ } } }, - "span": 115, "user_ty": null } }, { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6068,15 +5735,13 @@ } } }, - "span": 116, "user_ty": null } } ] } ] - }, - "span": 117 + } } ], "terminator": { @@ -6098,8 +5763,7 @@ "otherwise": 51 } } - }, - "span": 119 + } } }, { @@ -6117,7 +5781,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6134,16 +5797,14 @@ } } }, - "span": 121, "user_ty": null } }, - 28 + 0 ] } ] - }, - "span": 122 + } }, { "kind": { @@ -6164,7 +5825,6 @@ { "Constant": { "const_": { - "id": 29, "kind": { "Allocated": { "align": 4, @@ -6181,15 +5841,13 @@ } } }, - "span": 122, "user_ty": null } } ] } ] - }, - "span": 122 + } } ], "terminator": { @@ -6208,7 +5866,6 @@ { "Constant": { "const_": { - "id": 21, "kind": { "Allocated": { "align": 4, @@ -6225,14 +5882,12 @@ } } }, - "span": 120, "user_ty": null } }, { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6249,7 +5904,6 @@ } } }, - "span": 121, "user_ty": null } } @@ -6258,8 +5912,7 @@ "target": 52, "unwind": "Continue" } - }, - "span": 122 + } } }, { @@ -6271,7 +5924,6 @@ { "Constant": { "const_": { - "id": 31, "kind": { "Allocated": { "align": 8, @@ -6305,7 +5957,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -6317,18 +5968,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 123, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 123 + } } }, { @@ -6346,7 +5994,6 @@ { "Constant": { "const_": { - "id": 21, "kind": { "Allocated": { "align": 4, @@ -6363,14 +6010,12 @@ } } }, - "span": 120, "user_ty": null } }, { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6387,15 +6032,13 @@ } } }, - "span": 121, "user_ty": null } } ] } ] - }, - "span": 122 + } } ], "terminator": { @@ -6417,8 +6060,7 @@ "otherwise": 54 } } - }, - "span": 124 + } } }, { @@ -6436,7 +6078,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6453,16 +6094,14 @@ } } }, - "span": 126, "user_ty": null } }, - 28 + 0 ] } ] - }, - "span": 127 + } }, { "kind": { @@ -6483,7 +6122,6 @@ { "Constant": { "const_": { - "id": 29, "kind": { "Allocated": { "align": 4, @@ -6500,15 +6138,13 @@ } } }, - "span": 127, "user_ty": null } } ] } ] - }, - "span": 127 + } } ], "terminator": { @@ -6527,7 +6163,6 @@ { "Constant": { "const_": { - "id": 23, "kind": { "Allocated": { "align": 4, @@ -6544,14 +6179,12 @@ } } }, - "span": 125, "user_ty": null } }, { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6568,7 +6201,6 @@ } } }, - "span": 126, "user_ty": null } } @@ -6577,8 +6209,7 @@ "target": 55, "unwind": "Continue" } - }, - "span": 127 + } } }, { @@ -6590,7 +6221,6 @@ { "Constant": { "const_": { - "id": 32, "kind": { "Allocated": { "align": 8, @@ -6624,7 +6254,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -6636,18 +6265,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 128, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 128 + } } }, { @@ -6665,7 +6291,6 @@ { "Constant": { "const_": { - "id": 23, "kind": { "Allocated": { "align": 4, @@ -6682,14 +6307,12 @@ } } }, - "span": 125, "user_ty": null } }, { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6706,15 +6329,13 @@ } } }, - "span": 126, "user_ty": null } } ] } ] - }, - "span": 127 + } } ], "terminator": { @@ -6736,8 +6357,7 @@ "otherwise": 57 } } - }, - "span": 129 + } } }, { @@ -6755,7 +6375,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6772,16 +6391,14 @@ } } }, - "span": 131, "user_ty": null } }, - 28 + 0 ] } ] - }, - "span": 132 + } }, { "kind": { @@ -6802,7 +6419,6 @@ { "Constant": { "const_": { - "id": 29, "kind": { "Allocated": { "align": 4, @@ -6819,15 +6435,13 @@ } } }, - "span": 132, "user_ty": null } } ] } ] - }, - "span": 132 + } } ], "terminator": { @@ -6846,7 +6460,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6863,14 +6476,12 @@ } } }, - "span": 130, "user_ty": null } }, { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -6887,7 +6498,6 @@ } } }, - "span": 131, "user_ty": null } } @@ -6896,8 +6506,7 @@ "target": 58, "unwind": "Continue" } - }, - "span": 132 + } } }, { @@ -6909,7 +6518,6 @@ { "Constant": { "const_": { - "id": 33, "kind": { "Allocated": { "align": 8, @@ -6943,7 +6551,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -6955,18 +6562,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 133, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 133 + } } }, { @@ -6984,7 +6588,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -7001,14 +6604,12 @@ } } }, - "span": 130, "user_ty": null } }, { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 4, @@ -7025,15 +6626,13 @@ } } }, - "span": 131, "user_ty": null } } ] } ] - }, - "span": 132 + } } ], "terminator": { @@ -7055,8 +6654,7 @@ "otherwise": 60 } } - }, - "span": 134 + } } }, { @@ -7086,8 +6684,7 @@ ] } ] - }, - "span": 135 + } } ], "terminator": { @@ -7100,7 +6697,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -7127,8 +6724,7 @@ "target": 61, "unwind": "Continue" } - }, - "span": 135 + } } }, { @@ -7140,7 +6736,6 @@ { "Constant": { "const_": { - "id": 34, "kind": { "Allocated": { "align": 8, @@ -7174,7 +6769,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -7186,18 +6780,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 136, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 136 + } } }, { @@ -7217,7 +6808,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -7225,8 +6816,7 @@ } } ] - }, - "span": 135 + } }, { "kind": { @@ -7253,8 +6843,7 @@ ] } ] - }, - "span": 137 + } } ], "terminator": { @@ -7276,8 +6865,7 @@ "otherwise": 62 } } - }, - "span": 137 + } } }, { @@ -7307,8 +6895,7 @@ ] } ] - }, - "span": 138 + } } ], "terminator": { @@ -7321,7 +6908,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -7348,8 +6935,7 @@ "target": 64, "unwind": "Continue" } - }, - "span": 138 + } } }, { @@ -7361,7 +6947,6 @@ { "Constant": { "const_": { - "id": 35, "kind": { "Allocated": { "align": 8, @@ -7395,7 +6980,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -7407,18 +6991,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 139, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 139 + } } }, { @@ -7438,7 +7019,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -7446,8 +7027,7 @@ } } ] - }, - "span": 138 + } }, { "kind": { @@ -7474,8 +7054,7 @@ ] } ] - }, - "span": 140 + } } ], "terminator": { @@ -7497,8 +7076,7 @@ "otherwise": 65 } } - }, - "span": 140 + } } }, { @@ -7528,8 +7106,7 @@ ] } ] - }, - "span": 141 + } } ], "terminator": { @@ -7542,7 +7119,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -7569,8 +7146,7 @@ "target": 67, "unwind": "Continue" } - }, - "span": 141 + } } }, { @@ -7582,7 +7158,6 @@ { "Constant": { "const_": { - "id": 36, "kind": { "Allocated": { "align": 8, @@ -7616,7 +7191,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -7628,18 +7202,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 142, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 142 + } } }, { @@ -7659,7 +7230,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -7667,8 +7238,7 @@ } } ] - }, - "span": 141 + } }, { "kind": { @@ -7695,8 +7265,7 @@ ] } ] - }, - "span": 143 + } } ], "terminator": { @@ -7709,7 +7278,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -7736,8 +7305,7 @@ "target": 68, "unwind": "Continue" } - }, - "span": 143 + } } }, { @@ -7757,7 +7325,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -7765,8 +7333,7 @@ } } ] - }, - "span": 143 + } }, { "kind": { @@ -7793,8 +7360,7 @@ ] } ] - }, - "span": 144 + } } ], "terminator": { @@ -7816,8 +7382,7 @@ "otherwise": 69 } } - }, - "span": 144 + } } }, { @@ -7847,8 +7412,7 @@ ] } ] - }, - "span": 145 + } } ], "terminator": { @@ -7861,7 +7425,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -7888,8 +7452,7 @@ "target": 71, "unwind": "Continue" } - }, - "span": 145 + } } }, { @@ -7901,7 +7464,6 @@ { "Constant": { "const_": { - "id": 37, "kind": { "Allocated": { "align": 8, @@ -7935,7 +7497,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -7947,18 +7508,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 146, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 146 + } } }, { @@ -7978,7 +7536,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -7986,8 +7544,7 @@ } } ] - }, - "span": 145 + } }, { "kind": { @@ -8014,8 +7571,7 @@ ] } ] - }, - "span": 147 + } } ], "terminator": { @@ -8037,8 +7593,7 @@ "otherwise": 72 } } - }, - "span": 147 + } } }, { @@ -8068,8 +7623,7 @@ ] } ] - }, - "span": 148 + } } ], "terminator": { @@ -8082,7 +7636,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -8109,8 +7663,7 @@ "target": 74, "unwind": "Continue" } - }, - "span": 148 + } } }, { @@ -8122,7 +7675,6 @@ { "Constant": { "const_": { - "id": 38, "kind": { "Allocated": { "align": 8, @@ -8156,7 +7708,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -8168,18 +7719,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 149, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 149 + } } }, { @@ -8199,7 +7747,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -8207,8 +7755,7 @@ } } ] - }, - "span": 148 + } }, { "kind": { @@ -8235,8 +7782,7 @@ ] } ] - }, - "span": 150 + } } ], "terminator": { @@ -8258,8 +7804,7 @@ "otherwise": 75 } } - }, - "span": 150 + } } }, { @@ -8289,8 +7834,7 @@ ] } ] - }, - "span": 151 + } } ], "terminator": { @@ -8303,7 +7847,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -8330,8 +7874,7 @@ "target": 77, "unwind": "Continue" } - }, - "span": 151 + } } }, { @@ -8343,7 +7886,6 @@ { "Constant": { "const_": { - "id": 39, "kind": { "Allocated": { "align": 8, @@ -8377,7 +7919,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -8389,18 +7930,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 152, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 152 + } } }, { @@ -8420,7 +7958,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -8428,8 +7966,7 @@ } } ] - }, - "span": 151 + } }, { "kind": { @@ -8456,8 +7993,7 @@ ] } ] - }, - "span": 153 + } } ], "terminator": { @@ -8470,7 +8006,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -8497,8 +8033,7 @@ "target": 78, "unwind": "Continue" } - }, - "span": 153 + } } }, { @@ -8518,7 +8053,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -8526,8 +8061,7 @@ } } ] - }, - "span": 153 + } }, { "kind": { @@ -8554,8 +8088,7 @@ ] } ] - }, - "span": 154 + } } ], "terminator": { @@ -8577,15 +8110,13 @@ "otherwise": 79 } } - }, - "span": 154 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 155 + "kind": "Return" } }, { @@ -8597,7 +8128,6 @@ { "Constant": { "const_": { - "id": 40, "kind": { "Allocated": { "align": 8, @@ -8631,7 +8161,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -8643,436 +8172,329 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 156, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 156 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 157 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 158 + "mutability": "Not" }, { - "mutability": "Not", - "span": 159 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 50 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 50 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 53 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 52 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 52 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 58 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 57 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 57 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 60 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 59 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 59 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 63 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 62 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 62 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 66 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 68 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 65 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 65 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 67 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 67 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 70 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 69 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 69 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 73 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 74 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 72 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 72 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 74 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 77 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 78 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 76 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 76 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 78 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 81 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 83 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 80 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 80 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 82 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 82 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 83 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 89 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 88 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 94 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 93 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 99 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 98 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 104 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 103 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 109 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 108 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 114 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 113 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 118 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 117 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 117 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 117 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 123 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 122 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 122 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 122 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 128 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 127 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 127 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 127 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 133 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 132 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 132 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 132 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 136 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 137 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 135 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 135 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 139 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 140 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 138 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 138 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 142 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 144 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 143 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 141 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 141 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 143 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 146 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 147 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 145 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 145 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 149 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 150 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 148 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 148 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 152 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 154 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 153 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 151 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 151 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 153 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 156 + "mutability": "Mut" } ], - "span": 160, "spread_arg": null, "var_debug_info": [ { @@ -9080,8 +8502,7 @@ "composite": null, "name": "x", "source_info": { - "scope": 0, - "span": 158 + "scope": 0 }, "value": { "Place": { @@ -9095,8 +8516,7 @@ "composite": null, "name": "y", "source_info": { - "scope": 0, - "span": 159 + "scope": 0 }, "value": { "Place": { @@ -9107,7 +8527,6 @@ } ] }, - "id": 6, "name": "test_binop" } }, @@ -9118,129 +8537,83 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 0, "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, { "kind": { "Assign": [ { - "local": 8, + "local": 2, "projection": [] }, { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] + }, + "user_ty": null } - ] + } } ] - }, - "span": 2 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 3, "projection": [] }, { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 10, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } } ] - }, - "span": 2 + } } ], "terminator": { "kind": { "Call": { "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, { "Move": { "local": 2, @@ -9252,214 +8625,115 @@ "local": 3, "projection": [] } - }, - { - "Move": { - "local": 4, - "projection": [] - } } ], "destination": { - "local": 5, + "local": 1, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 1 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 - } - ], + "statements": [], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 9 + "mutability": "Not" }, { - "mutability": "Not", - "span": 10 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 - }, - { - "mutability": "Not", - "span": 3 + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, + "argument_index": null, "composite": null, - "name": "sigpipe", + "name": "x", "source_info": { - "scope": 0, - "span": 12 + "scope": 1 }, "value": { - "Place": { - "local": 4, - "projection": [] + "Const": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } }, { "argument_index": null, "composite": null, - "name": "v", + "name": "y", "source_info": { - "scope": 1, - "span": 6 + "scope": 2 }, "value": { - "Place": { - "local": 0, - "projection": [] + "Const": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 10, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } } ] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "main" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN5binop4main17h" } ], "types": [ @@ -9501,54 +8775,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -9964,39 +9190,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/char-trivial.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/char-trivial.smir.json.expected similarity index 77% rename from tests/integration/programs/char-trivial.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/char-trivial.smir.json.expected index 813cd603..c7bfdbc2 100644 --- a/tests/integration/programs/char-trivial.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/char-trivial.smir.json.expected @@ -108,7 +108,6 @@ "Use": { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -125,14 +124,12 @@ } } }, - "span": 51, "user_ty": null } } } ] - }, - "span": 52 + } } ], "terminator": { @@ -154,15 +151,13 @@ "otherwise": 2 } } - }, - "span": 50 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 53 + "kind": "Return" } }, { @@ -174,7 +169,6 @@ { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 8, @@ -208,7 +202,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -220,36 +213,29 @@ "func": { "Constant": { "const_": { - "id": 10, "kind": "ZeroSized" }, - "span": 54, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 54 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 52 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 54 + "mutability": "Mut" } ], - "span": 57, "spread_arg": null, "var_debug_info": [ { @@ -257,13 +243,11 @@ "composite": null, "name": "a", "source_info": { - "scope": 1, - "span": 56 + "scope": 1 }, "value": { "Const": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -280,14 +264,12 @@ } } }, - "span": 51, "user_ty": null } } } ] }, - "id": 6, "name": "main" } }, @@ -298,63 +280,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -365,90 +418,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -458,46 +490,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -508,119 +547,26 @@ "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, { "kind": { "Assign": [ { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 15 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 17 - }, - { - "kind": { - "Assign": [ - { - "local": 4, + "local": 4, "projection": [] }, { @@ -632,7 +578,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -640,8 +586,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -662,18 +607,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -681,8 +623,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -703,18 +644,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -722,14 +660,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -738,42 +674,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -782,13 +682,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -796,8 +696,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -811,73 +710,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 - }, - { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -885,8 +763,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -896,7 +773,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -908,8 +785,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -917,25 +793,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -946,62 +806,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1038,52 +986,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1117,8 +1111,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1145,10 +1138,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1157,8 +1148,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1173,15 +1163,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1196,222 +1184,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1421,168 +1264,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1624,54 +1348,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2025,39 +1701,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/closure-args.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/closure-args.smir.json.expected similarity index 79% rename from tests/integration/programs/closure-args.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/closure-args.smir.json.expected index 72c44917..4ed8a99f 100644 --- a/tests/integration/programs/closure-args.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/closure-args.smir.json.expected @@ -131,8 +131,7 @@ ] } ] - }, - "span": 50 + } }, { "kind": { @@ -148,7 +147,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -165,14 +163,12 @@ } } }, - "span": 52, "user_ty": null } }, { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 4, @@ -189,7 +185,6 @@ } } }, - "span": 53, "user_ty": null } } @@ -197,8 +192,7 @@ ] } ] - }, - "span": 51 + } } ], "terminator": { @@ -225,18 +219,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 50, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 51 + } } }, { @@ -260,15 +251,13 @@ "otherwise": 3 } } - }, - "span": 54 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 55 + "kind": "Return" } }, { @@ -280,7 +269,6 @@ { "Constant": { "const_": { - "id": 13, "kind": { "Allocated": { "align": 8, @@ -314,7 +302,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -326,48 +313,38 @@ "func": { "Constant": { "const_": { - "id": 12, "kind": "ZeroSized" }, - "span": 56, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 56 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 57 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 58 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 50 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" } ], - "span": 59, "spread_arg": null, "var_debug_info": [ { @@ -375,23 +352,19 @@ "composite": null, "name": "sum", "source_info": { - "scope": 1, - "span": 58 + "scope": 1 }, "value": { "Const": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 32, "user_ty": null } } } ] }, - "id": 6, "name": "main" } }, @@ -402,296 +375,427 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 3, "blocks": [ { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + "statements": [ + { + "kind": { + "Assign": [ { - "Move": { - "local": 1, - "projection": [] - } + "local": 4, + "projection": [] }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" + "CheckedBinaryOp": [ + "Add", + { + "Copy": { + "local": 2, + "projection": [] + } }, - "span": 32, - "user_ty": null - } + { + "Copy": { + "local": 3, + "projection": [] + } + } + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { + "local": 4, + "projection": [ + { + "Field": [ + 1, + 0 + ] + } + ] } - ], - "destination": { - "local": 0, - "projection": [] }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" + "expected": false, + "msg": { + "Overflow": [ + "Add", + { + "Copy": { + "local": 2, + "projection": [] + } }, - "span": 31, - "user_ty": null - } + { + "Copy": { + "local": 3, + "projection": [] + } + } + ] }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + "statements": [ + { + "kind": { + "Assign": [ { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "local": 0, + "projection": [] + }, + { + "Use": { + "Move": { + "local": 4, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } } } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + ] } - }, - "span": 35 - } - }, - { - "statements": [], + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Mut" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "f", + "name": "x", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { - "local": 1, + "local": 2, "projection": [] } } }, { - "argument_index": null, + "argument_index": 3, "composite": null, - "name": "result", + "name": "y", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 3, "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "main::{closure#0}" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + "symbol_name": "_ZN12closure_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 0, + "local": 7, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] } - }, - "span": 46, - "user_ty": null - } - } + } + ] + ] } ] - }, - "span": 46 + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 7 + } } ], "terminator": { - "kind": "Return", - "span": 45 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 47 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 48 + "mutability": "Not" } ], - "span": 49, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "main", "source_info": { - "scope": 0, - "span": 48 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -705,20 +809,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -736,7 +837,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -744,8 +845,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -766,18 +866,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -785,8 +882,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -807,18 +903,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -826,14 +919,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -842,42 +933,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -886,13 +941,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -900,8 +955,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -915,73 +969,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -989,8 +1022,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1000,7 +1032,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1012,8 +1044,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1021,25 +1052,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1050,70 +1065,47 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], - "destination": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ { "statements": [], "terminator": { @@ -1121,72 +1113,102 @@ "Call": { "args": [ { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } ], "destination": { - "local": 0, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, - "target": 1, - "unwind": "Continue" + "target": 2, + "unwind": "Unreachable" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1196,43 +1218,17 @@ "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 43 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 3, - "projection": [] + "local": 1, + "projection": [ + "Deref" + ] } }, { @@ -1249,348 +1245,112 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, "unwind": "Continue" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 3, + "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "CheckedBinaryOp": [ - "Add", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Copy": { - "local": 3, - "projection": [] - } - } - ] - } - ] - }, - "span": 60 - } - ], + "statements": [], "terminator": { "kind": { - "Assert": { - "cond": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { "Move": { - "local": 4, - "projection": [ - { - "Field": [ - 1, - 32 - ] - } - ] + "local": 1, + "projection": [] } }, - "expected": false, - "msg": { - "Overflow": [ - "Add", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Copy": { - "local": 3, - "projection": [] - } - } - ] - }, "target": 1, "unwind": "Continue" } - }, - "span": 60 + } } }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 4, - "projection": [ - { - "Field": [ - 0, - 16 - ] - } - ] - } - } - } - ] - }, - "span": 60 - } - ], + "statements": [], "terminator": { - "kind": "Return", - "span": 61 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 62 - }, - { - "mutability": "Mut", - "span": 63 - }, - { - "mutability": "Not", - "span": 64 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 65 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 60 + "mutability": "Not" } ], - "span": 63, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 2, - "composite": null, - "name": "x", - "source_info": { - "scope": 0, - "span": 64 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "y", - "source_info": { - "scope": 0, - "span": 65 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - } - ] + "spread_arg": 2, + "var_debug_info": [] }, - "id": 7, - "name": "main::{closure#0}" + "name": ">::call_once" } }, - "symbol_name": "_ZN12closure_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 2, "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, { "kind": { "Assign": [ { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, + "local": 3, "projection": [] }, { @@ -1598,59 +1358,25 @@ { "kind": "ReErased" }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, { - "Copy": { - "local": 7, - "projection": [] + "Mut": { + "kind": "Default" } }, - 5 + { + "local": 1, + "projection": [] + } ] } ] - }, - "span": 2 + } } ], "terminator": { "kind": { "Call": { "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, { "Move": { "local": 3, @@ -1659,40 +1385,135 @@ }, { "Move": { - "local": 4, + "local": 2, "projection": [] } } ], "destination": { - "local": 5, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, "target": 1, + "unwind": { + "Cleanup": 3 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 2, "unwind": "Continue" } - }, - "span": 1 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } + } } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1702,168 +1523,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1905,54 +1607,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2463,39 +2117,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/closure-no-args.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/closure-no-args.smir.json.expected similarity index 77% rename from tests/integration/programs/closure-no-args.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/closure-no-args.smir.json.expected index dacc8052..b6629f20 100644 --- a/tests/integration/programs/closure-no-args.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/closure-no-args.smir.json.expected @@ -125,8 +125,7 @@ ] } ] - }, - "span": 50 + } } ], "terminator": { @@ -142,10 +141,8 @@ { "Constant": { "const_": { - "id": 4, "kind": "ZeroSized" }, - "span": 32, "user_ty": null } } @@ -157,18 +154,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 50, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 51 + } } }, { @@ -192,15 +186,13 @@ "otherwise": 3 } } - }, - "span": 52 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 53 + "kind": "Return" } }, { @@ -212,7 +204,6 @@ { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 8, @@ -246,7 +237,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -258,44 +248,35 @@ "func": { "Constant": { "const_": { - "id": 10, "kind": "ZeroSized" }, - "span": 54, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 54 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 56 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 50 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 54 + "mutability": "Mut" } ], - "span": 57, "spread_arg": null, "var_debug_info": [ { @@ -303,23 +284,19 @@ "composite": null, "name": "sum", "source_info": { - "scope": 1, - "span": 56 + "scope": 1 }, "value": { "Const": { "const_": { - "id": 12, "kind": "ZeroSized" }, - "span": 32, "user_ty": null } } } ] }, - "id": 6, "name": "main" } }, @@ -333,60 +310,196 @@ "arg_count": 1, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], "terminator": { - "kind": "Return", - "span": 44 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 44 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 44 + "mutability": "Mut" } ], - "span": 44, "spread_arg": null, "var_debug_info": [] }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + "name": "main::{closure#0}" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + "symbol_name": "_ZN15closure_no_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -397,90 +510,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -490,209 +582,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 59, - "user_ty": null - } - } - } - ] - }, - "span": 59 - } - ], - "terminator": { - "kind": "Return", - "span": 58 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 60 - }, - { - "mutability": "Mut", - "span": 61 - } - ], - "span": 61, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 7, - "name": "main::{closure#0}" - } - }, - "symbol_name": "_ZN15closure_no_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -706,20 +642,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -737,7 +670,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -745,8 +678,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -767,18 +699,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -786,8 +715,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -808,18 +736,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -827,14 +752,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -843,42 +766,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -887,13 +774,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -901,8 +788,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -916,73 +802,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -990,8 +855,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1001,7 +865,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1013,8 +877,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1022,25 +885,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1051,62 +898,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1143,52 +1078,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1222,8 +1203,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1250,10 +1230,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1262,8 +1240,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1278,15 +1255,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1301,222 +1276,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1526,168 +1356,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1724,54 +1435,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2158,39 +1821,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/const-arithm-simple.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/const-arithm-simple.smir.json.expected similarity index 78% rename from tests/integration/programs/const-arithm-simple.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/const-arithm-simple.smir.json.expected index 24dac3cf..6a48df54 100644 --- a/tests/integration/programs/const-arithm-simple.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/const-arithm-simple.smir.json.expected @@ -106,7 +106,6 @@ "Use": { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 8, @@ -127,14 +126,12 @@ } } }, - "span": 58, "user_ty": null } } } ] - }, - "span": 59 + } }, { "kind": { @@ -147,7 +144,6 @@ "Use": { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 8, @@ -168,14 +164,12 @@ } } }, - "span": 60, "user_ty": null } } } ] - }, - "span": 61 + } } ], "terminator": { @@ -202,18 +196,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 56, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 57 + } } }, { @@ -237,8 +228,7 @@ "otherwise": 3 } } - }, - "span": 62 + } } }, { @@ -250,7 +240,6 @@ { "Constant": { "const_": { - "id": 13, "kind": { "Allocated": { "align": 8, @@ -284,7 +273,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -296,51 +284,41 @@ "func": { "Constant": { "const_": { - "id": 12, "kind": "ZeroSized" }, - "span": 63, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 63 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 64 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 65 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 66 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 59 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 61 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 63 + "mutability": "Mut" } ], - "span": 69, "spread_arg": null, "var_debug_info": [ { @@ -348,13 +326,11 @@ "composite": null, "name": "x", "source_info": { - "scope": 1, - "span": 67 + "scope": 1 }, "value": { "Const": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 8, @@ -375,7 +351,6 @@ } } }, - "span": 58, "user_ty": null } } @@ -385,13 +360,11 @@ "composite": null, "name": "y", "source_info": { - "scope": 2, - "span": 68 + "scope": 2 }, "value": { "Const": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 8, @@ -412,7 +385,6 @@ } } }, - "span": 60, "user_ty": null } } @@ -422,8 +394,7 @@ "composite": null, "name": "z", "source_info": { - "scope": 3, - "span": 66 + "scope": 3 }, "value": { "Place": { @@ -434,7 +405,6 @@ } ] }, - "id": 7, "name": "main" } }, @@ -445,63 +415,224 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 2, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "BinaryOp": [ + "Gt", + { + "Copy": { + "local": 1, + "projection": [] + } + }, + { + "Copy": { + "local": 2, + "projection": [] + } + } + ] + } + ] + } + } + ], "terminator": { - "kind": "Return", - "span": 44 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 44 + "mutability": "Mut" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 44 + "mutability": "Not" } ], - "span": 44, "spread_arg": null, - "var_debug_info": [] + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "x", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "y", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + "name": "test" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + "symbol_name": "_ZN19const_arithm_simple4test17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -512,90 +643,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -605,136 +715,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 + "Place": { + "local": 3, + "projection": [] } - ], - "terminator": { - "kind": "Return", - "span": 45 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 }, { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, + "argument_index": 4, "composite": null, - "name": "self", + "name": "sigpipe", "source_info": { - "scope": 0, - "span": 48 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -748,20 +775,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -779,7 +803,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -787,8 +811,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -809,18 +832,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -828,8 +848,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -850,18 +869,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -869,14 +885,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -885,42 +899,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -929,13 +907,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -943,8 +921,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -958,73 +935,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1032,8 +988,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1043,7 +998,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1055,8 +1010,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1064,25 +1018,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1093,70 +1031,47 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ { "statements": [], "terminator": { @@ -1164,141 +1079,58 @@ "Call": { "args": [ { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } ], "destination": { - "local": 0, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, - "target": 1, - "unwind": "Continue" + "target": 2, + "unwind": "Unreachable" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "BinaryOp": [ - "Gt", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - } - ] - }, - "span": 51 - } - ], - "terminator": { - "kind": "Return", - "span": 50 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Not", - "span": 53 - }, - { - "mutability": "Not", - "span": 54 - } - ], - "span": 55, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "x", + "name": "f", "source_info": { - "scope": 0, - "span": 53 + "scope": 0 }, "value": { "Place": { @@ -1308,27 +1140,41 @@ } }, { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "y", + "name": "result", "source_info": { - "scope": 0, - "span": 54 + "scope": 1 }, "value": { "Place": { - "local": 2, + "local": 0, "projection": [] } } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } } ] }, - "id": 6, - "name": "test" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN19const_arithm_simple4test17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1338,43 +1184,17 @@ "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 43 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 3, - "projection": [] + "local": 1, + "projection": [ + "Deref" + ] } }, { @@ -1391,93 +1211,94 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, - "unwind": { - "Cleanup": 3 - } + "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 43 + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } + "mutability": "Not" }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ { "statements": [], "terminator": { "kind": { - "Drop": { - "place": { - "local": 1, + "Call": { + "args": [], + "destination": { + "local": 0, "projection": [] }, - "target": 4, - "unwind": "Terminate" + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": ">::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" @@ -1487,75 +1308,15 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 2, "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, { "kind": { "Assign": [ { - "local": 7, + "local": 3, "projection": [] }, { @@ -1563,59 +1324,25 @@ { "kind": "ReErased" }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, { - "Copy": { - "local": 7, - "projection": [] + "Mut": { + "kind": "Default" } }, - 5 + { + "local": 1, + "projection": [] + } ] } ] - }, - "span": 2 + } } ], "terminator": { "kind": { "Call": { "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, { "Move": { "local": 3, @@ -1624,40 +1351,135 @@ }, { "Move": { - "local": 4, + "local": 2, "projection": [] } } ], "destination": { - "local": 5, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, "target": 1, + "unwind": { + "Cleanup": 3 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 2, "unwind": "Continue" } - }, - "span": 1 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } + } } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1667,168 +1489,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1877,54 +1580,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2278,39 +1933,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/div.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/div.smir.json.expected similarity index 79% rename from tests/integration/programs/div.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/div.smir.json.expected index 66769d75..6181e455 100644 --- a/tests/integration/programs/div.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/div.smir.json.expected @@ -116,7 +116,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -133,14 +132,12 @@ } } }, - "span": 52, "user_ty": null } }, { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 4, @@ -157,15 +154,13 @@ } } }, - "span": 51, "user_ty": null } } ] } ] - }, - "span": 51 + } } ], "terminator": { @@ -182,7 +177,6 @@ "DivisionByZero": { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -199,7 +193,6 @@ } } }, - "span": 50, "user_ty": null } } @@ -207,8 +200,7 @@ "target": 1, "unwind": "Continue" } - }, - "span": 51 + } } }, { @@ -226,7 +218,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -243,14 +234,12 @@ } } }, - "span": 52, "user_ty": null } }, { "Constant": { "const_": { - "id": 12, "kind": { "Allocated": { "align": 4, @@ -267,15 +256,13 @@ } } }, - "span": 51, "user_ty": null } } ] } ] - }, - "span": 51 + } }, { "kind": { @@ -290,7 +277,6 @@ { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -307,14 +293,12 @@ } } }, - "span": 50, "user_ty": null } }, { "Constant": { "const_": { - "id": 13, "kind": { "Allocated": { "align": 4, @@ -331,15 +315,13 @@ } } }, - "span": 51, "user_ty": null } } ] } ] - }, - "span": 51 + } }, { "kind": { @@ -366,8 +348,7 @@ ] } ] - }, - "span": 51 + } } ], "terminator": { @@ -386,7 +367,6 @@ { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -403,14 +383,12 @@ } } }, - "span": 50, "user_ty": null } }, { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -427,7 +405,6 @@ } } }, - "span": 52, "user_ty": null } } @@ -436,8 +413,7 @@ "target": 2, "unwind": "Continue" } - }, - "span": 51 + } } }, { @@ -455,7 +431,6 @@ { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -472,14 +447,12 @@ } } }, - "span": 50, "user_ty": null } }, { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -496,15 +469,13 @@ } } }, - "span": 52, "user_ty": null } } ] } ] - }, - "span": 51 + } } ], "terminator": { @@ -526,15 +497,13 @@ "otherwise": 4 } } - }, - "span": 53 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 54 + "kind": "Return" } }, { @@ -546,7 +515,6 @@ { "Constant": { "const_": { - "id": 15, "kind": { "Allocated": { "align": 8, @@ -580,7 +548,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -592,56 +559,44 @@ "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 55, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 55 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" } ], - "span": 57, "spread_arg": null, "var_debug_info": [] }, - "id": 6, "name": "main" } }, @@ -652,63 +607,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -719,90 +745,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -812,136 +817,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -955,20 +877,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -986,7 +905,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -994,8 +913,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -1016,18 +934,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -1035,8 +950,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -1057,18 +971,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -1076,14 +987,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -1092,42 +1001,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1136,13 +1009,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -1150,8 +1023,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -1165,73 +1037,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 - }, - { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1239,8 +1090,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1250,7 +1100,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1262,8 +1112,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1271,25 +1120,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1300,62 +1133,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1392,52 +1313,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1471,8 +1438,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1499,10 +1465,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1511,8 +1475,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1527,15 +1490,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1550,222 +1511,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1775,168 +1591,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1978,54 +1675,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2379,39 +2028,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/double-ref-deref.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/double-ref-deref.smir.json.expected similarity index 78% rename from tests/integration/programs/double-ref-deref.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/double-ref-deref.smir.json.expected index 35a74128..cfd20951 100644 --- a/tests/integration/programs/double-ref-deref.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/double-ref-deref.smir.json.expected @@ -109,7 +109,6 @@ "Use": { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -126,14 +125,12 @@ } } }, - "span": 51, "user_ty": null } } } ] - }, - "span": 51 + } }, { "kind": { @@ -155,8 +152,7 @@ ] } ] - }, - "span": 52 + } }, { "kind": { @@ -178,8 +174,7 @@ ] } ] - }, - "span": 53 + } }, { "kind": { @@ -197,8 +192,7 @@ } } ] - }, - "span": 54 + } }, { "kind": { @@ -218,8 +212,7 @@ } } ] - }, - "span": 54 + } } ], "terminator": { @@ -241,15 +234,13 @@ "otherwise": 2 } } - }, - "span": 50 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 55 + "kind": "Return" } }, { @@ -261,7 +252,6 @@ { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 8, @@ -295,7 +285,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -307,52 +296,41 @@ "func": { "Constant": { "const_": { - "id": 10, "kind": "ZeroSized" }, - "span": 56, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 56 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 57 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 58 + "mutability": "Not" }, { - "mutability": "Not", - "span": 59 + "mutability": "Not" }, { - "mutability": "Not", - "span": 60 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 54 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 60 + "mutability": "Mut" } ], - "span": 61, "spread_arg": null, "var_debug_info": [ { @@ -360,8 +338,7 @@ "composite": null, "name": "a", "source_info": { - "scope": 1, - "span": 58 + "scope": 1 }, "value": { "Place": { @@ -375,8 +352,7 @@ "composite": null, "name": "b", "source_info": { - "scope": 2, - "span": 59 + "scope": 2 }, "value": { "Place": { @@ -390,8 +366,7 @@ "composite": null, "name": "c", "source_info": { - "scope": 3, - "span": 60 + "scope": 3 }, "value": { "Place": { @@ -402,7 +377,6 @@ } ] }, - "id": 6, "name": "main" } }, @@ -413,63 +387,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -480,90 +525,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -573,136 +597,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -716,20 +657,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -747,7 +685,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -755,8 +693,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -777,18 +714,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -796,8 +730,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -818,18 +751,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -837,14 +767,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -853,42 +781,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -897,13 +789,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -911,8 +803,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -926,73 +817,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1000,8 +870,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1011,7 +880,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1023,8 +892,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1032,25 +900,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1061,62 +913,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1153,52 +1093,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1232,8 +1218,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1260,10 +1245,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1272,8 +1255,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1288,15 +1270,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1311,222 +1291,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1536,168 +1371,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1734,54 +1450,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2201,39 +1869,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/enum.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/enum.smir.json.expected similarity index 75% rename from tests/integration/programs/enum.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/enum.smir.json.expected index 1a39027a..83511e53 100644 --- a/tests/integration/programs/enum.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/enum.smir.json.expected @@ -48,140 +48,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 1, + "local": 7, "projection": [] }, { "Aggregate": [ { - "Adt": [ - 7, + "Closure": [ 0, - [], - null, - null + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] ] }, - [] + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] ] } ] - }, - "span": 51 + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } } ], - "terminator": { - "kind": "Return", - "span": 50 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Not", - "span": 53 - } - ], - "span": 54, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 1, - "span": 53 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - }, - "id": 6, - "name": "main" - } - }, - "symbol_name": "_ZN4enum4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -192,229 +186,125 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } + "mutability": "Not" }, { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } + "mutability": "Not" }, { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ + "mutability": "Not" + }, + { + "mutability": "Mut" + }, { - "mutability": "Mut", - "span": 47 + "mutability": "Not" }, { - "mutability": "Not", - "span": 48 + "mutability": "Not" } ], - "span": 49, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "main", "source_info": { - "scope": 0, - "span": 48 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -428,20 +318,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -459,7 +346,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -467,8 +354,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -489,18 +375,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -508,8 +391,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -530,18 +412,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -549,14 +428,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -565,42 +442,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -609,13 +450,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -623,8 +464,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -638,109 +478,220 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": null, + "composite": null, + "name": "main", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + }, + "name": "std::rt::lang_start::<()>::{closure#0}" + } + }, + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 - }, - { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 17 - }, - { - "mutability": "Mut", - "span": 22 - }, - { - "mutability": "Mut", - "span": 23 + "mutability": "Not" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "main", + "name": "f", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] + "projection": [] } } }, { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "self", + "name": "result", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { - "local": 2, + "local": 0, "projection": [] } } @@ -748,25 +699,25 @@ { "argument_index": 1, "composite": null, - "name": "self", + "name": "dummy", "source_info": { - "scope": 2, - "span": 30 + "scope": 2 }, "value": { - "Place": { - "local": 5, - "projection": [] + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } } ] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -780,55 +731,65 @@ "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": ">::call_once" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -842,74 +803,48 @@ "terminator": { "kind": { "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], + "args": [], "destination": { "local": 0, "projection": [] }, "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null + "Move": { + "local": 1, + "projection": [] } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -944,8 +879,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -972,10 +906,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -984,8 +916,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1000,15 +931,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1023,41 +952,33 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 43 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1068,273 +989,86 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 1, "blocks": [ { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 - } - ], + "statements": [], "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ { - "local": 0, + "local": 1, "projection": [] }, { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } + "Aggregate": [ + { + "Adt": [ + 0, + 0, + [], + null, + null ] - } - } + }, + [] + ] } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 - }, - { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "main", + "name": "a", "source_info": { - "scope": 0, - "span": 9 + "scope": 1 }, "value": { "Place": { @@ -1342,74 +1076,75 @@ "projection": [] } } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, + } + ] + }, + "name": "main" + } + }, + "symbol_name": "_ZN4enum4main17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } } + ], + "terminator": { + "kind": "Return" } - }, + } + ], + "locals": [ { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } + "mutability": "Mut" }, { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } + "mutability": "Not" } - ] + ], + "spread_arg": null, + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1541,54 +1276,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -1733,8 +1420,7 @@ } } }, - "mutability": "Mut", - "pointee_type": "elided" + "mutability": "Mut" } } ], @@ -1766,8 +1452,7 @@ } } }, - "mutability": "Not", - "pointee_type": "elided" + "mutability": "Not" } } ], @@ -1799,41 +1484,7 @@ } } }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Mut", - "pointee_type": "elided" + "mutability": "Not" } } ], @@ -1865,8 +1516,7 @@ } } }, - "mutability": "Not", - "pointee_type": "elided" + "mutability": "Mut" } } ], @@ -1898,8 +1548,7 @@ } } }, - "mutability": "Not", - "pointee_type": "elided" + "mutability": "Not" } } ], @@ -1955,8 +1604,7 @@ } } }, - "mutability": "Not", - "pointee_type": "elided" + "mutability": "Not" } } ], diff --git a/tests/integration/programs/fibonacci.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/fibonacci.smir.json.expected similarity index 80% rename from tests/integration/programs/fibonacci.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/fibonacci.smir.json.expected index 38fd6dec..0b4f22c4 100644 --- a/tests/integration/programs/fibonacci.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/fibonacci.smir.json.expected @@ -98,186 +98,207 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 5, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] } } - }, - "span": 68, - "user_ty": null - } - } - ], - "destination": { - "local": 1, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 12, - "kind": "ZeroSized" - }, - "span": 67, - "user_ty": null + ] + ] } - }, - "target": 1, - "unwind": "Continue" + ] } }, - "span": 69 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 1, + { + "kind": { + "Assign": [ + { + "local": 6, "projection": [] - } - }, - "targets": { - "branches": [ - [ - 5, - 2 + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } ] - ], - "otherwise": 3 - } + } + ] } }, - "span": 70 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 71 - } - }, - { - "statements": [], + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 26, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], "destination": { - "local": 2, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 72, "user_ty": null } }, - "target": null, + "target": 1, "unwind": "Continue" } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 5 + } }, - "span": 72 + { + "kind": { + "StorageDead": 7 + } + } + ], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 73 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 74 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 72 + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 75, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "ans", + "name": "main", "source_info": { - "scope": 1, - "span": 74 + "scope": 0 }, "value": { "Place": { @@ -285,49 +306,55 @@ "projection": [] } } - } - ] - }, - "id": 7, - "name": "main" - } - }, - "symbol_name": "_ZN9fibonacci4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ + }, { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } } - } - ], - "locals": [ + }, { - "mutability": "Mut", - "span": 44 + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } }, { - "mutability": "Not", - "span": 44 + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } + } } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] + ] }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -337,63 +364,94 @@ "arg_count": 1, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 4, "projection": [] } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } } ], "destination": { - "local": 0, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 4 + } + } + ], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] } } ], @@ -404,101 +462,162 @@ "func": { "Constant": { "const_": { - "id": 5, "kind": "ZeroSized" }, - "span": 34, "user_ty": null } }, "target": 2, - "unwind": "Unreachable" + "unwind": "Continue" } - }, - "span": 35 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 0 + ] + }, + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + 0 + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 2 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 39 + "mutability": "Mut" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { "local": 1, - "projection": [] + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] } } }, { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "result", + "name": "self", "source_info": { - "scope": 1, - "span": 40 + "scope": 1 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -509,635 +628,102 @@ "blocks": [ { "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 1, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ], - [ - 1, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 50 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "CheckedBinaryOp": [ - "Sub", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 2, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null - } - } - ] - } - ] - }, - "span": 52 - } - ], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 4, - "projection": [ - { - "Field": [ - 1, - 25 - ] - } - ] - } - }, - "expected": false, - "msg": { - "Overflow": [ - "Sub", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 2, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null - } - } - ] - }, - "target": 4, - "unwind": "Continue" - } - }, - "span": 52 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 53, - "user_ty": null - } - } - } - ] - }, - "span": 53 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 9 - } - }, - "span": 53 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 54, - "user_ty": null - } - } - } - ] - }, - "span": 54 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 9 - } - }, - "span": 54 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 4, - "projection": [ - { - "Field": [ - 0, - 26 - ] - } - ] - } - } - } - ] - }, - "span": 52 - } - ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 3, + "local": 1, "projection": [] } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } } ], "destination": { - "local": 2, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 12, "kind": "ZeroSized" }, - "span": 55, "user_ty": null } }, - "target": 5, + "target": 1, "unwind": "Continue" } - }, - "span": 56 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "CheckedBinaryOp": [ - "Sub", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 57, - "user_ty": null - } - } - ] - } - ] - }, - "span": 58 } - ], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 7, - "projection": [ - { - "Field": [ - 1, - 25 - ] - } - ] - } - }, - "expected": false, - "msg": { - "Overflow": [ - "Sub", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 57, - "user_ty": null - } - } - ] - }, - "target": 6, - "unwind": "Continue" - } - }, - "span": 58 } }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 7, - "projection": [ - { - "Field": [ - 0, - 26 - ] - } - ] - } - } - } - ] - }, - "span": 58 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 6, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } ], "destination": { - "local": 5, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 12, "kind": "ZeroSized" }, - "span": 59, "user_ty": null } }, - "target": 7, - "unwind": "Continue" - } - }, - "span": 60 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "CheckedBinaryOp": [ - "Add", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Copy": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 61 - } - ], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 8, - "projection": [ - { - "Field": [ - 1, - 25 - ] - } - ] - } - }, - "expected": false, - "msg": { - "Overflow": [ - "Add", - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ] - }, - "target": 8, - "unwind": "Continue" + "target": 2, + "unwind": "Unreachable" } - }, - "span": 61 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 8, - "projection": [ - { - "Field": [ - 0, - 26 - ] - } - ] - } - } - } - ] - }, - "span": 61 } - ], - "terminator": { - "kind": { - "Goto": { - "target": 9 - } - }, - "span": 62 } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 63 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 64 - }, - { - "mutability": "Not", - "span": 65 - }, - { - "mutability": "Mut", - "span": 56 - }, - { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Mut", - "span": 60 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 58 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 58 - }, - { - "mutability": "Mut", - "span": 61 + "mutability": "Not" } ], - "span": 66, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "n", + "name": "f", "source_info": { - "scope": 0, - "span": 65 + "scope": 0 }, "value": { "Place": { @@ -1145,158 +731,205 @@ "projection": [] } } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } } ] }, - "id": 6, - "name": "fibonacci" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN9fibonacci9fibonacci17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 0, - "projection": [] + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } }, { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } + "Move": { + "local": 2, + "projection": [] } } - ] - }, - "span": 46 + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } } - ], + } + }, + { + "statements": [], "terminator": { - "kind": "Return", - "span": 45 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 47 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ + "mutability": "Not" + }, { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } + "mutability": "Not" } - ] + ], + "spread_arg": 2, + "var_debug_info": [] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": ">::call_once" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 2, "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 15 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 17 - }, { "kind": { "Assign": [ { - "local": 4, + "local": 3, "projection": [] }, { - "Use": { - "Copy": { + "Ref": [ + { + "kind": "ReErased" + }, + { + "Mut": { + "kind": "Default" + } + }, + { "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] + "projection": [] } - } + ] } ] - }, - "span": 17 + } } ], "terminator": { @@ -1305,366 +938,278 @@ "args": [ { "Move": { - "local": 4, + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 2, "projection": [] } } ], "destination": { - "local": 3, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, - "unwind": "Continue" + "unwind": { + "Cleanup": 3 + } } - }, - "span": 15 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 19 - } - ], + "statements": [], "terminator": { "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, + "Drop": { + "place": { + "local": 1, "projection": [] }, - "func": { - "Constant": { - "const_": { - "id": 2, - "kind": "ZeroSized" - }, - "span": 18, - "user_ty": null - } - }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 21 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 22 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 16 - ] - } - ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 27 + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } } - ], + } + }, + { + "statements": [], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 3 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 15 - }, + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "mutability": "Mut", - "span": 17 - }, + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Not" } ], - "span": 3, "spread_arg": null, - "var_debug_info": [ + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "argument_index": null, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } } + ], + "terminator": { + "kind": "Return" } - }, + } + ], + "locals": [ { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } + "mutability": "Mut" }, { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } + "mutability": "Not" } - ] + ], + "spread_arg": null, + "var_debug_info": [] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 0, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 5, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ], "destination": { - "local": 0, + "local": 1, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": { + "SwitchInt": { + "discr": { + "Copy": { + "local": 1, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 5, + 2 + ] + ], + "otherwise": 3 + } + } + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 }, { - "mutability": "Not", - "span": 43 + "statements": [], + "terminator": { + "kind": "Return" + } }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ { "statements": [], "terminator": { @@ -1672,108 +1217,351 @@ "Call": { "args": [ { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 26, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null } } ], "destination": { - "local": 0, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Mut" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": null, + "composite": null, + "name": "ans", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + } + ] }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": "main" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN9fibonacci4main17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Copy": { + "local": 1, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 3 + ], + [ + 1, + 2 + ] + ], + "otherwise": 1 + } + } + } + } + }, { "statements": [ { "kind": { "Assign": [ { - "local": 3, + "local": 4, "projection": [] }, { - "Ref": [ + "CheckedBinaryOp": [ + "Sub", { - "kind": "ReErased" + "Copy": { + "local": 1, + "projection": [] + } }, { - "Mut": { - "kind": "Default" + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 2, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } - }, + } + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { + "local": 4, + "projection": [ { + "Field": [ + 1, + 0 + ] + } + ] + } + }, + "expected": false, + "msg": { + "Overflow": [ + "Sub", + { + "Copy": { "local": 1, "projection": [] } - ] + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 2, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + }, + "target": 4, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 9 + } + } + } + }, + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 9 + } + } + } + }, + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Use": { + "Move": { + "local": 4, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + } } ] - }, - "span": 43 + } } ], "terminator": { @@ -1785,204 +1573,130 @@ "local": 3, "projection": [] } - }, - { - "Move": { - "local": 2, - "projection": [] - } } ], "destination": { - "local": 0, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, + "target": 5, "unwind": "Continue" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, { "kind": { "Assign": [ { - "local": 8, + "local": 7, "projection": [] }, { - "Aggregate": [ + "CheckedBinaryOp": [ + "Sub", { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] + "Copy": { + "local": 1, + "projection": [] + } }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } - ] + } ] } ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { + } + } + ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", + "projection": [ { - "local": 8, - "projection": [] + "Field": [ + 1, + 0 + ] } ] } - ] - }, - "span": 2 - }, + }, + "expected": false, + "msg": { + "Overflow": [ + "Sub", + { + "Copy": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + }, + "target": 6, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ { "kind": { "Assign": [ @@ -1991,22 +1705,22 @@ "projection": [] }, { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] + "Use": { + "Move": { + "local": 7, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + } } ] - }, - "span": 2 + } } ], "terminator": { @@ -2018,24 +1732,6 @@ "local": 6, "projection": [] } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } } ], "destination": { @@ -2045,28 +1741,89 @@ "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, - "target": 1, + "target": 7, "unwind": "Continue" } - }, - "span": 1 + } } }, { "statements": [ { "kind": { - "StorageDead": 6 - }, - "span": 5 - }, + "Assign": [ + { + "local": 8, + "projection": [] + }, + { + "CheckedBinaryOp": [ + "Add", + { + "Copy": { + "local": 2, + "projection": [] + } + }, + { + "Copy": { + "local": 5, + "projection": [] + } + } + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { + "local": 8, + "projection": [ + { + "Field": [ + 1, + 0 + ] + } + ] + } + }, + "expected": false, + "msg": { + "Overflow": [ + "Add", + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 5, + "projection": [] + } + } + ] + }, + "target": 8, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ { "kind": { "Assign": [ @@ -2076,16 +1833,13 @@ }, { "Use": { - "Copy": { - "local": 5, + "Move": { + "local": 8, "projection": [ - { - "Downcast": 0 - }, { "Field": [ 0, - 6 + 0 ] } ] @@ -2093,76 +1847,61 @@ } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": { + "Goto": { + "target": 9 + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 9 + "mutability": "Not" }, { - "mutability": "Not", - "span": 10 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 11 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "main", + "name": "n", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -2170,74 +1909,13 @@ "projection": [] } } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } } ] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "fibonacci" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN9fibonacci9fibonacci17h" } ], "types": [ @@ -2279,54 +1957,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2742,39 +2372,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/float.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/float.smir.json.expected similarity index 80% rename from tests/integration/programs/float.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/float.smir.json.expected index 69ce1ca2..5bcda3ac 100644 --- a/tests/integration/programs/float.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/float.smir.json.expected @@ -140,867 +140,207 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ { "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 96, - 64 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null - } - } - } - ] - }, - "span": 52 + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 7, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 154, - 153, - 153, - 63 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] } - }, - "span": 53, - "user_ty": null - } - } + } + ] + ] } ] - }, - "span": 54 + } }, { "kind": { "Assign": [ { - "local": 2, + "local": 6, "projection": [] }, { - "BinaryOp": [ - "Add", + "Ref": [ { - "Move": { - "local": 3, - "projection": [] - } + "kind": "ReErased" }, + "Shared", { - "Move": { - "local": 4, - "projection": [] - } + "local": 7, + "projection": [] } ] } ] - }, - "span": 55 + } }, { "kind": { "Assign": [ { - "local": 1, + "local": 5, "projection": [] }, { - "BinaryOp": [ - "Eq", + "Cast": [ { - "Move": { - "local": 2, - "projection": [] - } + "PointerCoercion": "Unsize" }, { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 102, - 102, - 150, - 64 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 56, - "user_ty": null + "Copy": { + "local": 6, + "projection": [] } - } + }, + 0 ] } ] - }, - "span": 50 + } } ], "terminator": { "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 1, - "projection": [] + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } } + ], + "destination": { + "local": 0, + "projection": [] }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" } - }, - "span": 50 + } } }, { "statements": [ { "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 12, - 64 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 58, - "user_ty": null - } - } - } - ] - }, - "span": 59 + "StorageDead": 5 + } }, { "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 51, - 51, - 51, - 51, - 51, - 51, - 243, - 63 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 60, - "user_ty": null - } - } - } - ] - }, - "span": 61 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "BinaryOp": [ - "Add", - { - "Move": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 9, - "projection": [] - } - } - ] - } - ] - }, - "span": 62 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 14, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 205, - 204, - 204, - 204, - 204, - 204, - 18, - 64 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 63, - "user_ty": null - } - } - ] - } - ] - }, - "span": 57 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 6, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 57 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 30, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 15, - "kind": "ZeroSized" - }, - "span": 64, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 64 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 30, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 10, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 15, - "kind": "ZeroSized" - }, - "span": 66, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 66 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 67 - }, - { - "mutability": "Mut", - "span": 50 - }, - { - "mutability": "Mut", - "span": 55 - }, - { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Mut", - "span": 54 - }, - { - "mutability": "Mut", - "span": 64 - }, - { - "mutability": "Mut", - "span": 57 - }, - { - "mutability": "Mut", - "span": 62 - }, - { - "mutability": "Mut", - "span": 59 - }, - { - "mutability": "Mut", - "span": 61 - }, - { - "mutability": "Mut", - "span": 66 - } - ], - "span": 72, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 1, - "span": 68 - }, - "value": { - "Const": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 96, - 64 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 2, - "span": 69 - }, - "value": { - "Const": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 154, - 153, - 153, - 63 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 53, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "c", - "source_info": { - "scope": 3, - "span": 70 - }, - "value": { - "Const": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 12, - 64 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 58, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "d", - "source_info": { - "scope": 4, - "span": 71 - }, - "value": { - "Const": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 51, - 51, - 51, - 51, - 51, - 51, - 243, - 63 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 60, - "user_ty": null - } - } - } - ] - }, - "id": 6, - "name": "main" - } - }, - "symbol_name": "_ZN5float4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" - }, - "span": 31, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 33 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "StorageDead": 7 } - }, - "span": 35 - } - }, - { - "statements": [], + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -1010,136 +350,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 + "Place": { + "local": 3, + "projection": [] } - ], - "terminator": { - "kind": "Return", - "span": 45 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 }, { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, + "argument_index": 4, "composite": null, - "name": "self", + "name": "sigpipe", "source_info": { - "scope": 0, - "span": 48 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1153,20 +410,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -1184,7 +438,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1192,8 +446,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -1214,18 +467,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -1233,8 +483,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -1247,83 +496,42 @@ "projection": [] } } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 2, - "kind": "ZeroSized" - }, - "span": 18, - "user_ty": null - } - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 16 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 21 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 22 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } - ] - }, - "span": 22 + }, + "target": 2, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 3 + } }, { "kind": { - "StorageLive": 6 - }, - "span": 23 + "StorageLive": 5 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 5, "projection": [] }, { @@ -1334,13 +542,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -1348,8 +556,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -1363,73 +570,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1437,8 +623,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1448,7 +633,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1460,8 +645,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1469,25 +653,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1498,62 +666,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1590,52 +846,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1669,8 +971,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1697,10 +998,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1709,8 +1008,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1725,15 +1023,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1748,114 +1044,377 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Resume" } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [], "terminator": { - "kind": "Resume", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 - }, + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ { - "mutability": "Not", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, + "spread_arg": null, "var_debug_info": [] }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 0, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 5 - }, - "span": 1 + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 0, + 0, + 96, + 64 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } }, { "kind": { - "StorageLive": 6 - }, - "span": 2 + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 154, + 153, + 153, + 63 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } }, { "kind": { - "StorageLive": 8 - }, - "span": 3 + "Assign": [ + { + "local": 2, + "projection": [] + }, + { + "BinaryOp": [ + "Add", + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 1, + "projection": [] + }, + { + "BinaryOp": [ + "Eq", + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 102, + 102, + 150, + 64 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 1, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 2 + ] + ], + "otherwise": 1 + } + } + } + } + }, + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 8, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 12, + 64 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } }, { "kind": { "Assign": [ { - "local": 8, + "local": 9, "projection": [] }, { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 51, + 51, + 51, + 51, + 51, + 51, + 243, + 63 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] } - } - ] - ] + }, + "user_ty": null + } + } } ] - }, - "span": 3 + } }, { "kind": { @@ -1865,20 +1424,24 @@ "projection": [] }, { - "Ref": [ + "BinaryOp": [ + "Add", { - "kind": "ReErased" + "Move": { + "local": 8, + "projection": [] + } }, - "Shared", { - "local": 8, - "projection": [] + "Move": { + "local": 9, + "projection": [] + } } ] } ] - }, - "span": 2 + } }, { "kind": { @@ -1888,253 +1451,374 @@ "projection": [] }, { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, + "BinaryOp": [ + "Eq", { - "Copy": { + "Move": { "local": 7, "projection": [] } }, - 5 + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 205, + 204, + 204, + 204, + 204, + 204, + 18, + 64 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } ] } ] - }, - "span": 2 + } } ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 6, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 4 + ] + ], + "otherwise": 3 + } + } + } + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 30, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null } - }, + } + ], + "destination": { + "local": 5, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": null, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "Move": { - "local": 4, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 30, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 1 + ] + ] + } + } + } + }, + "user_ty": null } } ], "destination": { - "local": 5, + "local": 10, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 1 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 } - ], - "terminator": { - "kind": "Return", - "span": 4 } } ], "locals": [ { - "mutability": "Mut", - "span": 8 + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 9 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 10 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 11 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "argc", + "name": "a", "source_info": { - "scope": 0, - "span": 10 + "scope": 1 }, "value": { - "Place": { - "local": 2, - "projection": [] + "Const": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 0, + 0, + 96, + 64 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } }, { - "argument_index": 3, + "argument_index": null, "composite": null, - "name": "argv", + "name": "b", "source_info": { - "scope": 0, - "span": 11 + "scope": 2 }, "value": { - "Place": { - "local": 3, - "projection": [] + "Const": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 154, + 153, + 153, + 63 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } }, { - "argument_index": 4, + "argument_index": null, "composite": null, - "name": "sigpipe", + "name": "c", "source_info": { - "scope": 0, - "span": 12 + "scope": 3 }, "value": { - "Place": { - "local": 4, - "projection": [] + "Const": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 12, + 64 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } }, { "argument_index": null, "composite": null, - "name": "v", + "name": "d", "source_info": { - "scope": 1, - "span": 6 + "scope": 4 }, "value": { - "Place": { - "local": 0, - "projection": [] + "Const": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 51, + 51, + 51, + 51, + 51, + 51, + 243, + 63 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } } ] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "main" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN5float4main17h" } ], "types": [ @@ -2190,54 +1874,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2591,39 +2227,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/fn-ptr-in-arg.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/fn-ptr-in-arg.smir.json.expected similarity index 86% rename from tests/integration/programs/fn-ptr-in-arg.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/fn-ptr-in-arg.smir.json.expected index e953ad3b..25059921 100644 --- a/tests/integration/programs/fn-ptr-in-arg.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/fn-ptr-in-arg.smir.json.expected @@ -100,6 +100,26 @@ "NormalSym": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$u64$GT$2eq17h" } ], + [ + { + "NormalSym": "_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$u64$GT$3fmt17h" + } + ], + [ + { + "NormalSym": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17h" + } + ], + [ + { + "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$u64$GT$3fmt17h" + } + ], + [ + { + "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u64$GT$3fmt17h" + } + ], [ { "NormalSym": "_ZN4core3fmt9Formatter25debug_tuple_field1_finish17h" @@ -181,13 +201,12 @@ { "Aggregate": [ { - "Array": 9 + "Array": 0 }, [ { "Constant": { "const_": { - "id": 21, "kind": { "Allocated": { "align": 1, @@ -201,14 +220,12 @@ } } }, - "span": 123, "user_ty": null } }, { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { "align": 1, @@ -222,14 +239,12 @@ } } }, - "span": 124, "user_ty": null } }, { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { "align": 1, @@ -243,14 +258,12 @@ } } }, - "span": 125, "user_ty": null } }, { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { "align": 1, @@ -264,14 +277,12 @@ } } }, - "span": 126, "user_ty": null } }, { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { "align": 1, @@ -285,14 +296,12 @@ } } }, - "span": 127, "user_ty": null } }, { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { "align": 1, @@ -306,14 +315,12 @@ } } }, - "span": 128, "user_ty": null } }, { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { "align": 1, @@ -327,14 +334,12 @@ } } }, - "span": 129, "user_ty": null } }, { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { "align": 1, @@ -348,7 +353,6 @@ } } }, - "span": 130, "user_ty": null } } @@ -356,8 +360,7 @@ ] } ] - }, - "span": 131 + } }, { "kind": { @@ -370,11 +373,11 @@ "Aggregate": [ { "Adt": [ - 9, + 0, 1, [ { - "Type": 29 + "Type": 0 } ], null, @@ -392,8 +395,7 @@ ] } ] - }, - "span": 132 + } } ], "terminator": { @@ -409,10 +411,8 @@ { "Constant": { "const_": { - "id": 20, "kind": "ZeroSized" }, - "span": 121, "user_ty": null } } @@ -424,18 +424,15 @@ "func": { "Constant": { "const_": { - "id": 19, "kind": "ZeroSized" }, - "span": 120, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 122 + } } }, { @@ -460,8 +457,7 @@ ] } ] - }, - "span": 134 + } }, { "kind": { @@ -474,7 +470,6 @@ "Use": { "Constant": { "const_": { - "id": 24, "kind": { "Allocated": { "align": 8, @@ -500,14 +495,12 @@ } } }, - "span": 135, "user_ty": null } } } ] - }, - "span": 135 + } }, { "kind": { @@ -536,8 +529,7 @@ ] } ] - }, - "span": 136 + } }, { "kind": { @@ -554,7 +546,7 @@ { "Field": [ 0, - 25 + 0 ] } ] @@ -562,8 +554,7 @@ } } ] - }, - "span": 137 + } }, { "kind": { @@ -580,7 +571,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -588,8 +579,7 @@ } } ] - }, - "span": 138 + } } ], "terminator": { @@ -616,18 +606,15 @@ "func": { "Constant": { "const_": { - "id": 23, "kind": "ZeroSized" }, - "span": 133, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 133 + } } }, { @@ -651,15 +638,13 @@ "otherwise": 3 } } - }, - "span": 133 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 139 + "kind": "Return" } }, { @@ -675,7 +660,7 @@ "Aggregate": [ { "Adt": [ - 15, + 0, 0, [], null, @@ -686,8 +671,7 @@ ] } ] - }, - "span": 142 + } }, { "kind": { @@ -700,11 +684,11 @@ "Aggregate": [ { "Adt": [ - 9, + 0, 0, [ { - "Type": 54 + "Type": 0 } ], null, @@ -715,8 +699,7 @@ ] } ] - }, - "span": 143 + } } ], "terminator": { @@ -755,76 +738,59 @@ "func": { "Constant": { "const_": { - "id": 25, "kind": "ZeroSized" }, - "span": 140, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 141 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 144 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 145 + "mutability": "Not" }, { - "mutability": "Not", - "span": 146 + "mutability": "Not" }, { - "mutability": "Not", - "span": 147 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 136 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 134 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 135 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 137 + "mutability": "Not" }, { - "mutability": "Not", - "span": 138 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 133 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 148 + "mutability": "Not" }, { - "mutability": "Not", - "span": 141 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 143 + "mutability": "Mut" } ], - "span": 149, "spread_arg": null, "var_debug_info": [ { @@ -832,8 +798,7 @@ "composite": null, "name": "bytes", "source_info": { - "scope": 1, - "span": 145 + "scope": 1 }, "value": { "Place": { @@ -847,8 +812,7 @@ "composite": null, "name": "opt", "source_info": { - "scope": 2, - "span": 146 + "scope": 2 }, "value": { "Place": { @@ -862,8 +826,7 @@ "composite": null, "name": "result", "source_info": { - "scope": 3, - "span": 147 + "scope": 3 }, "value": { "Place": { @@ -877,8 +840,7 @@ "composite": null, "name": "left_val", "source_info": { - "scope": 4, - "span": 137 + "scope": 4 }, "value": { "Place": { @@ -892,8 +854,7 @@ "composite": null, "name": "right_val", "source_info": { - "scope": 4, - "span": 138 + "scope": 4 }, "value": { "Place": { @@ -907,8 +868,7 @@ "composite": null, "name": "kind", "source_info": { - "scope": 5, - "span": 148 + "scope": 5 }, "value": { "Place": { @@ -919,7 +879,6 @@ } ] }, - "id": 14, "name": "main" } }, @@ -930,133 +889,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 68 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 68 - }, - { - "mutability": "Not", - "span": 68 - } - ], - "span": 68, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 7, - "name": "std::ptr::drop_in_place::<&std::option::Option>" - } - }, - "symbol_name": "_ZN4core3ptr56drop_in_place$LT$$RF$core..option..Option$LT$u64$GT$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 68 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 68 - }, - { - "mutability": "Not", - "span": 68 - } - ], - "span": 68, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 7, - "name": "std::ptr::drop_in_place::<&u64>" - } - }, - "symbol_name": "_ZN4core3ptr28drop_in_place$LT$$RF$u64$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 68 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 68 - }, - { - "mutability": "Not", - "span": 68 - } - ], - "span": 68, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 7, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -1067,199 +1027,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } + "mutability": "Not" }, { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } + "mutability": "Not" }, { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ + "mutability": "Not" + }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 61 - } - ], - "terminator": { - "kind": "Return", - "span": 60 - } - } - ], - "locals": [ + "mutability": "Mut" + }, { - "mutability": "Mut", - "span": 62 + "mutability": "Not" }, { - "mutability": "Not", - "span": 63 + "mutability": "Not" } ], - "span": 66, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "bytes", + "name": "main", "source_info": { - "scope": 0, - "span": 63 + "scope": 0 }, "value": { "Place": { @@ -1269,132 +1099,53 @@ } }, { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "bytes", + "name": "argc", "source_info": { - "scope": 1, - "span": 64 + "scope": 0 }, "value": { "Place": { - "local": 1, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "x", + "name": "argv", "source_info": { - "scope": 2, - "span": 65 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 3, "projection": [] } } - } - ] - }, - "id": 5, - "name": "core::num::::from_le_bytes" - } - }, - "symbol_name": "_ZN4core3num21_$LT$impl$u20$u64$GT$13from_le_bytes17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 96, - "user_ty": null - } - } - } - ] - }, - "span": 96 - } - ], - "terminator": { - "kind": "Return", - "span": 95 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 97 }, { - "mutability": "Not", - "span": 98 - } - ], - "span": 99, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, + "argument_index": 4, "composite": null, - "name": "self", + "name": "sigpipe", "source_info": { - "scope": 0, - "span": 98 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 11, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1408,20 +1159,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -1439,7 +1187,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1447,8 +1195,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -1469,18 +1216,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -1488,8 +1232,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -1510,18 +1253,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -1529,14 +1269,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -1546,71 +1284,34 @@ "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { + "Use": { + "Copy": { "local": 2, "projection": [ { "Field": [ 0, - 15 + 0 + ] + }, + { + "Field": [ + 0, + 0 ] } ] } - ] + } } ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 + } }, { "kind": { "Assign": [ { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 0, + "local": 0, "projection": [] }, { @@ -1618,73 +1319,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1692,8 +1372,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1703,7 +1382,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1715,8 +1394,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1724,25 +1402,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1753,62 +1415,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 67 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 67 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 67 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" } ], - "span": 67, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 6, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1818,17 +1568,36 @@ "arg_count": 2, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref" + ] + } + } + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, - "projection": [ - "Deref" - ] + "local": 3, + "projection": [] } }, { @@ -1845,51 +1614,74 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 67, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 67 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 67 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 67 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" + }, + { + "mutability": "Mut" } ], - "span": 67, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] }, - "id": 6, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": "<&std::option::Option as std::fmt::Debug>::fmt" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h" }, { "details": null, @@ -1899,22 +1691,42 @@ "arg_count": 2, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref" + ] + } + } + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + }, { "Move": { "local": 2, - "projection": [ - { - "Field": [ - 0, - 29 - ] - } - ] + "projection": [] } } ], @@ -1923,49 +1735,76 @@ "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 67 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 67 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 67 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" + }, + { + "mutability": "Mut" } ], - "span": 67, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] }, - "id": 6, - "name": " u64 {core::num::::from_le_bytes} as std::ops::FnOnce<([u8; 8],)>>::call_once" + "name": "<&u64 as std::fmt::Debug>::fmt" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h" }, { "details": null, @@ -1976,6 +1815,11 @@ "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 3 + } + }, { "kind": { "Assign": [ @@ -1984,52 +1828,43 @@ "projection": [] }, { - "Discriminant": { - "local": 1, - "projection": [] + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref" + ] + } } } ] - }, - "span": 70 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, + } + }, + { + "kind": { + "StorageLive": 4 + } + }, + { + "kind": { + "Assign": [ + { + "local": 4, "projection": [] + }, + { + "Use": { + "Copy": { + "local": 2, + "projection": [ + "Deref" + ] + } + } } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ], - [ - 1, - 3 - ] - ], - "otherwise": 1 - } + ] } }, - "span": 69 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 70 - } - }, - { - "statements": [ { "kind": { "Assign": [ @@ -2038,44 +1873,114 @@ "projection": [] }, { - "Aggregate": [ + "BinaryOp": [ + "Eq", { - "Adt": [ - 9, - 0, - [ - { - "Type": 28 - } - ], - null, - null - ] + "Move": { + "local": 3, + "projection": [] + } }, - [] + { + "Move": { + "local": 4, + "projection": [] + } + } ] } ] - }, - "span": 72 + } + }, + { + "kind": { + "StorageDead": 4 + } + }, + { + "kind": { + "StorageDead": 3 + } } ], "terminator": { - "kind": { - "Drop": { - "place": { - "local": 2, - "projection": [] - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 71 + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } } }, + { + "argument_index": 2, + "composite": null, + "name": "other", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + }, + "name": "std::cmp::impls::::eq" + } + }, + "symbol_name": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$u64$GT$2eq17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, { "kind": { "Assign": [ @@ -2085,16 +1990,20 @@ }, { "Use": { - "Move": { - "local": 1, + "Copy": { + "local": 2, "projection": [ + "Deref", { - "Downcast": 1 + "Field": [ + 0, + 0 + ] }, { "Field": [ 0, - 29 + 0 ] } ] @@ -2102,69 +2011,85 @@ } } ] - }, - "span": 75 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 74 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 73 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 3, "projection": [] }, { - "Use": { - "Move": { - "local": 2, - "projection": [] + "BinaryOp": [ + "BitAnd", + { + "Move": { + "local": 4, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 16, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } } - } + ] } ] - }, - "span": 73 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 74 + } }, { "kind": { - "Assign": [ - { - "local": 7, + "StorageDead": 4 + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 3, "projection": [] - }, - { - "Aggregate": [ - "Tuple", - [ - { - "Copy": { - "local": 4, - "projection": [] - } - } - ] - ] } - ] - }, - "span": 74 + }, + "targets": { + "branches": [ + [ + 0, + 2 + ] + ], + "otherwise": 1 + } + } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 3 + } } ], "terminator": { @@ -2173,147 +2098,281 @@ "args": [ { "Move": { - "local": 6, + "local": 1, "projection": [] } }, { "Move": { - "local": 7, + "local": 2, "projection": [] } } ], "destination": { - "local": 5, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 73, "user_ty": null } }, - "target": 4, + "target": 6, "unwind": "Continue" } - }, - "span": 74 + } } }, { "statements": [ { "kind": { - "StorageDead": 7 - }, - "span": 77 + "StorageDead": 3 + } }, { "kind": { - "StorageDead": 6 - }, - "span": 77 + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 6 + } }, { "kind": { "Assign": [ { - "local": 0, + "local": 6, "projection": [] }, { - "Aggregate": [ - { - "Adt": [ - 9, - 1, - [ - { - "Type": 28 - } - ], - null, - null + "Use": { + "Copy": { + "local": 2, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + }, + { + "Field": [ + 0, + 0 + ] + } ] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "BinaryOp": [ + "BitAnd", + { + "Move": { + "local": 6, + "projection": [] + } }, - [ - { - "Move": { - "local": 5, - "projection": [] - } + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 32, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } - ] + } ] } ] - }, - "span": 78 + } }, { "kind": { - "StorageDead": 5 - }, - "span": 76 + "StorageDead": 6 + } } ], "terminator": { "kind": { - "Goto": { - "target": 5 + "SwitchInt": { + "discr": { + "Move": { + "local": 5, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 4 + ] + ], + "otherwise": 3 + } } - }, - "span": 76 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 5 + } + } + ], "terminator": { - "kind": "Return", - "span": 79 + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 5, + "unwind": "Continue" + } + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 80 - }, - { - "mutability": "Not", - "span": 81 - }, - { - "mutability": "Not", - "span": 82 - }, - { - "mutability": "Mut", - "span": 83 - }, - { - "mutability": "Not", - "span": 75 - }, - { - "mutability": "Mut", - "span": 74 - }, - { - "mutability": "Mut", - "span": 73 }, { - "mutability": "Mut", - "span": 74 - } + "statements": [ + { + "kind": { + "StorageDead": 5 + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 5, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Goto": { + "target": 6 + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + } ], - "span": 84, "spread_arg": null, "var_debug_info": [ { @@ -2321,8 +2380,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 0, - "span": 81 + "scope": 0 }, "value": { "Place": { @@ -2336,8 +2394,7 @@ "composite": null, "name": "f", "source_info": { - "scope": 0, - "span": 82 + "scope": 0 }, "value": { "Place": { @@ -2347,34 +2404,46 @@ } }, { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "x", + "name": "self", "source_info": { - "scope": 1, - "span": 75 + "scope": 1 }, "value": { "Place": { - "local": 4, + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 2 + }, + "value": { + "Place": { + "local": 2, "projection": [] } } } ] }, - "id": 8, - "name": "std::option::Option::<[u8; 8]>::map:: u64 {core::num::::from_le_bytes}>" + "name": "core::fmt::num::::fmt" } }, - "symbol_name": "_ZN4core6option15Option$LT$T$GT$3map17h" + "symbol_name": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u64$GT$3fmt17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [ @@ -2382,109 +2451,271 @@ "kind": { "Assign": [ { - "local": 3, + "local": 0, "projection": [] }, { - "Discriminant": { + "Cast": [ + "Transmute", + { + "Copy": { + "local": 1, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "bytes", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + } + ] + }, + "name": "core::num::::from_le_bytes" + } + }, + "symbol_name": "_ZN4core3num21_$LT$impl$u20$u64$GT$13from_le_bytes17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { "local": 1, "projection": [ "Deref" ] } + }, + { + "Move": { + "local": 2, + "projection": [] + } } - ] - }, - "span": 100 + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } } - ], + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], "terminator": { "kind": { - "SwitchInt": { - "discr": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { "Move": { - "local": 3, + "local": 1, "projection": [] } }, - "targets": { - "branches": [ - [ - 0, - 3 - ], - [ - 1, - 2 - ] - ], - "otherwise": 1 - } + "target": 1, + "unwind": "Continue" } - }, - "span": 100 + } } }, { "statements": [], "terminator": { - "kind": "Unreachable", - "span": 100 + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, { - "statements": [ - { - "kind": { - "StorageLive": 4 - }, - "span": 101 - }, - { - "kind": { - "Assign": [ + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 4, + "Move": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 28 - ] - } - ] - } - ] } - ] - }, - "span": 101 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 101 - }, + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": " u64 {core::num::::from_le_bytes} as std::ops::FnOnce<([u8; 8],)>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [ { "kind": { "Assign": [ { - "local": 6, + "local": 3, "projection": [] }, { @@ -2492,41 +2723,19 @@ { "kind": "ReErased" }, - "Shared", - { - "local": 4, - "projection": [] - } - ] - } - ] - }, - "span": 101 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, { - "Copy": { - "local": 6, - "projection": [] + "Mut": { + "kind": "Default" } }, - 42 + { + "local": 1, + "projection": [] + } ] } ] - }, - "span": 101 + } } ], "terminator": { @@ -2535,54 +2744,13 @@ "args": [ { "Move": { - "local": 2, + "local": 3, "projection": [] } }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 100, - "user_ty": null - } - }, { "Move": { - "local": 5, + "local": 2, "projection": [] } } @@ -2594,311 +2762,38 @@ "func": { "Constant": { "const_": { - "id": 12, "kind": "ZeroSized" }, - "span": 100, - "user_ty": 1 + "user_ty": null } }, - "target": 4, - "unwind": "Continue" + "target": 1, + "unwind": { + "Cleanup": 3 + } } - }, - "span": 100 + } } }, { "statements": [], "terminator": { "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - } - }, - "span": 100, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized" - }, - "span": 100, - "user_ty": 0 - } - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 100 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 102 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 102 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 102 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 103 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 100 - }, - { - "mutability": "Not", - "span": 100 - }, - { - "mutability": "Not", - "span": 100 - }, - { - "mutability": "Mut", - "span": 100 - }, - { - "mutability": "Not", - "span": 101 - }, - { - "mutability": "Mut", - "span": 101 - }, - { - "mutability": "Not", - "span": 101 - } - ], - "span": 100, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 100 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 100 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "__self_0", - "source_info": { - "scope": 1, - "span": 101 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - } - ] - }, - "id": 12, - "name": " as std::fmt::Debug>::fmt" - } - }, - "symbol_name": "_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 67 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 8, - "kind": "ZeroSized" - }, - "span": 67, - "user_ty": null - } - }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 67 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, + "Drop": { + "place": { + "local": 1, "projection": [] }, "target": 2, "unwind": "Continue" } - }, - "span": 67 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 67 + "kind": "Return" } }, { @@ -2913,41 +2808,33 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 67 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 67 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 67 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" } ], - "span": 67, "spread_arg": 2, "var_debug_info": [] }, - "id": 6, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -2958,388 +2845,147 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref" - ] - } - } - } - ] - }, - "span": 45 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 44 - } - }, { "statements": [], "terminator": { - "kind": "Return", - "span": 46 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - }, - { - "mutability": "Not", - "span": 49 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 48 + "mutability": "Not" } ], - "span": 50, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 49 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 3, - "name": "<&std::option::Option as std::fmt::Debug>::fmt" + "name": "std::ptr::drop_in_place::<&u64>" } }, - "symbol_name": "_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h" + "symbol_name": "_ZN4core3ptr28drop_in_place$LT$$RF$u64$GT$17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Discriminant": { - "local": 1, - "projection": [ - "Deref" - ] - } - } - ] - }, - "span": 105 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ], - [ - 1, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 104 - } - }, { "statements": [], "terminator": { - "kind": "Unreachable", - "span": 105 + "kind": "Return" } - }, + } + ], + "locals": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Discriminant": { - "local": 2, - "projection": [ - "Deref" - ] - } - } - ] - }, - "span": 105 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 6 - ], - [ - 1, - 7 - ] - ], - "otherwise": 1 - } - } - }, - "span": 104 - } + "mutability": "Mut" }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Discriminant": { - "local": 2, - "projection": [ - "Deref" - ] - } - } - ] - }, - "span": 105 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ], - [ - 1, - 5 - ] - ], - "otherwise": 1 - } - } - }, - "span": 104 - } - }, + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<&std::option::Option>" + } + }, + "symbol_name": "_ZN4core3ptr56drop_in_place$LT$$RF$core..option..Option$LT$u64$GT$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 1 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 106, - "user_ty": null - } - } - } - ] - }, - "span": 106 - } - ], + "statements": [], "terminator": { - "kind": { - "Goto": { - "target": 8 - } - }, - "span": 106 + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ { "statements": [ { "kind": { "Assign": [ { - "local": 0, + "local": 3, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 107, - "user_ty": null - } + "Discriminant": { + "local": 1, + "projection": [] } } ] - }, - "span": 107 + } } ], "terminator": { "kind": { - "Goto": { - "target": 8 + "SwitchInt": { + "discr": { + "Move": { + "local": 3, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 2 + ], + [ + 1, + 3 + ] + ], + "otherwise": 1 + } } - }, - "span": 107 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Unreachable" } }, { @@ -3352,40 +2998,38 @@ "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Aggregate": [ + { + "Adt": [ + 0, + 0, + [ + { + "Type": 0 } - } - }, - "span": 108, - "user_ty": null - } - } + ], + null, + null + ] + }, + [] + ] } ] - }, - "span": 108 + } } ], "terminator": { "kind": { - "Goto": { - "target": 8 + "Drop": { + "place": { + "local": 2, + "projection": [] + }, + "target": 5, + "unwind": "Continue" } - }, - "span": 108 + } } }, { @@ -3394,69 +3038,85 @@ "kind": { "Assign": [ { - "local": 6, + "local": 4, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { + "Use": { + "Move": { "local": 1, "projection": [ - "Deref", { "Downcast": 1 }, { "Field": [ 0, - 28 + 0 ] } ] } - ] + } } ] - }, - "span": 110 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 6 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 6, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { + "Use": { + "Move": { "local": 2, - "projection": [ - "Deref", - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 28 - ] - } - ] + "projection": [] } + } + } + ] + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + "Tuple", + [ + { + "Copy": { + "local": 4, + "projection": [] + } + } + ] ] } ] - }, - "span": 111 + } } ], "terminator": { @@ -3477,69 +3137,117 @@ } ], "destination": { - "local": 0, + "local": 5, "projection": [] }, "func": { "Constant": { "const_": { - "id": 18, "kind": "ZeroSized" }, - "span": 109, "user_ty": null } }, - "target": 8, + "target": 4, "unwind": "Continue" } - }, - "span": 109 + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 7 + } + }, + { + "kind": { + "StorageDead": 6 + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Aggregate": [ + { + "Adt": [ + 0, + 1, + [ + { + "Type": 0 + } + ], + null, + null + ] + }, + [ + { + "Move": { + "local": 5, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 5 + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 112 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 113 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 114 + "mutability": "Not" }, { - "mutability": "Not", - "span": 115 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 116 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 117 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 118 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 110 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 111 + "mutability": "Mut" } ], - "span": 119, "spread_arg": null, "var_debug_info": [ { @@ -3547,8 +3255,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 0, - "span": 114 + "scope": 0 }, "value": { "Place": { @@ -3560,10 +3267,9 @@ { "argument_index": 2, "composite": null, - "name": "other", + "name": "f", "source_info": { - "scope": 0, - "span": 115 + "scope": 0 }, "value": { "Place": { @@ -3575,183 +3281,221 @@ { "argument_index": null, "composite": null, - "name": "l", - "source_info": { - "scope": 1, - "span": 110 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "r", + "name": "x", "source_info": { - "scope": 1, - "span": 111 + "scope": 1 }, "value": { "Place": { - "local": 7, + "local": 4, "projection": [] } } } ] }, - "id": 13, - "name": " as std::cmp::PartialEq>::eq" + "name": "std::option::Option::<[u8; 8]>::map:: u64 {core::num::::from_le_bytes}>" } }, - "symbol_name": "_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h" + "symbol_name": "_ZN4core6option15Option$LT$T$GT$3map17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 4, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 3 - }, - "span": 52 + "StorageLive": 5 + } }, { "kind": { "Assign": [ { - "local": 3, + "local": 6, "projection": [] }, { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref" - ] + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 2, + "projection": [] } - } + ] } ] - }, - "span": 52 + } }, { "kind": { - "StorageLive": 4 - }, - "span": 53 + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + }, + { + "kind": { + "StorageLive": 7 + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 8, "projection": [] }, { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref" - ] + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 3, + "projection": [] } - } + ] } ] - }, - "span": 53 + } }, { "kind": { "Assign": [ { - "local": 0, + "local": 7, "projection": [] }, { - "BinaryOp": [ - "Eq", + "Cast": [ { - "Move": { - "local": 3, - "projection": [] - } + "PointerCoercion": "Unsize" }, { - "Move": { - "local": 4, + "Copy": { + "local": 8, "projection": [] } - } + }, + 0 ] } ] - }, - "span": 54 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 55 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 55 + } } ], "terminator": { - "kind": "Return", - "span": 51 + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 7, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": null, + "unwind": "Continue" + } + } } } ], "locals": [ { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 57 + "mutability": "Not" }, { - "mutability": "Not", - "span": 58 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 52 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 53 + "mutability": "Mut" + }, + { + "mutability": "Not" } ], - "span": 59, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "kind", "source_info": { - "scope": 0, - "span": 57 + "scope": 0 }, "value": { "Place": { @@ -3763,10 +3507,9 @@ { "argument_index": 2, "composite": null, - "name": "other", + "name": "left", "source_info": { - "scope": 0, - "span": 58 + "scope": 0 }, "value": { "Place": { @@ -3774,89 +3517,214 @@ "projection": [] } } + }, + { + "argument_index": 3, + "composite": null, + "name": "right", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "args", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } + } + } + ] + }, + "name": "core::panicking::assert_failed::, std::option::Option>" + } + }, + "symbol_name": "_ZN4core9panicking13assert_failed17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": "Return" + } } - ] + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] }, - "id": 4, - "name": "std::cmp::impls::::eq" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$u64$GT$2eq17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 2, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Discriminant": { + "local": 1, + "projection": [ + "Deref" + ] + } + } + ] + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 3, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 3 + ], + [ + 1, + 2 + ] + ], + "otherwise": 1 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Unreachable" + } + }, + { + "statements": [ { "kind": { - "StorageLive": 8 - }, - "span": 3 + "StorageLive": 4 + } }, { "kind": { "Assign": [ { - "local": 8, + "local": 4, "projection": [] }, { - "Aggregate": [ + "Ref": [ { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] + "kind": "ReErased" }, - [ - { - "Copy": { - "local": 1, - "projection": [] + "Shared", + { + "local": 1, + "projection": [ + "Deref", + { + "Downcast": 1 + }, + { + "Field": [ + 0, + 0 + ] } - } - ] + ] + } ] } ] - }, - "span": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 6, "projection": [] }, { @@ -3866,20 +3734,19 @@ }, "Shared", { - "local": 8, + "local": 4, "projection": [] } ] } ] - }, - "span": 2 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 5, "projection": [] }, { @@ -3889,16 +3756,15 @@ }, { "Copy": { - "local": 7, + "local": 6, "projection": [] } }, - 5 + 0 ] } ] - }, - "span": 2 + } } ], "terminator": { @@ -3907,154 +3773,203 @@ "args": [ { "Move": { - "local": 6, + "local": 2, "projection": [] } }, { - "Move": { - "local": 2, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 4, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null } }, { "Move": { - "local": 3, + "local": 5, "projection": [] } - }, + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": 1 + } + }, + "target": 4, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { "Move": { - "local": 4, + "local": 2, "projection": [] } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 4, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 1 + ] + ] + } + } + } + }, + "user_ty": null + } } ], "destination": { - "local": 5, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, - "user_ty": null + "user_ty": 0 } }, - "target": 1, + "target": 5, "unwind": "Continue" } - }, - "span": 1 + } } }, { "statements": [ { "kind": { - "StorageDead": 6 - }, - "span": 5 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 + "StorageDead": 5 + } }, { "kind": { - "StorageDead": 5 - }, - "span": 7 + "StorageDead": 4 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": { + "Goto": { + "target": 5 + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 9 + "mutability": "Not" }, { - "mutability": "Not", - "span": 10 + "mutability": "Not" }, { - "mutability": "Not", - "span": 11 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 12 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 - }, - { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "main", + "name": "self", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -4066,10 +3981,9 @@ { "argument_index": 2, "composite": null, - "name": "argc", + "name": "f", "source_info": { - "scope": 0, - "span": 10 + "scope": 0 }, "value": { "Place": { @@ -4078,133 +3992,259 @@ } } }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, { "argument_index": null, "composite": null, - "name": "v", + "name": "__self_0", "source_info": { - "scope": 1, - "span": 6 + "scope": 1 }, "value": { "Place": { - "local": 0, + "local": 4, "projection": [] } } } ] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": " as std::fmt::Debug>::fmt" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN66_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..fmt..Debug$GT$3fmt17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 2, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 5 - }, - "span": 87 - }, + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Discriminant": { + "local": 1, + "projection": [ + "Deref" + ] + } + } + ] + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 5, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 3 + ], + [ + 1, + 2 + ] + ], + "otherwise": 1 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Unreachable" + } + }, + { + "statements": [ { "kind": { "Assign": [ { - "local": 6, + "local": 3, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [] - } + "Discriminant": { + "local": 2, + "projection": [ + "Deref" + ] + } + } + ] + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 3, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 4 + ], + [ + 1, + 5 ] + ], + "otherwise": 1 + } + } + } + } + }, + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Discriminant": { + "local": 2, + "projection": [ + "Deref" + ] + } } ] - }, - "span": 87 + } }, { "kind": { "Assign": [ { - "local": 5, + "local": 0, "projection": [] }, { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, + "BinaryOp": [ + "Eq", { "Copy": { - "local": 6, + "local": 4, "projection": [] } }, - 42 + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } ] } ] - }, - "span": 87 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 88 - }, + } + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 6 + } + } + } + }, + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 6 + } + } + } + }, + { + "statements": [ { "kind": { "Assign": [ { - "local": 8, + "local": 6, "projection": [] }, { @@ -4214,14 +4254,24 @@ }, "Shared", { - "local": 3, - "projection": [] + "local": 1, + "projection": [ + "Deref", + { + "Downcast": 1 + }, + { + "Field": [ + 0, + 0 + ] + } + ] } ] } ] - }, - "span": 88 + } }, { "kind": { @@ -4231,22 +4281,30 @@ "projection": [] }, { - "Cast": [ + "Ref": [ { - "PointerCoercion": "Unsize" + "kind": "ReErased" }, + "Shared", { - "Copy": { - "local": 8, - "projection": [] - } - }, - 42 + "local": 2, + "projection": [ + "Deref", + { + "Downcast": 1 + }, + { + "Field": [ + 0, + 0 + ] + } + ] + } ] } ] - }, - "span": 88 + } } ], "terminator": { @@ -4255,13 +4313,7 @@ "args": [ { "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 5, + "local": 6, "projection": [] } }, @@ -4270,12 +4322,6 @@ "local": 7, "projection": [] } - }, - { - "Move": { - "local": 4, - "projection": [] - } } ], "destination": { @@ -4285,69 +4331,58 @@ "func": { "Constant": { "const_": { - "id": 10, "kind": "ZeroSized" }, - "span": 85, "user_ty": null } }, - "target": null, + "target": 6, "unwind": "Continue" } - }, - "span": 86 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 89 - }, - { - "mutability": "Not", - "span": 90 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 91 + "mutability": "Not" }, { - "mutability": "Not", - "span": 92 + "mutability": "Not" }, { - "mutability": "Not", - "span": 93 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 87 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 87 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 88 + "mutability": "Not" }, { - "mutability": "Not", - "span": 88 + "mutability": "Not" } ], - "span": 94, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "kind", + "name": "self", "source_info": { - "scope": 0, - "span": 90 + "scope": 0 }, "value": { "Place": { @@ -4359,10 +4394,9 @@ { "argument_index": 2, "composite": null, - "name": "left", + "name": "other", "source_info": { - "scope": 0, - "span": 91 + "scope": 0 }, "value": { "Place": { @@ -4372,42 +4406,39 @@ } }, { - "argument_index": 3, + "argument_index": null, "composite": null, - "name": "right", + "name": "l", "source_info": { - "scope": 0, - "span": 92 + "scope": 1 }, "value": { "Place": { - "local": 3, + "local": 6, "projection": [] } } }, { - "argument_index": 4, + "argument_index": null, "composite": null, - "name": "args", + "name": "r", "source_info": { - "scope": 0, - "span": 93 + "scope": 1 }, "value": { "Place": { - "local": 4, + "local": 7, "projection": [] } } } ] }, - "id": 10, - "name": "core::panicking::assert_failed::, std::option::Option>" + "name": " as std::cmp::PartialEq>::eq" } }, - "symbol_name": "_ZN4core9panicking13assert_failed17h" + "symbol_name": "_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h" } ], "types": [ @@ -4914,7 +4945,136 @@ } }, "size": { - "num_bits": 128 + "num_bits": 128 + }, + "variants": { + "Single": { + "index": 1 + } + } + }, + { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [] + } + }, + "size": { + "num_bits": 64 + }, + "variants": { + "Single": { + "index": 2 + } + } + } + ] + } + } + }, + "name": "core::fmt::rt::Count" + } + } + ], + [ + { + "EnumType": { + "discriminants": [ + 0, + 1, + 2 + ], + "fields": "elided", + "layout": { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 2, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Multiple": { + "tag": { + "Initialized": { + "valid_range": { + "end": 2, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + }, + "tag_encoding": "Direct", + "tag_field": 0, + "variants": [ + { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Single": { + "index": 0 + } + } + }, + { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [] + } + }, + "size": { + "num_bits": 8 }, "variants": { "Single": { @@ -4935,7 +5095,7 @@ } }, "size": { - "num_bits": 64 + "num_bits": 8 }, "variants": { "Single": { @@ -4947,7 +5107,7 @@ } } }, - "name": "core::fmt::rt::Count" + "name": "core::panicking::AssertKind" } } ], @@ -5076,7 +5236,7 @@ } } }, - "name": "core::panicking::AssertKind" + "name": "std::fmt::Alignment" } } ], @@ -5330,6 +5490,137 @@ } } ], + [ + { + "EnumType": { + "discriminants": [ + 0, + 1 + ], + "fields": "elided", + "layout": { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 3, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Multiple": { + "tag": { + "Initialized": { + "valid_range": { + "end": 3, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + }, + "tag_encoding": { + "Niche": { + "niche_start": 3, + "niche_variants": { + "end": 0, + "start": 0 + }, + "untagged_variant": 1 + } + }, + "tag_field": 0, + "variants": [ + { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [] + } + }, + "size": { + "num_bits": 0 + }, + "variants": { + "Single": { + "index": 0 + } + } + }, + { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 2, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Single": { + "index": 1 + } + } + } + ] + } + } + }, + "name": "std::option::Option" + } + } + ], [ { "EnumType": { @@ -5865,54 +6156,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -6077,28 +6320,61 @@ "Arbitrary": { "offsets": [ { - "num_bits": 416 + "num_bits": 0 }, { "num_bits": 384 + } + ] + } + }, + "size": { + "num_bits": 512 + }, + "variants": { + "Single": { + "index": 0 + } + } + }, + "name": "std::fmt::Formatter<'_>" + } + } + ], + [ + { + "StructType": { + "fields": "elided", + "layout": { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 8, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 288 }, { - "num_bits": 448 + "num_bits": 256 }, { - "num_bits": 0 + "num_bits": 320 }, { - "num_bits": 128 + "num_bits": 0 }, { - "num_bits": 256 + "num_bits": 128 } ] } }, "size": { - "num_bits": 512 + "num_bits": 384 }, "variants": { "Single": { @@ -6106,7 +6382,7 @@ } } }, - "name": "std::fmt::Formatter<'_>" + "name": "std::fmt::FormattingOptions" } } ], @@ -7064,39 +7340,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/modulo.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/modulo.smir.json.expected similarity index 79% rename from tests/integration/programs/modulo.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/modulo.smir.json.expected index 4f014287..73a49f65 100644 --- a/tests/integration/programs/modulo.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/modulo.smir.json.expected @@ -97,247 +97,82 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ { "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 10, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 52, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null - } - } - ] - } - ] - }, - "span": 51 - } - ], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 2, - "projection": [] - } - }, - "expected": false, - "msg": { - "RemainderByZero": { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 50, - "user_ty": null - } - } - }, - "target": 1, - "unwind": "Continue" + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 } }, - "span": 51 - } - }, - { - "statements": [ { "kind": { "Assign": [ { - "local": 3, + "local": 7, "projection": [] }, { - "BinaryOp": [ - "Eq", + "Aggregate": [ { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 10, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } - }, - "span": 52, - "user_ty": null - } + ] + ] }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 255, - 255, - 255, - 255 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null + [ + { + "Copy": { + "local": 1, + "projection": [] + } } - } + ] ] } ] - }, - "span": 51 + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 6, "projection": [] }, { - "BinaryOp": [ - "Eq", + "Ref": [ { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 50, - "user_ty": null - } + "kind": "ReErased" }, + "Shared", { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null - } + "local": 7, + "projection": [] } ] } ] - }, - "span": 51 + } }, { "kind": { @@ -347,599 +182,178 @@ "projection": [] }, { - "BinaryOp": [ - "BitAnd", + "Cast": [ { - "Move": { - "local": 3, - "projection": [] - } + "PointerCoercion": "Unsize" }, { - "Move": { - "local": 4, + "Copy": { + "local": 6, "projection": [] } - } + }, + 0 ] } ] - }, - "span": 51 + } } ], "terminator": { "kind": { - "Assert": { - "cond": { - "Move": { - "local": 5, - "projection": [] - } - }, - "expected": false, - "msg": { - "Overflow": [ - "Rem", - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 50, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 10, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 52, - "user_ty": null - } + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] } - ] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 51 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ + }, { - "local": 1, - "projection": [] + "Move": { + "local": 2, + "projection": [] + } }, { - "BinaryOp": [ - "Rem", - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 50, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 10, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 52, - "user_ty": null - } - } - ] - } - ] - }, - "span": 51 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 1, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 2, - 3 - ] - ], - "otherwise": 4 - } - } - }, - "span": 53 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 54 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + "Move": { + "local": 3, + "projection": [] + } + }, { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 30, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null + "Move": { + "local": 4, + "projection": [] } } ], "destination": { - "local": 6, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 55, "user_ty": null } }, - "target": null, + "target": 1, "unwind": "Continue" } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 5 + } }, - "span": 55 + { + "kind": { + "StorageDead": 7 + } + } + ], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" + }, + { + "mutability": "Not" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Not" } ], - "span": 57, "spread_arg": null, - "var_debug_info": [] - }, - "id": 6, - "name": "main" - } - }, - "symbol_name": "_ZN6modulo4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ + "var_debug_info": [ { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 + "argument_index": 1, + "composite": null, + "name": "main", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } } - } - ], - "locals": [ + }, { - "mutability": "Mut", - "span": 44 + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } }, { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" - }, - "span": 31, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 33 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 37 - }, - { - "mutability": "Not", - "span": 38 - }, - { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "f", + "name": "argv", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { - "local": 1, + "local": 3, "projection": [] } } }, { - "argument_index": null, + "argument_index": 4, "composite": null, - "name": "result", + "name": "sigpipe", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 4, "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -953,20 +367,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -984,7 +395,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -992,8 +403,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -1014,18 +424,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -1033,8 +440,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -1055,18 +461,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -1074,14 +477,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -1091,71 +492,34 @@ "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { + "Use": { + "Copy": { "local": 2, "projection": [ { "Field": [ 0, - 15 + 0 + ] + }, + { + "Field": [ + 0, + 0 ] } ] } - ] + } } ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 + } }, { "kind": { "Assign": [ { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 0, + "local": 0, "projection": [] }, { @@ -1163,73 +527,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1237,8 +580,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1248,7 +590,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1260,8 +602,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1269,25 +610,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1298,62 +623,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1390,52 +803,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1469,8 +928,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1497,10 +955,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1509,8 +965,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1525,15 +980,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1548,41 +1001,33 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 43 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1593,348 +1038,600 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "<() as std::process::Termination>::report" + } + }, + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ + { + "statements": [ { "kind": { - "StorageLive": 8 - }, - "span": 3 - }, + "Assign": [ + { + "local": 2, + "projection": [] + }, + { + "BinaryOp": [ + "Eq", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 10, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { + "local": 2, + "projection": [] + } + }, + "expected": false, + "msg": { + "RemainderByZero": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ { "kind": { "Assign": [ { - "local": 8, + "local": 3, "projection": [] }, { - "Aggregate": [ + "BinaryOp": [ + "Eq", { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 10, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] - ] + }, + "user_ty": null + } }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 255, + 255, + 255, + 255 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } - ] + } ] } ] - }, - "span": 3 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 4, "projection": [] }, { - "Ref": [ + "BinaryOp": [ + "Eq", { - "kind": "ReErased" + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } }, - "Shared", { - "local": 8, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 0, + 0, + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } } ] } ] - }, - "span": 2 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 5, "projection": [] }, { - "Cast": [ + "BinaryOp": [ + "BitAnd", { - "PointerCoercion": "Unsize" + "Move": { + "local": 3, + "projection": [] + } }, { - "Copy": { - "local": 7, + "Move": { + "local": 4, "projection": [] } + } + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { + "local": 5, + "projection": [] + } + }, + "expected": false, + "msg": { + "Overflow": [ + "Rem", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 10, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + }, + "target": 2, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 1, + "projection": [] + }, + { + "BinaryOp": [ + "Rem", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } }, - 5 + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 10, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } ] } ] - }, - "span": 2 + } } ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 1, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 2, + 3 + ] + ], + "otherwise": 4 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 30, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null } } ], "destination": { - "local": 5, + "local": 6, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 1 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 } - ], - "terminator": { - "kind": "Return", - "span": 4 } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 11 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "main" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN6modulo4main17h" } ], "types": [ @@ -1976,54 +1673,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2377,39 +2026,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/mutual_recursion.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/mutual_recursion.smir.json.expected similarity index 80% rename from tests/integration/programs/mutual_recursion.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/mutual_recursion.smir.json.expected index b28ac02e..d7c716f2 100644 --- a/tests/integration/programs/mutual_recursion.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/mutual_recursion.smir.json.expected @@ -117,7 +117,6 @@ { "Constant": { "const_": { - "id": 14, "kind": { "Allocated": { "align": 4, @@ -134,7 +133,6 @@ } } }, - "span": 73, "user_ty": null } } @@ -146,18 +144,15 @@ "func": { "Constant": { "const_": { - "id": 13, "kind": "ZeroSized" }, - "span": 72, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 74 + } } }, { @@ -181,15 +176,13 @@ "otherwise": 2 } } - }, - "span": 75 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 76 + "kind": "Return" } }, { @@ -201,7 +194,6 @@ { "Constant": { "const_": { - "id": 16, "kind": { "Allocated": { "align": 8, @@ -235,7 +227,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -247,36 +238,29 @@ "func": { "Constant": { "const_": { - "id": 15, "kind": "ZeroSized" }, - "span": 77, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 77 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 78 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 79 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 77 + "mutability": "Mut" } ], - "span": 80, "spread_arg": null, "var_debug_info": [ { @@ -284,8 +268,7 @@ "composite": null, "name": "ans", "source_info": { - "scope": 1, - "span": 79 + "scope": 1 }, "value": { "Place": { @@ -296,218 +279,11 @@ } ] }, - "id": 8, "name": "main" } }, "symbol_name": "_ZN16mutual_recursion4main17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" - }, - "span": 31, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 33 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 37 - }, - { - "mutability": "Not", - "span": 38 - }, - { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, { "details": null, "mono_item_kind": { @@ -536,8 +312,7 @@ "otherwise": 2 } } - }, - "span": 50 + } } }, { @@ -553,12 +328,11 @@ "Use": { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 1, "bytes": [ - 1 + 0 ], "mutability": "Mut", "provenance": { @@ -567,14 +341,12 @@ } } }, - "span": 52, "user_ty": null } } } ] - }, - "span": 52 + } } ], "terminator": { @@ -582,8 +354,7 @@ "Goto": { "target": 4 } - }, - "span": 51 + } } }, { @@ -607,7 +378,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -624,15 +394,13 @@ } } }, - "span": 53, "user_ty": null } } ] } ] - }, - "span": 54 + } } ], "terminator": { @@ -645,7 +413,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -664,7 +432,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -681,7 +448,6 @@ } } }, - "span": 53, "user_ty": null } } @@ -690,8 +456,7 @@ "target": 3, "unwind": "Continue" } - }, - "span": 54 + } } }, { @@ -711,7 +476,7 @@ { "Field": [ 0, - 26 + 0 ] } ] @@ -719,8 +484,7 @@ } } ] - }, - "span": 54 + } } ], "terminator": { @@ -741,47 +505,38 @@ "func": { "Constant": { "const_": { - "id": 11, "kind": "ZeroSized" }, - "span": 55, "user_ty": null } }, "target": 4, "unwind": "Continue" } - }, - "span": 56 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 57 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 58 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 59 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 54 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 54 + "mutability": "Mut" } ], - "span": 60, "spread_arg": null, "var_debug_info": [ { @@ -789,8 +544,7 @@ "composite": null, "name": "n", "source_info": { - "scope": 0, - "span": 59 + "scope": 0 }, "value": { "Place": { @@ -801,11 +555,10 @@ } ] }, - "id": 6, - "name": "is_even" + "name": "is_odd" } }, - "symbol_name": "_ZN16mutual_recursion7is_even17h" + "symbol_name": "_ZN16mutual_recursion6is_odd17h" }, { "details": null, @@ -835,8 +588,7 @@ "otherwise": 2 } } - }, - "span": 61 + } } }, { @@ -852,12 +604,11 @@ "Use": { "Constant": { "const_": { - "id": 12, "kind": { "Allocated": { "align": 1, "bytes": [ - 0 + 1 ], "mutability": "Mut", "provenance": { @@ -866,14 +617,12 @@ } } }, - "span": 63, "user_ty": null } } } ] - }, - "span": 63 + } } ], "terminator": { @@ -881,8 +630,7 @@ "Goto": { "target": 4 } - }, - "span": 62 + } } }, { @@ -906,7 +654,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -923,15 +670,13 @@ } } }, - "span": 64, "user_ty": null } } ] } ] - }, - "span": 65 + } } ], "terminator": { @@ -944,7 +689,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -963,7 +708,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -980,7 +724,6 @@ } } }, - "span": 64, "user_ty": null } } @@ -989,8 +732,7 @@ "target": 3, "unwind": "Continue" } - }, - "span": 65 + } } }, { @@ -1010,7 +752,7 @@ { "Field": [ 0, - 26 + 0 ] } ] @@ -1018,8 +760,7 @@ } } ] - }, - "span": 65 + } } ], "terminator": { @@ -1040,47 +781,38 @@ "func": { "Constant": { "const_": { - "id": 13, "kind": "ZeroSized" }, - "span": 66, "user_ty": null } }, "target": 4, "unwind": "Continue" } - }, - "span": 67 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 68 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 69 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 70 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 65 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 65 + "mutability": "Mut" } ], - "span": 71, "spread_arg": null, "var_debug_info": [ { @@ -1088,8 +820,7 @@ "composite": null, "name": "n", "source_info": { - "scope": 0, - "span": 70 + "scope": 0 }, "value": { "Place": { @@ -1100,101 +831,273 @@ } ] }, - "id": 7, - "name": "is_odd" + "name": "is_even" } }, - "symbol_name": "_ZN16mutual_recursion6is_odd17h" + "symbol_name": "_ZN16mutual_recursion7is_even17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 0, + "local": 7, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } - } - }, - "span": 46, - "user_ty": null + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] } - } + ] } ] - }, - "span": 46 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 7 + } } ], "terminator": { - "kind": "Return", - "span": 45 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 47 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 48 + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 49, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "main", "source_info": { - "scope": 0, - "span": 48 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1208,20 +1111,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -1239,7 +1139,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1247,8 +1147,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -1269,18 +1168,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -1288,8 +1184,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -1310,18 +1205,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -1329,14 +1221,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -1345,42 +1235,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1389,13 +1243,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -1403,8 +1257,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -1418,73 +1271,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1492,8 +1324,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1503,7 +1334,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1515,8 +1346,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1524,25 +1354,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1553,62 +1367,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1645,52 +1547,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1724,8 +1672,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1752,10 +1699,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1764,8 +1709,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1780,15 +1724,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1803,222 +1745,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -2028,168 +1825,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -2231,54 +1909,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2694,39 +2324,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/option-construction.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/option-construction.smir.json.expected similarity index 78% rename from tests/integration/programs/option-construction.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/option-construction.smir.json.expected index a351ccbd..d7884044 100644 --- a/tests/integration/programs/option-construction.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/option-construction.smir.json.expected @@ -73,11 +73,11 @@ "Aggregate": [ { "Adt": [ - 8, + 0, 1, [ { - "Type": 26 + "Type": 0 } ], null, @@ -88,7 +88,6 @@ { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 4, @@ -105,7 +104,6 @@ } } }, - "span": 62, "user_ty": null } } @@ -113,8 +111,7 @@ ] } ] - }, - "span": 63 + } }, { "kind": { @@ -127,11 +124,11 @@ "Aggregate": [ { "Adt": [ - 8, + 0, 0, [ { - "Type": 26 + "Type": 0 } ], null, @@ -142,8 +139,7 @@ ] } ] - }, - "span": 64 + } } ], "terminator": { @@ -164,47 +160,38 @@ "func": { "Constant": { "const_": { - "id": 10, "kind": "ZeroSized" }, - "span": 60, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 61 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 65 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 66 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 67 + "mutability": "Not" }, { - "mutability": "Not", - "span": 68 + "mutability": "Not" }, { - "mutability": "Not", - "span": 69 + "mutability": "Not" } ], - "span": 70, "spread_arg": null, "var_debug_info": [ { @@ -212,8 +199,7 @@ "composite": null, "name": "a", "source_info": { - "scope": 1, - "span": 67 + "scope": 1 }, "value": { "Place": { @@ -227,8 +213,7 @@ "composite": null, "name": "b", "source_info": { - "scope": 2, - "span": 68 + "scope": 2 }, "value": { "Place": { @@ -242,8 +227,7 @@ "composite": null, "name": "c", "source_info": { - "scope": 3, - "span": 69 + "scope": 3 }, "value": { "Place": { @@ -254,7 +238,6 @@ } ] }, - "id": 7, "name": "main" } }, @@ -265,63 +248,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -332,90 +386,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -425,46 +458,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -475,196 +515,148 @@ "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, { "kind": { "Assign": [ { - "local": 0, + "local": 4, "projection": [] }, { "Use": { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] } - }, - "span": 56, - "user_ty": null + ] } } } ] - }, - "span": 56 + } } ], "terminator": { - "kind": "Return", - "span": 55 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 57 - }, - { - "mutability": "Not", - "span": 58 - } - ], - "span": 59, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 58 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 6, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, + "kind": { + "Call": { + "args": [ { - "Discriminant": { - "local": 1, + "Move": { + "local": 4, "projection": [] } } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] + ], + "destination": { + "local": 3, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, - "targets": { - "branches": [ - [ - 0, - 2 - ], - [ - 1, - 3 - ] - ], - "otherwise": 1 - } + "target": 1, + "unwind": "Continue" } - }, - "span": 45 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 46 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 4 + } + } + ], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + } + ], "destination": { - "local": 3, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 8, "kind": "ZeroSized" }, - "span": 47, "user_ty": null } }, - "target": null, + "target": 2, "unwind": "Continue" } - }, - "span": 48 + } } }, { "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, { "kind": { "Assign": [ { - "local": 0, + "local": 5, "projection": [] }, { "Use": { - "Move": { - "local": 1, + "Copy": { + "local": 2, "projection": [ { - "Downcast": 1 + "Field": [ + 0, + 0 + ] }, { "Field": [ 0, - 26 + 0 ] } ] @@ -672,74 +664,110 @@ } } ] - }, - "span": 50 + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + 0 + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 2 + } } ], "terminator": { - "kind": "Return", - "span": 49 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 52 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 53 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 48 + "mutability": "Mut" + }, + { + "mutability": "Mut" } ], - "span": 54, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "self", + "name": "main", "source_info": { - "scope": 0, - "span": 52 + "scope": 0 }, "value": { "Place": { "local": 1, - "projection": [] + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] } } }, { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "val", + "name": "self", "source_info": { - "scope": 1, - "span": 50 + "scope": 1 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } } ] }, - "id": 5, - "name": "std::option::Option::::unwrap" + "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN4core6option15Option$LT$T$GT$6unwrap17h" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -749,323 +777,121 @@ "arg_count": 1, "blocks": [ { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 15 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 17 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - } - ] - }, - "span": 17 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 4, + "local": 1, "projection": [] } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } } ], "destination": { - "local": 3, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 19 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 3, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } ], "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 2, - "kind": "ZeroSized" - }, - "span": 18, - "user_ty": null - } - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 16 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 21 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 22 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 16 - ] - } - ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 27 + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } } - ], + } + }, + { + "statements": [], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 - }, - { - "mutability": "Mut", - "span": 16 - }, - { - "mutability": "Mut", - "span": 15 - }, - { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Not" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "main", + "name": "f", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] + "projection": [] } } }, { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "self", + "name": "result", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { - "local": 2, + "local": 0, "projection": [] } } @@ -1073,25 +899,25 @@ { "argument_index": 1, "composite": null, - "name": "self", + "name": "dummy", "source_info": { - "scope": 2, - "span": 30 + "scope": 2 }, "value": { - "Place": { - "local": 5, - "projection": [] + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } } ] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1105,55 +931,65 @@ "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": ">::call_once" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1167,74 +1003,48 @@ "terminator": { "kind": { "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], + "args": [], "destination": { "local": 0, "projection": [] }, "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null + "Move": { + "local": 1, + "projection": [] } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1269,8 +1079,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1297,10 +1106,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1309,8 +1116,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1325,15 +1131,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1348,41 +1152,33 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 43 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1393,177 +1189,115 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, { "kind": { "Assign": [ { - "local": 8, + "local": 2, "projection": [] }, { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] + "Discriminant": { + "local": 1, + "projection": [] + } } ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 2, "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 + }, + "targets": { + "branches": [ + [ + 0, + 2 + ], + [ + 1, + 3 ] - } - ] - }, - "span": 2 + ], + "otherwise": 1 + } + } } - ], + } + }, + { + "statements": [], + "terminator": { + "kind": "Unreachable" + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], + "args": [], "destination": { - "local": 5, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 1 + } } }, { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1573,16 +1307,16 @@ }, { "Use": { - "Copy": { - "local": 5, + "Move": { + "local": 1, "projection": [ { - "Downcast": 0 + "Downcast": 1 }, { "Field": [ 0, - 6 + 0 ] } ] @@ -1590,76 +1324,36 @@ } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Not" }, { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "main", + "name": "self", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1669,72 +1363,87 @@ } }, { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "argc", + "name": "val", "source_info": { - "scope": 0, - "span": 10 + "scope": 1 }, "value": { "Place": { - "local": 2, + "local": 0, "projection": [] } } - }, + } + ] + }, + "name": "std::option::Option::::unwrap" + } + }, + "symbol_name": "_ZN4core6option15Option$LT$T$GT$6unwrap17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } } + ], + "terminator": { + "kind": "Return" } - }, + } + ], + "locals": [ { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } + "mutability": "Mut" }, { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } + "mutability": "Not" } - ] + ], + "spread_arg": null, + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1917,54 +1626,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2318,39 +1979,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/param_types.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/param_types.smir.json.expected similarity index 86% rename from tests/integration/programs/param_types.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/param_types.smir.json.expected index b24a6788..c53f4272 100644 --- a/tests/integration/programs/param_types.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/param_types.smir.json.expected @@ -228,11 +228,11 @@ "Aggregate": [ { "Adt": [ - 12, + 0, 0, [ { - "Type": 21 + "Type": 0 } ], null, @@ -243,7 +243,6 @@ { "Constant": { "const_": { - "id": 18, "kind": { "Allocated": { "align": 4, @@ -260,14 +259,12 @@ } } }, - "span": 110, "user_ty": null } }, { "Constant": { "const_": { - "id": 19, "kind": { "Allocated": { "align": 8, @@ -288,7 +285,6 @@ } } }, - "span": 111, "user_ty": null } } @@ -296,8 +292,7 @@ ] } ] - }, - "span": 112 + } }, { "kind": { @@ -310,11 +305,11 @@ "Aggregate": [ { "Adt": [ - 12, + 0, 0, [ { - "Type": 41 + "Type": 0 } ], null, @@ -325,7 +320,6 @@ { "Constant": { "const_": { - "id": 20, "kind": { "Allocated": { "align": 8, @@ -346,14 +340,12 @@ } } }, - "span": 113, "user_ty": null } }, { "Constant": { "const_": { - "id": 19, "kind": { "Allocated": { "align": 8, @@ -374,7 +366,6 @@ } } }, - "span": 114, "user_ty": null } } @@ -382,8 +373,7 @@ ] } ] - }, - "span": 115 + } }, { "kind": { @@ -400,7 +390,7 @@ { "Field": [ 1, - 34 + 0 ] } ] @@ -408,8 +398,7 @@ } } ] - }, - "span": 116 + } }, { "kind": { @@ -422,14 +411,14 @@ "Aggregate": [ { "Adt": [ - 13, + 0, 1, [ { - "Type": 9 + "Type": 0 }, { - "Type": 34 + "Type": 0 } ], null, @@ -447,8 +436,7 @@ ] } ] - }, - "span": 117 + } }, { "kind": { @@ -465,7 +453,7 @@ { "Field": [ 0, - 41 + 0 ] } ] @@ -473,8 +461,7 @@ } } ] - }, - "span": 118 + } }, { "kind": { @@ -487,14 +474,14 @@ "Aggregate": [ { "Adt": [ - 13, + 0, 0, [ { - "Type": 41 + "Type": 0 }, { - "Type": 9 + "Type": 0 } ], null, @@ -512,8 +499,7 @@ ] } ] - }, - "span": 119 + } } ], "terminator": { @@ -534,18 +520,15 @@ "func": { "Constant": { "const_": { - "id": 17, "kind": "ZeroSized" }, - "span": 108, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 109 + } } }, { @@ -568,18 +551,15 @@ "func": { "Constant": { "const_": { - "id": 21, "kind": "ZeroSized" }, - "span": 120, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 121 + } } }, { @@ -600,12 +580,11 @@ "projection": [] } }, - 41 + 0 ] } ] - }, - "span": 124 + } } ], "terminator": { @@ -626,18 +605,15 @@ "func": { "Constant": { "const_": { - "id": 22, "kind": "ZeroSized" }, - "span": 122, "user_ty": null } }, "target": 3, "unwind": "Continue" } - }, - "span": 123 + } } }, { @@ -667,8 +643,7 @@ ] } ] - }, - "span": 125 + } } ], "terminator": { @@ -690,15 +665,13 @@ "otherwise": 4 } } - }, - "span": 125 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 126 + "kind": "Return" } }, { @@ -710,7 +683,6 @@ { "Constant": { "const_": { - "id": 24, "kind": { "Allocated": { "align": 8, @@ -744,7 +716,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -756,76 +727,59 @@ "func": { "Constant": { "const_": { - "id": 23, "kind": "ZeroSized" }, - "span": 127, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 127 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 128 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 129 + "mutability": "Not" }, { - "mutability": "Not", - "span": 130 + "mutability": "Not" }, { - "mutability": "Not", - "span": 131 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 116 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 132 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 118 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 133 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 109 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 125 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 124 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 123 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 127 + "mutability": "Mut" } ], - "span": 134, "spread_arg": null, "var_debug_info": [ { @@ -833,8 +787,7 @@ "composite": null, "name": "a", "source_info": { - "scope": 1, - "span": 129 + "scope": 1 }, "value": { "Place": { @@ -848,8 +801,7 @@ "composite": null, "name": "b", "source_info": { - "scope": 2, - "span": 130 + "scope": 2 }, "value": { "Place": { @@ -863,8 +815,7 @@ "composite": null, "name": "c", "source_info": { - "scope": 3, - "span": 131 + "scope": 3 }, "value": { "Place": { @@ -878,8 +829,7 @@ "composite": null, "name": "d", "source_info": { - "scope": 4, - "span": 132 + "scope": 4 }, "value": { "Place": { @@ -893,8 +843,7 @@ "composite": null, "name": "x", "source_info": { - "scope": 5, - "span": 133 + "scope": 5 }, "value": { "Place": { @@ -905,7 +854,6 @@ } ] }, - "id": 11, "name": "main" } }, @@ -916,98 +864,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 66 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 66 - }, - { - "mutability": "Not", - "span": 66 - } - ], - "span": 66, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 5, - "name": "std::ptr::drop_in_place::" - } - }, - "symbol_name": "_ZN4core3ptr23drop_in_place$LT$u8$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 66 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 66 - }, - { - "mutability": "Not", - "span": 66 - } - ], - "span": 66, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 5, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -1018,90 +1002,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -1111,136 +1074,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 104, - "user_ty": null - } - } - } - ] - }, - "span": 104 + "Place": { + "local": 3, + "projection": [] } - ], - "terminator": { - "kind": "Return", - "span": 103 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 105 }, { - "mutability": "Not", - "span": 106 - } - ], - "span": 107, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, + "argument_index": 4, "composite": null, - "name": "self", + "name": "sigpipe", "source_info": { - "scope": 0, - "span": 106 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 10, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1251,106 +1131,148 @@ "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, { "kind": { "Assign": [ { - "local": 2, + "local": 4, "projection": [] }, { - "Discriminant": { - "local": 1, - "projection": [] + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } } } ] - }, - "span": 68 + } } ], "terminator": { "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] + "Call": { + "args": [ + { + "Move": { + "local": 4, + "projection": [] + } } + ], + "destination": { + "local": 3, + "projection": [] }, - "targets": { - "branches": [ - [ - 0, - 2 - ], - [ - 1, - 3 - ] - ], - "otherwise": 1 - } + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" } - }, - "span": 67 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 68 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 4 + } + } + ], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + } + ], "destination": { - "local": 3, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 13, "kind": "ZeroSized" }, - "span": 69, "user_ty": null } }, - "target": null, + "target": 2, "unwind": "Continue" } - }, - "span": 70 + } } }, { "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, { "kind": { "Assign": [ { - "local": 0, + "local": 5, "projection": [] }, { "Use": { - "Move": { - "local": 1, + "Copy": { + "local": 2, "projection": [ { - "Downcast": 1 + "Field": [ + 0, + 0 + ] }, { "Field": [ 0, - 34 + 0 ] } ] @@ -1358,74 +1280,110 @@ } } ] - }, - "span": 72 + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + 0 + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 2 + } } ], "terminator": { - "kind": "Return", - "span": 71 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 73 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 74 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 75 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 70 - } - ], - "span": 76, + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + } + ], "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "self", + "name": "main", "source_info": { - "scope": 0, - "span": 74 + "scope": 0 }, "value": { "Place": { "local": 1, - "projection": [] + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] } } }, { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "val", + "name": "self", "source_info": { - "scope": 1, - "span": 72 + "scope": 1 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } } ] }, - "id": 6, - "name": "std::option::Option::::unwrap" + "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN4core6option15Option$LT$T$GT$6unwrap17h" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1435,80 +1393,190 @@ "arg_count": 1, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "Discriminant": { + "Move": { "local": 1, "projection": [] } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } } - ] - }, - "span": 78 + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } } - ], + } + }, + { + "statements": [], "terminator": { "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } } + ], + "destination": { + "local": 2, + "projection": [] }, - "targets": { - "branches": [ - [ - 0, - 3 - ], - [ - 1, - 2 - ] - ], - "otherwise": 1 - } + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" } - }, - "span": 77 + } } }, { "statements": [], "terminator": { - "kind": "Unreachable", - "span": 78 + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } } }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] + }, + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + } + }, + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, { "kind": { "Assign": [ { - "local": 3, + "local": 4, "projection": [] }, { "Use": { - "Move": { - "local": 1, + "Copy": { + "local": 2, "projection": [ + "Deref", { - "Downcast": 1 + "Field": [ + 0, + 0 + ] }, { "Field": [ 0, - 34 + 0 ] } ] @@ -1516,137 +1584,55 @@ } } ] - }, - "span": 80 + } }, { "kind": { "Assign": [ { - "local": 0, + "local": 3, "projection": [] }, { - "Aggregate": [ + "BinaryOp": [ + "BitAnd", { - "Adt": [ - 8, - 1, - [ - { - "Type": 34 - } - ], - null, - null - ] + "Move": { + "local": 4, + "projection": [] + } }, - [ - { - "Copy": { - "local": 3, - "projection": [] - } + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 16, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } - ] + } ] } ] - }, - "span": 81 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 } }, - "span": 79 - } - }, - { - "statements": [ { "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 8, - 0, - [ - { - "Type": 34 - } - ], - null, - null - ] - }, - [] - ] - } - ] - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 82 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 83 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Continue" + "StorageDead": 4 } - }, - "span": 84 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Discriminant": { - "local": 1, - "projection": [] - } - } - ] - }, - "span": 84 } ], "terminator": { @@ -1654,180 +1640,106 @@ "SwitchInt": { "discr": { "Move": { - "local": 4, + "local": 3, "projection": [] } }, "targets": { "branches": [ - [ - 1, - 4 - ], [ 0, - 5 + 2 ] ], "otherwise": 1 } } - }, - "span": 84 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 85 - }, - { - "mutability": "Not", - "span": 86 - }, - { - "mutability": "Mut", - "span": 87 - }, - { - "mutability": "Not", - "span": 80 - }, - { - "mutability": "Mut", - "span": 84 - } - ], - "span": 88, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 86 - }, - "value": { - "Place": { - "local": 1, - "projection": [] } } }, - { - "argument_index": null, - "composite": null, - "name": "x", - "source_info": { - "scope": 1, - "span": 80 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "id": 7, - "name": "std::result::Result::::err" - } - }, - "symbol_name": "_ZN4core6result19Result$LT$T$C$E$GT$3err17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ { "statements": [ { "kind": { - "Assign": [ + "StorageDead": 3 + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 2, - "projection": [] + "Move": { + "local": 1, + "projection": [] + } }, { - "Discriminant": { - "local": 1, + "Move": { + "local": 2, "projection": [] } } - ] - }, - "span": 90 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, - "targets": { - "branches": [ - [ - 0, - 3 - ], - [ - 1, - 2 - ] - ], - "otherwise": 1 - } + "target": 6, + "unwind": "Continue" } - }, - "span": 89 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 90 + } } }, { "statements": [ { "kind": { - "StorageLive": 3 - }, - "span": 94 + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 6 + } }, { "kind": { "Assign": [ { - "local": 3, + "local": 6, "projection": [] }, { "Use": { - "Move": { - "local": 1, + "Copy": { + "local": 2, "projection": [ + "Deref", { - "Downcast": 1 + "Field": [ + 0, + 0 + ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -1835,62 +1747,85 @@ } } ] - }, - "span": 94 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 95 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 5, "projection": [] }, { - "Ref": [ + "BinaryOp": [ + "BitAnd", { - "kind": "ReErased" + "Move": { + "local": 6, + "projection": [] + } }, - "Shared", { - "local": 3, - "projection": [] - } - ] - } + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 32, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + } ] - }, - "span": 95 + } }, { "kind": { - "Assign": [ - { + "StorageDead": 6 + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { "local": 5, "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 6, - "projection": [] - } - }, - 40 - ] } - ] - }, - "span": 95 + }, + "targets": { + "branches": [ + [ + 0, + 4 + ] + ], + "otherwise": 3 + } + } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 5 + } } ], "terminator": { @@ -1898,168 +1833,119 @@ "Call": { "args": [ { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 43, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 92, - "user_ty": null + "Move": { + "local": 1, + "projection": [] } }, { "Move": { - "local": 5, + "local": 2, "projection": [] } } ], "destination": { - "local": 4, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 91, "user_ty": null } }, - "target": null, - "unwind": { - "Cleanup": 4 - } + "target": 5, + "unwind": "Continue" } - }, - "span": 93 + } } }, { "statements": [ { "kind": { - "Assign": [ + "StorageDead": 5 + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 0, - "projection": [] + "Move": { + "local": 1, + "projection": [] + } }, { - "Use": { - "Move": { - "local": 1, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 41 - ] - } - ] - } + "Move": { + "local": 2, + "projection": [] } } - ] - }, - "span": 97 + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 5, + "unwind": "Continue" + } } - ], - "terminator": { - "kind": "Return", - "span": 96 } }, { "statements": [], "terminator": { "kind": { - "Drop": { - "place": { - "local": 3, - "projection": [] - }, - "target": 5, - "unwind": "Terminate" + "Goto": { + "target": 6 } - }, - "span": 98 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 99 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 100 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 101 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 102 + "mutability": "Not" }, { - "mutability": "Not", - "span": 94 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 93 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 95 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 95 + "mutability": "Mut" } ], - "span": 99, "spread_arg": null, "var_debug_info": [ { @@ -2067,8 +1953,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 0, - "span": 101 + "scope": 0 }, "value": { "Place": { @@ -2078,394 +1963,125 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "t", + "name": "f", "source_info": { - "scope": 1, - "span": 97 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "e", + "name": "self", "source_info": { - "scope": 2, - "span": 94 + "scope": 1 }, "value": { "Place": { - "local": 3, + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 2 + }, + "value": { + "Place": { + "local": 2, "projection": [] } } } ] }, - "id": 9, - "name": "std::result::Result::::unwrap" + "name": "core::fmt::num::::fmt" } }, - "symbol_name": "_ZN4core6result19Result$LT$T$C$E$GT$6unwrap17h" + "symbol_name": "_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 15 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 17 - }, - { - "kind": { - "Assign": [ + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 4, - "projection": [] + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - } - ] - }, - "span": 17 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ { "Move": { - "local": 4, + "local": 2, "projection": [] } } ], "destination": { - "local": 3, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 19 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 2, - "kind": "ZeroSized" - }, - "span": 18, - "user_ty": null - } - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 16 } }, { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 21 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 22 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 16 - ] - } - ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 27 - } - ], + "statements": [], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 - }, - { - "mutability": "Mut", - "span": 16 - }, - { - "mutability": "Mut", - "span": 15 - }, - { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Not" } ], - "span": 3, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] + "spread_arg": 2, + "var_debug_info": [] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -2493,37 +2109,30 @@ "target": 1, "unwind": "Continue" } - }, - "span": 65 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 65 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 65 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 65 + "mutability": "Not" }, { - "mutability": "Not", - "span": 65 + "mutability": "Not" } ], - "span": 65, "spread_arg": 2, "var_debug_info": [] }, - "id": 4, "name": ">::call_once" } }, @@ -2537,94 +2146,13 @@ "arg_count": 2, "blocks": [ { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + "statements": [ + { + "kind": { + "Assign": [ { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized" - }, - "span": 65, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 65 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 65 - }, - { - "mutability": "Not", - "span": 65 - }, - { - "mutability": "Not", - "span": 65 - } - ], - "span": 65, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 4, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] + "local": 3, + "projection": [] }, { "Ref": [ @@ -2643,8 +2171,7 @@ ] } ] - }, - "span": 65 + } } ], "terminator": { @@ -2671,10 +2198,8 @@ "func": { "Constant": { "const_": { - "id": 12, "kind": "ZeroSized" }, - "span": 65, "user_ty": null } }, @@ -2683,8 +2208,7 @@ "Cleanup": 3 } } - }, - "span": 65 + } } }, { @@ -2699,15 +2223,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 65 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 65 + "kind": "Return" } }, { @@ -2722,41 +2244,33 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 65 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 65 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 65 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 65 + "mutability": "Not" }, { - "mutability": "Not", - "span": 65 + "mutability": "Not" }, { - "mutability": "Not", - "span": 65 + "mutability": "Not" } ], - "span": 65, "spread_arg": 2, "var_debug_info": [] }, - "id": 4, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -2767,100 +2281,85 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::" + } + }, + "symbol_name": "_ZN4core3ptr23drop_in_place$LT$u8$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 44 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 45 - }, { "kind": { "Assign": [ { - "local": 4, + "local": 2, "projection": [] }, { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref", - { - "Field": [ - 0, - 21 - ] - } - ] - } + "Discriminant": { + "local": 1, + "projection": [] } } ] - }, - "span": 45 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 6, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 16, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ] - } - ] - }, - "span": 44 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 46 + } } ], "terminator": { @@ -2868,7 +2367,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 3, + "local": 2, "projection": [] } }, @@ -2877,99 +2376,69 @@ [ 0, 2 + ], + [ + 1, + 3 ] ], "otherwise": 1 } } - }, - "span": 43 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 43 - } - ], + "statements": [], + "terminator": { + "kind": "Unreachable" + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], + "args": [], "destination": { - "local": 0, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 47, "user_ty": null } }, - "target": 6, + "target": null, "unwind": "Continue" } - }, - "span": 48 + } } }, { "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 43 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 50 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 51 - }, { "kind": { "Assign": [ { - "local": 6, + "local": 0, "projection": [] }, { "Use": { - "Copy": { - "local": 2, + "Move": { + "local": 1, "projection": [ - "Deref", + { + "Downcast": 1 + }, { "Field": [ 0, - 21 + 0 ] } ] @@ -2977,60 +2446,89 @@ } } ] - }, - "span": 51 - }, + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "val", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + } + ] + }, + "name": "std::option::Option::::unwrap" + } + }, + "symbol_name": "_ZN4core6option15Option$LT$T$GT$6unwrap17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [ { "kind": { "Assign": [ { - "local": 5, + "local": 2, "projection": [] }, { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 32, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ] + "Discriminant": { + "local": 1, + "projection": [] + } } ] - }, - "span": 50 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 52 + } } ], "terminator": { @@ -3038,7 +2536,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 5, + "local": 2, "projection": [] } }, @@ -3046,160 +2544,222 @@ "branches": [ [ 0, - 4 + 3 + ], + [ + 1, + 2 ] ], - "otherwise": 3 + "otherwise": 1 } } - }, - "span": 49 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Unreachable" } }, { "statements": [ { "kind": { - "StorageDead": 5 - }, - "span": 49 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ + "Assign": [ { - "Move": { - "local": 1, - "projection": [] - } + "local": 3, + "projection": [] }, { - "Move": { - "local": 2, - "projection": [] + "Use": { + "Move": { + "local": 1, + "projection": [ + { + "Downcast": 1 + }, + { + "Field": [ + 0, + 0 + ] + } + ] + } } } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized" - }, - "span": 53, - "user_ty": null - } - }, - "target": 5, - "unwind": "Continue" + ] } }, - "span": 54 - } - }, - { - "statements": [ { "kind": { - "StorageDead": 5 - }, - "span": 49 + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Aggregate": [ + { + "Adt": [ + 0, + 1, + [ + { + "Type": 0 + } + ], + null, + null + ] + }, + [ + { + "Copy": { + "local": 3, + "projection": [] + } + } + ] + ] + } + ] + } } ], "terminator": { "kind": { - "Call": { - "args": [ + "Goto": { + "target": 6 + } + } + } + }, + { + "statements": [ + { + "kind": { + "Assign": [ { - "Move": { - "local": 1, - "projection": [] - } + "local": 0, + "projection": [] }, { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 10, - "kind": "ZeroSized" - }, - "span": 55, - "user_ty": null + "Aggregate": [ + { + "Adt": [ + 0, + 0, + [ + { + "Type": 0 + } + ], + null, + null + ] + }, + [] + ] } - }, - "target": 5, - "unwind": "Continue" + ] } - }, - "span": 56 + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 6 + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } }, { "statements": [], "terminator": { "kind": { - "Goto": { - "target": 6 + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Continue" } - }, - "span": 57 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Discriminant": { + "local": 1, + "projection": [] + } + } + ] + } + } + ], "terminator": { - "kind": "Return", - "span": 58 + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 4, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 1, + 4 + ], + [ + 0, + 5 + ] + ], + "otherwise": 1 + } + } + } } } ], "locals": [ { - "mutability": "Mut", - "span": 59 - }, - { - "mutability": "Not", - "span": 60 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 61 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 44 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 45 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 50 - }, - { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" } ], - "span": 64, "spread_arg": null, "var_debug_info": [ { @@ -3207,8 +2767,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 0, - "span": 60 + "scope": 0 }, "value": { "Place": { @@ -3218,132 +2777,129 @@ } }, { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "f", + "name": "x", "source_info": { - "scope": 0, - "span": 61 + "scope": 1 }, "value": { "Place": { - "local": 2, + "local": 3, "projection": [] } } - }, + } + ] + }, + "name": "std::result::Result::::err" + } + }, + "symbol_name": "_ZN4core6result19Result$LT$T$C$E$GT$3err17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 62 - }, - "value": { - "Place": { - "local": 2, - "projection": [] + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 2, + "projection": [] + }, + { + "Discriminant": { + "local": 1, + "projection": [] + } + } + ] + } } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 63 - }, - "value": { - "Place": { - "local": 2, - "projection": [] + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 2, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 3 + ], + [ + 1, + 2 + ] + ], + "otherwise": 1 + } + } } } - } - ] - }, - "id": 3, - "name": "core::fmt::num::::fmt" - } - }, - "symbol_name": "_ZN4core3fmt3num49_$LT$impl$u20$core..fmt..Debug$u20$for$u20$u8$GT$3fmt17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ + }, + { + "statements": [], + "terminator": { + "kind": "Unreachable" + } + }, { "statements": [ { "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 + "StorageLive": 3 + } }, { "kind": { "Assign": [ { - "local": 8, + "local": 3, "projection": [] }, { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] + "Use": { + "Move": { + "local": 1, + "projection": [ + { + "Downcast": 1 + }, + { + "Field": [ + 0, + 0 + ] } - } - ] - ] + ] + } + } } ] - }, - "span": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 6, "projection": [] }, { @@ -3353,20 +2909,19 @@ }, "Shared", { - "local": 8, + "local": 3, "projection": [] } ] } ] - }, - "span": 2 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 5, "projection": [] }, { @@ -3376,16 +2931,15 @@ }, { "Copy": { - "local": 7, + "local": 6, "projection": [] } }, - 5 + 0 ] } ] - }, - "span": 2 + } } ], "terminator": { @@ -3393,59 +2947,73 @@ "Call": { "args": [ { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 43, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null } }, { "Move": { - "local": 4, + "local": 5, "projection": [] } } ], "destination": { - "local": 5, + "local": 4, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, - "target": 1, - "unwind": "Continue" + "target": null, + "unwind": { + "Cleanup": 4 + } } - }, - "span": 1 + } } }, { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -3455,8 +3023,8 @@ }, { "Use": { - "Copy": { - "local": 5, + "Move": { + "local": 1, "projection": [ { "Downcast": 0 @@ -3464,7 +3032,7 @@ { "Field": [ 0, - 6 + 0 ] } ] @@ -3472,76 +3040,66 @@ } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 8 }, { - "mutability": "Not", - "span": 9 + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 3, + "projection": [] + }, + "target": 5, + "unwind": "Terminate" + } + } + } }, { - "mutability": "Not", - "span": 10 + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 11 + "mutability": "Not" }, { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "main", + "name": "self", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -3551,27 +3109,25 @@ } }, { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "argc", + "name": "t", "source_info": { - "scope": 0, - "span": 10 + "scope": 1 }, "value": { "Place": { - "local": 2, + "local": 0, "projection": [] } } }, { - "argument_index": 3, + "argument_index": null, "composite": null, - "name": "argv", + "name": "e", "source_info": { - "scope": 0, - "span": 11 + "scope": 2 }, "value": { "Place": { @@ -3579,44 +3135,75 @@ "projection": [] } } - }, + } + ] + }, + "name": "std::result::Result::::unwrap" + } + }, + "symbol_name": "_ZN4core6result19Result$LT$T$C$E$GT$6unwrap17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } } + ], + "terminator": { + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } + "mutability": "Not" } - ] + ], + "spread_arg": null, + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -3683,8 +3270,7 @@ "discriminants": [ 0, 1, - 2, - 3 + 2 ], "fields": "elided", "layout": { @@ -3692,7 +3278,7 @@ "Scalar": { "Initialized": { "valid_range": { - "end": 3, + "end": 2, "start": 0 }, "value": { @@ -3722,7 +3308,7 @@ "tag": { "Initialized": { "valid_range": { - "end": 3, + "end": 2, "start": 0 }, "value": { @@ -3798,7 +3384,81 @@ "index": 2 } } + } + ] + } + } + }, + "name": "std::fmt::Alignment" + } + } + ], + [ + { + "EnumType": { + "discriminants": [ + 0, + 1 + ], + "fields": "elided", + "layout": { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 3, + "start": 0 }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Multiple": { + "tag": { + "Initialized": { + "valid_range": { + "end": 3, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + }, + "tag_encoding": { + "Niche": { + "niche_start": 3, + "niche_variants": { + "end": 0, + "start": 0 + }, + "untagged_variant": 1 + } + }, + "tag_field": 0, + "variants": [ { "abi": { "Aggregate": { @@ -3811,12 +3471,48 @@ "offsets": [] } }, + "size": { + "num_bits": 0 + }, + "variants": { + "Single": { + "index": 0 + } + } + }, + { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 2, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, "size": { "num_bits": 8 }, "variants": { "Single": { - "index": 3 + "index": 1 } } } @@ -3824,7 +3520,7 @@ } } }, - "name": "core::fmt::rt::Alignment" + "name": "std::option::Option" } } ], @@ -4111,54 +3807,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "EnumType": { @@ -4537,28 +4185,61 @@ "Arbitrary": { "offsets": [ { - "num_bits": 416 + "num_bits": 0 }, { "num_bits": 384 + } + ] + } + }, + "size": { + "num_bits": 512 + }, + "variants": { + "Single": { + "index": 0 + } + } + }, + "name": "std::fmt::Formatter<'_>" + } + } + ], + [ + { + "StructType": { + "fields": "elided", + "layout": { + "abi": { + "Aggregate": { + "sized": true + } + }, + "abi_align": 8, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 288 + }, + { + "num_bits": 256 }, { - "num_bits": 448 + "num_bits": 320 }, { "num_bits": 0 }, { "num_bits": 128 - }, - { - "num_bits": 256 } ] } }, "size": { - "num_bits": 512 + "num_bits": 384 }, "variants": { "Single": { @@ -4566,7 +4247,7 @@ } } }, - "name": "std::fmt::Formatter<'_>" + "name": "std::fmt::FormattingOptions" } } ], @@ -5022,39 +4703,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/primitive-type-bounds.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/primitive-type-bounds.smir.json.expected similarity index 79% rename from tests/integration/programs/primitive-type-bounds.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/primitive-type-bounds.smir.json.expected index dfff4114..f84e73b4 100644 --- a/tests/integration/programs/primitive-type-bounds.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/primitive-type-bounds.smir.json.expected @@ -108,7 +108,6 @@ { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -125,14 +124,12 @@ } } }, - "span": 50, "user_ty": null } }, { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -149,15 +146,13 @@ } } }, - "span": 51, "user_ty": null } } ] } ] - }, - "span": 52 + } } ], "terminator": { @@ -170,7 +165,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -183,7 +178,6 @@ { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -200,14 +194,12 @@ } } }, - "span": 50, "user_ty": null } }, { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -224,7 +216,6 @@ } } }, - "span": 51, "user_ty": null } } @@ -233,8 +224,7 @@ "target": 1, "unwind": "Continue" } - }, - "span": 52 + } } }, { @@ -254,7 +244,7 @@ { "Field": [ 0, - 26 + 0 ] } ] @@ -262,8 +252,7 @@ } } ] - }, - "span": 52 + } }, { "kind": { @@ -276,7 +265,6 @@ "Use": { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 4, @@ -293,14 +281,12 @@ } } }, - "span": 54, "user_ty": null } } } ] - }, - "span": 55 + } }, { "kind": { @@ -327,8 +313,7 @@ ] } ] - }, - "span": 53 + } } ], "terminator": { @@ -350,15 +335,13 @@ "otherwise": 2 } } - }, - "span": 53 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 56 + "kind": "Return" } }, { @@ -370,7 +353,6 @@ { "Constant": { "const_": { - "id": 13, "kind": { "Allocated": { "align": 8, @@ -404,7 +386,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -416,48 +397,38 @@ "func": { "Constant": { "const_": { - "id": 12, "kind": "ZeroSized" }, - "span": 57, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 57 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 58 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 59 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 52 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 53 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 57 + "mutability": "Mut" } ], - "span": 61, "spread_arg": null, "var_debug_info": [ { @@ -465,13 +436,11 @@ "composite": null, "name": "a", "source_info": { - "scope": 1, - "span": 60 + "scope": 1 }, "value": { "Const": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 4, @@ -488,7 +457,6 @@ } } }, - "span": 54, "user_ty": null } } @@ -498,8 +466,7 @@ "composite": null, "name": "b", "source_info": { - "scope": 2, - "span": 59 + "scope": 2 }, "value": { "Place": { @@ -510,7 +477,6 @@ } ] }, - "id": 6, "name": "main" } }, @@ -521,63 +487,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -588,90 +625,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 38 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -681,136 +697,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -824,20 +757,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -855,7 +785,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -863,8 +793,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -885,18 +814,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -904,8 +830,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -926,18 +851,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -945,14 +867,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -961,42 +881,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1005,13 +889,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -1019,8 +903,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -1034,73 +917,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1108,8 +970,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1119,7 +980,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1131,8 +992,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1140,25 +1000,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1169,62 +1013,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1261,52 +1193,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1340,8 +1318,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1368,10 +1345,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1380,8 +1355,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1396,15 +1370,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1419,222 +1391,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1644,168 +1471,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1847,54 +1555,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2310,39 +1970,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/recursion-simple-match.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/recursion-simple-match.smir.json.expected similarity index 79% rename from tests/integration/programs/recursion-simple-match.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/recursion-simple-match.smir.json.expected index 7e331550..2d2ab057 100644 --- a/tests/integration/programs/recursion-simple-match.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/recursion-simple-match.smir.json.expected @@ -94,413 +94,6 @@ ] ], "items": [ - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 0, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 10, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 63, - "user_ty": null - } - } - ], - "destination": { - "local": 1, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized" - }, - "span": 62, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 64 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 1, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 55, - 2 - ] - ], - "otherwise": 3 - } - } - }, - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 66 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 14, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 27, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 13, - "kind": "ZeroSized" - }, - "span": 67, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 67 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 68 - }, - { - "mutability": "Not", - "span": 69 - }, - { - "mutability": "Mut", - "span": 67 - } - ], - "span": 70, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "ans", - "source_info": { - "scope": 1, - "span": 69 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - }, - "id": 7, - "name": "main" - } - }, - "symbol_name": "_ZN22recursion_simple_match4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" - }, - "span": 31, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 33 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 37 - }, - { - "mutability": "Not", - "span": 38 - }, - { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, { "details": null, "mono_item_kind": { @@ -529,8 +122,7 @@ "otherwise": 1 } } - }, - "span": 50 + } } }, { @@ -554,7 +146,6 @@ { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -571,15 +162,13 @@ } } }, - "span": 51, "user_ty": null } } ] } ] - }, - "span": 52 + } } ], "terminator": { @@ -592,7 +181,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -611,7 +200,6 @@ { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -628,7 +216,6 @@ } } }, - "span": 51, "user_ty": null } } @@ -637,8 +224,7 @@ "target": 3, "unwind": "Continue" } - }, - "span": 52 + } } }, { @@ -654,7 +240,6 @@ "Use": { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -671,14 +256,12 @@ } } }, - "span": 53, "user_ty": null } } } ] - }, - "span": 53 + } } ], "terminator": { @@ -686,8 +269,7 @@ "Goto": { "target": 6 } - }, - "span": 53 + } } }, { @@ -707,7 +289,7 @@ { "Field": [ 0, - 26 + 0 ] } ] @@ -715,8 +297,7 @@ } } ] - }, - "span": 52 + } } ], "terminator": { @@ -737,18 +318,15 @@ "func": { "Constant": { "const_": { - "id": 11, "kind": "ZeroSized" }, - "span": 54, "user_ty": null } }, "target": 4, "unwind": "Continue" } - }, - "span": 55 + } } }, { @@ -778,8 +356,7 @@ ] } ] - }, - "span": 56 + } } ], "terminator": { @@ -792,7 +369,7 @@ { "Field": [ 1, - 25 + 0 ] } ] @@ -819,8 +396,7 @@ "target": 5, "unwind": "Continue" } - }, - "span": 56 + } } }, { @@ -840,7 +416,7 @@ { "Field": [ 0, - 26 + 0 ] } ] @@ -848,63 +424,235 @@ } } ] - }, - "span": 56 + } } ], "terminator": { "kind": { - "Goto": { - "target": 6 + "Goto": { + "target": 6 + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "n", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + } + ] + }, + "name": "sum_to_n_rec" + } + }, + "symbol_name": "_ZN22recursion_simple_match12sum_to_n_rec17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 10, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ], + "destination": { + "local": 1, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Copy": { + "local": 1, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 55, + 2 + ] + ], + "otherwise": 3 + } } - }, - "span": 57 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 58 + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 27, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": null, + "unwind": "Continue" + } + } } } ], "locals": [ { - "mutability": "Mut", - "span": 59 - }, - { - "mutability": "Not", - "span": 60 - }, - { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 52 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" } ], - "span": 61, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "n", + "name": "ans", "source_info": { - "scope": 0, - "span": 60 + "scope": 1 }, "value": { "Place": { @@ -915,101 +663,273 @@ } ] }, - "id": 6, - "name": "sum_to_n_rec" + "name": "main" } }, - "symbol_name": "_ZN22recursion_simple_match12sum_to_n_rec17h" + "symbol_name": "_ZN22recursion_simple_match4main17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 0, + "local": 7, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] } - }, - "span": 46, - "user_ty": null + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] } - } + ] } ] - }, - "span": 46 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 7 + } } ], "terminator": { - "kind": "Return", - "span": 45 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 47 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 48 + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 49, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "main", "source_info": { - "scope": 0, - "span": 48 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1023,20 +943,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -1054,7 +971,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1062,8 +979,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -1084,18 +1000,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -1103,8 +1016,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -1125,18 +1037,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -1144,14 +1053,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -1160,42 +1067,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1204,13 +1075,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -1218,8 +1089,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -1233,73 +1103,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1307,8 +1156,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1318,7 +1166,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1330,12 +1178,145 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + }, + "name": "std::rt::lang_start::<()>::{closure#0}" + } + }, + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 }, "value": { "Place": { - "local": 2, + "local": 0, "projection": [] } } @@ -1343,25 +1324,25 @@ { "argument_index": 1, "composite": null, - "name": "self", + "name": "dummy", "source_info": { - "scope": 2, - "span": 30 + "scope": 2 }, "value": { - "Place": { - "local": 5, - "projection": [] + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } } ] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1375,55 +1356,65 @@ "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": ">::call_once" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1437,74 +1428,48 @@ "terminator": { "kind": { "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], + "args": [], "destination": { "local": 0, "projection": [] }, "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null + "Move": { + "local": 1, + "projection": [] } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1539,8 +1504,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1567,10 +1531,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1579,8 +1541,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1595,15 +1556,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1618,222 +1577,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1843,168 +1657,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -2046,54 +1741,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2509,39 +2156,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/recursion-simple.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/recursion-simple.smir.json.expected similarity index 79% rename from tests/integration/programs/recursion-simple.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/recursion-simple.smir.json.expected index b39ff5a7..a2781bcf 100644 --- a/tests/integration/programs/recursion-simple.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/recursion-simple.smir.json.expected @@ -94,413 +94,6 @@ ] ], "items": [ - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 0, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 10, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 63, - "user_ty": null - } - } - ], - "destination": { - "local": 1, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized" - }, - "span": 62, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 64 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 1, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 55, - 2 - ] - ], - "otherwise": 3 - } - } - }, - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 66 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 14, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 27, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 13, - "kind": "ZeroSized" - }, - "span": 67, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 67 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 68 - }, - { - "mutability": "Not", - "span": 69 - }, - { - "mutability": "Mut", - "span": 67 - } - ], - "span": 70, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "ans", - "source_info": { - "scope": 1, - "span": 69 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - }, - "id": 7, - "name": "main" - } - }, - "symbol_name": "_ZN16recursion_simple4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" - }, - "span": 31, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 33 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 37 - }, - { - "mutability": "Not", - "span": 38 - }, - { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, { "details": null, "mono_item_kind": { @@ -529,8 +122,7 @@ "otherwise": 2 } } - }, - "span": 50 + } } }, { @@ -546,7 +138,6 @@ "Use": { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -563,14 +154,12 @@ } } }, - "span": 52, "user_ty": null } } } ] - }, - "span": 52 + } } ], "terminator": { @@ -578,8 +167,7 @@ "Goto": { "target": 6 } - }, - "span": 51 + } } }, { @@ -603,7 +191,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -620,15 +207,13 @@ } } }, - "span": 53, "user_ty": null } } ] } ] - }, - "span": 54 + } } ], "terminator": { @@ -641,7 +226,7 @@ { "Field": [ 1, - 26 + 0 ] } ] @@ -660,7 +245,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -677,7 +261,6 @@ } } }, - "span": 53, "user_ty": null } } @@ -686,8 +269,7 @@ "target": 3, "unwind": "Continue" } - }, - "span": 54 + } } }, { @@ -707,7 +289,7 @@ { "Field": [ 0, - 25 + 0 ] } ] @@ -715,8 +297,7 @@ } } ] - }, - "span": 54 + } } ], "terminator": { @@ -737,18 +318,15 @@ "func": { "Constant": { "const_": { - "id": 11, "kind": "ZeroSized" }, - "span": 55, "user_ty": null } }, "target": 4, "unwind": "Continue" } - }, - "span": 56 + } } }, { @@ -778,8 +356,7 @@ ] } ] - }, - "span": 57 + } } ], "terminator": { @@ -792,7 +369,7 @@ { "Field": [ 1, - 26 + 0 ] } ] @@ -819,8 +396,7 @@ "target": 5, "unwind": "Continue" } - }, - "span": 57 + } } }, { @@ -840,7 +416,7 @@ { "Field": [ 0, - 25 + 0 ] } ] @@ -848,63 +424,235 @@ } } ] - }, - "span": 57 + } } ], "terminator": { "kind": { - "Goto": { - "target": 6 + "Goto": { + "target": 6 + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "n", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + } + ] + }, + "name": "sum_to_n_rec" + } + }, + "symbol_name": "_ZN16recursion_simple12sum_to_n_rec17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 10, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ], + "destination": { + "local": 1, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Copy": { + "local": 1, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 55, + 2 + ] + ], + "otherwise": 3 + } } - }, - "span": 51 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 58 + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 27, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": null, + "unwind": "Continue" + } + } } } ], "locals": [ { - "mutability": "Mut", - "span": 59 - }, - { - "mutability": "Not", - "span": 60 - }, - { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 54 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 54 - }, - { - "mutability": "Mut", - "span": 57 + "mutability": "Mut" } ], - "span": 61, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "n", + "name": "ans", "source_info": { - "scope": 0, - "span": 60 + "scope": 1 }, "value": { "Place": { @@ -915,101 +663,273 @@ } ] }, - "id": 6, - "name": "sum_to_n_rec" + "name": "main" } }, - "symbol_name": "_ZN16recursion_simple12sum_to_n_rec17h" + "symbol_name": "_ZN16recursion_simple4main17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 0, + "local": 7, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] } - }, - "span": 46, - "user_ty": null + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] } - } + ] } ] - }, - "span": 46 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 7 + } } ], "terminator": { - "kind": "Return", - "span": 45 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 47 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 48 + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 49, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "main", "source_info": { - "scope": 0, - "span": 48 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1023,20 +943,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -1054,7 +971,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1062,8 +979,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -1084,18 +1000,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -1103,8 +1016,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -1125,18 +1037,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -1144,14 +1053,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -1160,42 +1067,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1204,13 +1075,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -1218,8 +1089,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -1233,73 +1103,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1307,8 +1156,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1318,7 +1166,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1330,12 +1178,145 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + }, + "name": "std::rt::lang_start::<()>::{closure#0}" + } + }, + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 }, "value": { "Place": { - "local": 2, + "local": 0, "projection": [] } } @@ -1343,25 +1324,25 @@ { "argument_index": 1, "composite": null, - "name": "self", + "name": "dummy", "source_info": { - "scope": 2, - "span": 30 + "scope": 2 }, "value": { - "Place": { - "local": 5, - "projection": [] + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } } ] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1375,55 +1356,65 @@ "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": ">::call_once" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1437,74 +1428,48 @@ "terminator": { "kind": { "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], + "args": [], "destination": { "local": 0, "projection": [] }, "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null + "Move": { + "local": 1, + "projection": [] } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1539,8 +1504,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1567,10 +1531,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1579,8 +1541,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1595,15 +1556,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1618,222 +1577,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1843,168 +1657,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -2046,54 +1741,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2509,39 +2156,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/ref-deref.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/ref-deref.smir.json.expected similarity index 77% rename from tests/integration/programs/ref-deref.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/ref-deref.smir.json.expected index 19f6d2ff..1df3dd5c 100644 --- a/tests/integration/programs/ref-deref.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/ref-deref.smir.json.expected @@ -92,52 +92,66 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 1, + "local": 7, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] } - }, - "span": 51, - "user_ty": null - } - } + } + ] + ] } ] - }, - "span": 51 + } }, { "kind": { "Assign": [ { - "local": 2, + "local": 6, "projection": [] }, { @@ -147,277 +161,65 @@ }, "Shared", { - "local": 1, + "local": 7, "projection": [] } ] } ] - }, - "span": 52 + } }, { "kind": { "Assign": [ { - "local": 3, + "local": 5, "projection": [] }, { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref" - ] - } - } + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] } ] - }, - "span": 53 + } } ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 42, - 1 - ] - ], - "otherwise": 2 - } - } - }, - "span": 50 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 54 - } - }, - { - "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 25, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null + "Move": { + "local": 5, + "projection": [] } - } - ], - "destination": { - "local": 4, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 10, - "kind": "ZeroSized" - }, - "span": 55, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 55 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 56 - }, - { - "mutability": "Not", - "span": 57 - }, - { - "mutability": "Not", - "span": 58 - }, - { - "mutability": "Not", - "span": 59 - }, - { - "mutability": "Mut", - "span": 55 - } - ], - "span": 60, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 1, - "span": 57 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 2, - "span": 58 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "c", - "source_info": { - "scope": 3, - "span": 59 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "id": 6, - "name": "main" - } - }, - "symbol_name": "_ZN9ref_deref4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + }, { "Move": { - "local": 1, + "local": 2, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -428,90 +230,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -521,136 +302,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 + "Place": { + "local": 3, + "projection": [] } - ], - "terminator": { - "kind": "Return", - "span": 45 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 }, { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, + "argument_index": 4, "composite": null, - "name": "self", + "name": "sigpipe", "source_info": { - "scope": 0, - "span": 48 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -664,20 +362,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -695,7 +390,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -703,8 +398,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -725,18 +419,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -744,8 +435,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -766,18 +456,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -785,14 +472,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -801,42 +486,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -845,13 +494,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -859,8 +508,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -874,73 +522,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -948,8 +575,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -959,7 +585,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -971,8 +597,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -980,29 +605,163 @@ "projection": [] } } + } + ] + }, + "name": "std::rt::lang_start::<()>::{closure#0}" + } + }, + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", "source_info": { - "scope": 2, - "span": 30 + "scope": 1 }, "value": { "Place": { - "local": 5, + "local": 0, "projection": [] } } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } } ] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1016,55 +775,65 @@ "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": ">::call_once" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1078,74 +847,48 @@ "terminator": { "kind": { "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], + "args": [], "destination": { "local": 0, "projection": [] }, "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null + "Move": { + "local": 1, + "projection": [] } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1180,8 +923,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1208,10 +950,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1220,8 +960,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1236,15 +975,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1259,41 +996,33 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 43 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1304,273 +1033,297 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, { "kind": { "Assign": [ { - "local": 8, + "local": 0, "projection": [] }, { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] + }, + "user_ty": null } - ] + } } ] - }, - "span": 2 - }, + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "<() as std::process::Termination>::report" + } + }, + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ + { + "statements": [ { "kind": { "Assign": [ { - "local": 6, + "local": 1, "projection": [] }, { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } } } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" + ] } }, - "span": 1 - } - }, - { - "statements": [ { "kind": { - "StorageDead": 6 - }, - "span": 5 + "Assign": [ + { + "local": 2, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 1, + "projection": [] + } + ] + } + ] + } }, { "kind": { "Assign": [ { - "local": 0, + "local": 3, "projection": [] }, { "Use": { "Copy": { - "local": 5, + "local": 2, "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } + "Deref" ] } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": { + "SwitchInt": { + "discr": { + "Copy": { + "local": 3, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 42, + 1 + ] + ], + "otherwise": 2 + } + } + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 }, { - "mutability": "Not", - "span": 10 + "statements": [], + "terminator": { + "kind": "Return" + } }, { - "mutability": "Not", - "span": 11 - }, + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 25, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null + } + } + ], + "destination": { + "local": 4, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": null, + "unwind": "Continue" + } + } + } + } + ], + "locals": [ { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Not" }, { - "mutability": "Not", - "span": 2 + "mutability": "Not" }, { - "mutability": "Not", - "span": 3 + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "main", + "name": "a", "source_info": { - "scope": 0, - "span": 9 + "scope": 1 }, "value": { "Place": { @@ -1580,12 +1333,11 @@ } }, { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "argc", + "name": "b", "source_info": { - "scope": 0, - "span": 10 + "scope": 2 }, "value": { "Place": { @@ -1594,58 +1346,26 @@ } } }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, { "argument_index": null, "composite": null, - "name": "v", + "name": "c", "source_info": { - "scope": 1, - "span": 6 + "scope": 3 }, "value": { "Place": { - "local": 0, + "local": 3, "projection": [] } } } ] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "main" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN9ref_deref4main17h" } ], "types": [ @@ -1682,54 +1402,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2116,39 +1788,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/shl_min.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/shl_min.smir.json.expected similarity index 84% rename from tests/integration/programs/shl_min.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/shl_min.smir.json.expected index 7690d038..a84f5fb1 100644 --- a/tests/integration/programs/shl_min.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/shl_min.smir.json.expected @@ -360,481 +360,393 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 2, + "local": 7, "projection": [] }, { - "Cast": [ - "IntToInt", + "Aggregate": [ { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } - }, - "span": 51, - "user_ty": null - } + ] + ] }, - 25 + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] ] } ] - }, - "span": 52 + } }, { "kind": { "Assign": [ { - "local": 3, + "local": 6, "projection": [] }, { - "BinaryOp": [ - "Lt", + "Ref": [ { - "Move": { - "local": 2, - "projection": [] - } + "kind": "ReErased" }, + "Shared", { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 8, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 52, - "user_ty": null - } + "local": 7, + "projection": [] } ] } ] - }, - "span": 52 - } - ], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 3, - "projection": [] - } - }, - "expected": true, - "msg": { - "Overflow": [ - "Shl", - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 50, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null - } - } - ] - }, - "target": 1, - "unwind": "Continue" } }, - "span": 52 - } - }, - { - "statements": [ { "kind": { "Assign": [ { - "local": 1, + "local": 5, "projection": [] }, { - "BinaryOp": [ - "Shl", + "Cast": [ { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 50, - "user_ty": null - } + "PointerCoercion": "Unsize" }, { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null + "Copy": { + "local": 6, + "projection": [] } - } + }, + 0 ] } ] - }, - "span": 52 + } } ], "terminator": { "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 1, - "projection": [] + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } } + ], + "destination": { + "local": 0, + "projection": [] }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 3 - } + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" } - }, - "span": 53 + } } }, { "statements": [ { "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 55, - "user_ty": null - } - }, - 25 - ] - } - ] - }, - "span": 56 + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 7 + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "main", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } + } + } + ] + }, + "name": "std::rt::lang_start::<()>" + } + }, + "symbol_name": "_ZN3std2rt10lang_start17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 4, "projection": [] }, { - "BinaryOp": [ - "Lt", - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 16, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 56, - "user_ty": null - } + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] } - ] + } } ] - }, - "span": 56 + } } ], "terminator": { "kind": { - "Assert": { - "cond": { - "Move": { - "local": 7, - "projection": [] + "Call": { + "args": [ + { + "Move": { + "local": 4, + "projection": [] + } } + ], + "destination": { + "local": 3, + "projection": [] }, - "expected": true, - "msg": { - "Overflow": [ - "Shl", - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 2, - "bytes": [ - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 54, - "user_ty": null - } + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 55, - "user_ty": null - } - } - ] + "user_ty": null + } }, - "target": 4, + "target": 1, "unwind": "Continue" } - }, - "span": 56 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 4 + } + } + ], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 35, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] } } ], "destination": { - "local": 4, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 57, "user_ty": null } }, - "target": null, + "target": 2, "unwind": "Continue" } - }, - "span": 57 + } } }, { "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, { "kind": { "Assign": [ @@ -843,244 +755,289 @@ "projection": [] }, { - "BinaryOp": [ - "Shl", - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 2, - "bytes": [ - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 54, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } + "Use": { + "Copy": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 0 + ] }, - "span": 55, - "user_ty": null - } - } - ] - } - ] - }, - "span": 56 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 6 - } + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] } }, - "span": 58 - } - }, - { - "statements": [ { "kind": { "Assign": [ { - "local": 10, + "local": 0, "projection": [] }, { "Cast": [ "IntToInt", { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 60, - "user_ty": null + "Move": { + "local": 5, + "projection": [] } }, - 25 + 0 ] } ] - }, - "span": 61 + } }, { "kind": { - "Assign": [ + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 2 + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": null, + "composite": null, + "name": "main", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + }, + "name": "std::rt::lang_start::<()>::{closure#0}" + } + }, + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 11, - "projection": [] + "Move": { + "local": 1, + "projection": [] + } }, { - "BinaryOp": [ - "Lt", - { - "Move": { - "local": 10, - "projection": [] - } + "Constant": { + "const_": { + "kind": "ZeroSized" }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 32, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 61, - "user_ty": null - } - } - ] + "user_ty": null + } } - ] - }, - "span": 61 + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } } - ], + } + }, + { + "statements": [], "terminator": { "kind": { - "Assert": { - "cond": { - "Move": { - "local": 11, - "projection": [] + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } } + ], + "destination": { + "local": 2, + "projection": [] }, - "expected": true, - "msg": { - "Overflow": [ - "Shl", - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 59, - "user_ty": null - } + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 60, - "user_ty": null - } - } - ] + "user_ty": null + } }, - "target": 7, - "unwind": "Continue" + "target": 2, + "unwind": "Unreachable" } - }, - "span": 61 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } } }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] + }, + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + } + }, + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ { "statements": [], "terminator": { @@ -1088,492 +1045,363 @@ "Call": { "args": [ { - "Constant": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 38, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } + }, + { + "Move": { + "local": 2, + "projection": [] } } ], "destination": { - "local": 8, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 62, "user_ty": null } }, - "target": null, + "target": 1, "unwind": "Continue" } - }, - "span": 62 + } } }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "BinaryOp": [ - "Shl", - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 59, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 60, - "user_ty": null - } - } - ] - } - ] - }, - "span": 61 - } - ], + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], "terminator": { "kind": { - "SwitchInt": { - "discr": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { "Move": { - "local": 9, + "local": 1, "projection": [] } }, - "targets": { - "branches": [ - [ - 0, - 8 - ] - ], - "otherwise": 9 - } + "target": 1, + "unwind": "Continue" } - }, - "span": 63 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ { "statements": [ { "kind": { "Assign": [ { - "local": 14, + "local": 3, "projection": [] }, { - "Cast": [ - "IntToInt", + "Ref": [ { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 65, - "user_ty": null - } + "kind": "ReErased" }, - 25 - ] - } - ] - }, - "span": 66 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "BinaryOp": [ - "Lt", { - "Move": { - "local": 14, - "projection": [] + "Mut": { + "kind": "Default" } }, { - "Constant": { - "const_": { - "id": 20, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 64, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 66, - "user_ty": null - } + "local": 1, + "projection": [] } ] } ] - }, - "span": 66 + } } ], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 15, - "projection": [] - } - }, - "expected": true, - "msg": { - "Overflow": [ - "Shl", - { - "Constant": { - "const_": { - "id": 19, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 64, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 65, - "user_ty": null - } - } - ] - }, - "target": 10, - "unwind": "Continue" - } - }, - "span": 66 - } - }, - { - "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 21, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 43, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] } } ], "destination": { - "local": 12, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 67, "user_ty": null } }, - "target": null, + "target": 1, + "unwind": { + "Cleanup": 3 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 2, "unwind": "Continue" } - }, - "span": 67 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ { "kind": { "Assign": [ { - "local": 13, + "local": 0, "projection": [] }, { - "BinaryOp": [ - "Shl", - { - "Constant": { - "const_": { - "id": 19, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 64, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] } } - }, - "span": 65, - "user_ty": null - } + } + }, + "user_ty": null } - ] + } } ] - }, - "span": 66 + } } ], "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 13, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 11 - ] - ], - "otherwise": 12 - } - } - }, - "span": 68 + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "<() as std::process::Termination>::report" + } + }, + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ { "statements": [ { "kind": { "Assign": [ { - "local": 18, + "local": 2, "projection": [] }, { @@ -1582,7 +1410,6 @@ { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -1599,22 +1426,20 @@ } } }, - "span": 70, "user_ty": null } }, - 25 + 0 ] } ] - }, - "span": 71 + } }, { "kind": { "Assign": [ { - "local": 19, + "local": 3, "projection": [] }, { @@ -1622,19 +1447,18 @@ "Lt", { "Move": { - "local": 18, + "local": 2, "projection": [] } }, { "Constant": { "const_": { - "id": 23, "kind": { "Allocated": { "align": 4, "bytes": [ - 128, + 8, 0, 0, 0 @@ -1646,15 +1470,13 @@ } } }, - "span": 71, "user_ty": null } } ] } ] - }, - "span": 71 + } } ], "terminator": { @@ -1662,7 +1484,7 @@ "Assert": { "cond": { "Move": { - "local": 19, + "local": 3, "projection": [] } }, @@ -1673,26 +1495,10 @@ { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { - "align": 16, + "align": 1, "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, 128 ], "mutability": "Mut", @@ -1702,14 +1508,12 @@ } } }, - "span": 69, "user_ty": null } }, { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -1726,86 +1530,15 @@ } } }, - "span": 70, "user_ty": null } } ] }, - "target": 13, - "unwind": "Continue" - } - }, - "span": 71 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 24, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 52, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 16, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized" - }, - "span": 72, - "user_ty": null - } - }, - "target": null, + "target": 1, "unwind": "Continue" } - }, - "span": 72 + } } }, { @@ -1814,7 +1547,7 @@ "kind": { "Assign": [ { - "local": 17, + "local": 1, "projection": [] }, { @@ -1823,26 +1556,10 @@ { "Constant": { "const_": { - "id": 22, "kind": { "Allocated": { - "align": 16, + "align": 1, "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, 128 ], "mutability": "Mut", @@ -1852,14 +1569,12 @@ } } }, - "span": 69, "user_ty": null } }, { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -1876,15 +1591,13 @@ } } }, - "span": 70, "user_ty": null } } ] } ] - }, - "span": 71 + } } ], "terminator": { @@ -1892,7 +1605,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 17, + "local": 1, "projection": [] } }, @@ -1900,273 +1613,160 @@ "branches": [ [ 0, - 14 + 2 ] ], - "otherwise": 15 + "otherwise": 3 } } - }, - "span": 73 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 74 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + "statements": [ + { + "kind": { + "Assign": [ { - "Constant": { - "const_": { - "id": 25, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 73, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ + "local": 6, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, 0, - 4 - ] - ] + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - } + }, + "user_ty": null } }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 20, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized" - }, - "span": 75, - "user_ty": null + 0 + ] } - }, - "target": null, - "unwind": "Continue" + ] } }, - "span": 75 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 76 - }, - { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Mut", - "span": 52 - }, - { - "mutability": "Mut", - "span": 57 - }, - { - "mutability": "Mut", - "span": 56 - }, - { - "mutability": "Mut", - "span": 56 - }, - { - "mutability": "Mut", - "span": 56 - }, - { - "mutability": "Mut", - "span": 62 - }, - { - "mutability": "Mut", - "span": 61 - }, - { - "mutability": "Mut", - "span": 61 - }, - { - "mutability": "Mut", - "span": 61 - }, - { - "mutability": "Mut", - "span": 67 - }, - { - "mutability": "Mut", - "span": 66 - }, - { - "mutability": "Mut", - "span": 66 - }, - { - "mutability": "Mut", - "span": 66 - }, - { - "mutability": "Mut", - "span": 72 - }, - { - "mutability": "Mut", - "span": 71 - }, - { - "mutability": "Mut", - "span": 71 - }, - { - "mutability": "Mut", - "span": 71 - }, - { - "mutability": "Mut", - "span": 75 - } - ], - "span": 77, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 6, - "name": "main" - } - }, - "symbol_name": "_ZN7shl_min4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + { + "kind": { + "Assign": [ { - "Move": { - "local": 1, - "projection": [] - } + "local": 7, + "projection": [] }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" + "BinaryOp": [ + "Lt", + { + "Move": { + "local": 6, + "projection": [] + } }, - "span": 32, - "user_ty": null - } + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 16, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { + "local": 7, + "projection": [] } - ], - "destination": { - "local": 0, - "projection": [] }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" + "expected": true, + "msg": { + "Overflow": [ + "Shl", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 2, + "bytes": [ + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } }, - "span": 31, - "user_ty": null - } + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] }, - "target": 1, + "target": 4, "unwind": "Continue" } - }, - "span": 33 + } } }, { @@ -2178,1201 +1778,1209 @@ { "Constant": { "const_": { - "id": 4, - "kind": "ZeroSized" + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 35, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } }, - "span": 32, "user_ty": null } } ], "destination": { - "local": 2, + "local": 4, "projection": [] }, "func": { "Constant": { "const_": { - "id": 5, "kind": "ZeroSized" }, - "span": 34, "user_ty": null } }, - "target": 2, - "unwind": "Unreachable" + "target": null, + "unwind": "Continue" } - }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 37 - }, - { - "mutability": "Not", - "span": 38 - }, - { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] } } }, { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "BinaryOp": [ + "Shl", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 2, + "bytes": [ + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + } + ] + } } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 5, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 5 + ] + ], + "otherwise": 6 + } + } + } + } + }, { "statements": [ { "kind": { "Assign": [ { - "local": 0, + "local": 10, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] + "Cast": [ + "IntToInt", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } } } - } - }, - "span": 46, - "user_ty": null - } - } + }, + "user_ty": null + } + }, + 0 + ] } ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 15 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 11, "projection": [] }, { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] + "BinaryOp": [ + "Lt", + { + "Move": { + "local": 10, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 32, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } } - } + ] } ] - }, - "span": 17 + } } ], "terminator": { "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 4, - "projection": [] - } + "Assert": { + "cond": { + "Move": { + "local": 11, + "projection": [] } - ], - "destination": { - "local": 3, - "projection": [] }, - "func": { - "Constant": { - "const_": { - "id": 1, - "kind": "ZeroSized" + "expected": true, + "msg": { + "Overflow": [ + "Shl", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 0, + 0, + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } }, - "span": 14, - "user_ty": null - } + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] }, - "target": 1, + "target": 7, "unwind": "Continue" } - }, - "span": 15 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 19 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 3, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 38, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 1 + ] + ] + } + } + } + }, + "user_ty": null } } ], "destination": { - "local": 2, + "local": 8, "projection": [] }, "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, - "target": 2, + "target": null, "unwind": "Continue" } - }, - "span": 16 + } } }, { "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 21 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 22 - }, { "kind": { "Assign": [ { - "local": 5, + "local": 9, "projection": [] }, { - "Ref": [ + "BinaryOp": [ + "Shl", { - "kind": "ReErased" + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 0, + 0, + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } }, - "Shared", { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } } ] } ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 9, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 8 + ] + ], + "otherwise": 9 + } + } + } + } + }, + { + "statements": [ { "kind": { "Assign": [ { - "local": 6, + "local": 14, "projection": [] }, { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] + "Cast": [ + "IntToInt", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } + "user_ty": null + } + }, + 0 + ] } ] - }, - "span": 23 + } }, { "kind": { "Assign": [ { - "local": 0, + "local": 15, "projection": [] }, { - "Cast": [ - "IntToInt", + "BinaryOp": [ + "Lt", { "Move": { - "local": 6, + "local": 14, "projection": [] } }, - 16 - ] - } - ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 27 - } - ], - "terminator": { - "kind": "Return", - "span": 20 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 - }, - { - "mutability": "Mut", - "span": 16 - }, - { - "mutability": "Mut", - "span": 15 - }, - { - "mutability": "Mut", - "span": 17 - }, - { - "mutability": "Mut", - "span": 22 - }, - { - "mutability": "Mut", - "span": 23 - } - ], - "span": 3, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 64, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + } + ] + } } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] + ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { + "local": 15, + "projection": [] + } + }, + "expected": true, + "msg": { + "Overflow": [ + "Shl", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + }, + "target": 10, + "unwind": "Continue" + } } } }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] - }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" - } - }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 43, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 2 + ] + ] + } + } + } + }, + "user_ty": null + } + } + ], "destination": { - "local": 0, + "local": 12, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 }, { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [], + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 13, + "projection": [] + }, + { + "BinaryOp": [ + "Shl", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + } + ] + } + } + ], "terminator": { "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null + "SwitchInt": { + "discr": { + "Move": { + "local": 13, + "projection": [] } }, - "target": 1, - "unwind": "Continue" + "targets": { + "branches": [ + [ + 0, + 11 + ] + ], + "otherwise": 12 + } } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ { "statements": [ { "kind": { "Assign": [ { - "local": 3, + "local": 18, "projection": [] }, { - "Ref": [ + "Cast": [ + "IntToInt", { - "kind": "ReErased" + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } }, + 0 + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 19, + "projection": [] + }, + { + "BinaryOp": [ + "Lt", { - "Mut": { - "kind": "Default" + "Move": { + "local": 18, + "projection": [] } }, { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 128, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } } ] } ] - }, - "span": 43 + } } ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { + "local": 19, + "projection": [] + } + }, + "expected": true, + "msg": { + "Overflow": [ + "Shl", + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 16, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + }, + "target": 13, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 52, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 3 + ] + ] + } + } + } + }, + "user_ty": null } } ], "destination": { - "local": 0, + "local": 16, "projection": [] }, "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, + "target": null, "unwind": "Continue" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, { "kind": { "Assign": [ { - "local": 8, + "local": 17, "projection": [] }, { - "Aggregate": [ + "BinaryOp": [ + "Shl", { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 16, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } + }, + "user_ty": null } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" }, - "Shared", { - "local": 8, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } } ] } ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 17, "projection": [] - }, + } + }, + "targets": { + "branches": [ + [ + 0, + 14 + ] + ], + "otherwise": 15 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 73, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 4 + ] + ] + } + } } }, - 5 - ] - } - ] - }, - "span": 2 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] + "user_ty": null } } ], "destination": { - "local": 5, + "local": 20, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 1 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 } - ], - "terminator": { - "kind": "Return", - "span": 4 } } ], "locals": [ { - "mutability": "Mut", - "span": 8 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 9 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 10 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 11 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 - } - ], - "span": 13, - "spread_arg": null, - "var_debug_info": [ + "mutability": "Mut" + }, { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } + "mutability": "Mut" }, { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } + "mutability": "Mut" }, { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } + "mutability": "Mut" }, { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } + "mutability": "Mut" }, { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" } - ] + ], + "spread_arg": null, + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "main" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN7shl_min4main17h" } ], "types": [ @@ -3442,54 +3050,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -3843,39 +3403,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/slice.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/slice.smir.json.expected similarity index 83% rename from tests/integration/programs/slice.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/slice.smir.json.expected index ee6c4084..3f7098db 100644 --- a/tests/integration/programs/slice.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/slice.smir.json.expected @@ -162,363 +162,348 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 2, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, { "kind": { "Assign": [ { - "local": 1, + "local": 6, "projection": [] }, { - "Aggregate": [ - { - "Array": 27 - }, - [ - { - "Constant": { - "const_": { - "id": 22, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 163, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 23, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 2, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 164, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 24, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 3, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 165, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 25, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 4, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 166, - "user_ty": null + "Use": { + "Copy": { + "local": 1, + "projection": [ + { + "Field": [ + 1, + 0 + ] } - } - ] - ] + ] + } + } } ] - }, - "span": 167 + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 7, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { + "Use": { + "Copy": { "local": 1, - "projection": [] + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] } - ] + } } ] - }, - "span": 168 + } + }, + { + "kind": { + "StorageLive": 13 + } }, { "kind": { "Assign": [ { - "local": 5, + "local": 13, "projection": [] }, { - "Aggregate": [ + "BinaryOp": [ + "Lt", { - "Adt": [ - 15, - 0, - [ - { - "Type": 0 - } - ], - null, - null - ] + "Copy": { + "local": 6, + "projection": [] + } }, - [ - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 169, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 3, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 170, - "user_ty": null - } + { + "Copy": { + "local": 7, + "projection": [] } - ] + } ] } ] - }, - "span": 171 + } } ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 13, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 4 + ] + ], + "otherwise": 3 + } + } + } + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 4, + "local": 6, "projection": [] } }, { "Move": { - "local": 5, + "local": 9, "projection": [] } } ], "destination": { - "local": 3, + "local": 10, "projection": [] }, "func": { "Constant": { "const_": { - "id": 21, "kind": "ZeroSized" }, - "span": 162, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 162 + } } }, { "statements": [ + { + "kind": { + "StorageDead": 8 + } + }, + { + "kind": { + "StorageLive": 11 + } + }, + { + "kind": { + "StorageLive": 12 + } + }, { "kind": { "Assign": [ { - "local": 2, + "local": 12, "projection": [] }, { - "Use": { - "Copy": { - "local": 3, - "projection": [] + "AddressOf": [ + "Const", + { + "local": 2, + "projection": [ + "Deref" + ] } - } + ] } ] - }, - "span": 173 + } + }, + { + "kind": { + "StorageLive": 15 + } + }, + { + "kind": { + "StorageLive": 16 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 16, "projection": [] }, { - "Ref": [ + "Cast": [ + "PtrToPtr", { - "kind": "ReErased" + "Copy": { + "local": 12, + "projection": [] + } }, - "Shared", + 0 + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 15, + "projection": [] + }, + { + "BinaryOp": [ + "Offset", { - "local": 2, - "projection": [] + "Copy": { + "local": 16, + "projection": [] + } + }, + { + "Copy": { + "local": 7, + "projection": [] + } } ] } ] - }, - "span": 174 + } + }, + { + "kind": { + "StorageDead": 16 + } }, { "kind": { "Assign": [ { - "local": 8, + "local": 11, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 29, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } + "Aggregate": [ + { + "RawPtr": [ + 3, + "Not" + ] + }, + [ + { + "Copy": { + "local": 15, + "projection": [] } }, - "span": 175, - "user_ty": null + { + "Copy": { + "local": 4, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 15 + } + }, + { + "kind": { + "StorageDead": 12 + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 11, + "projection": [ + "Deref" + ] } - } + ] } ] - }, - "span": 175 + } + }, + { + "kind": { + "StorageDead": 11 + } + } + ], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 13 + } + }, + { + "kind": { + "StorageDead": 5 + } } ], "terminator": { @@ -533,186 +518,279 @@ }, { "Move": { - "local": 8, + "local": 6, "projection": [] } } ], "destination": { - "local": 6, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 28, "kind": "ZeroSized" }, - "span": 172, "user_ty": null } }, - "target": 2, + "target": null, "unwind": "Continue" } - }, - "span": 172 + } } }, { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 6, + "statements": [ + { + "kind": { + "StorageLive": 14 + } + }, + { + "kind": { + "Assign": [ + { + "local": 14, "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 + }, + { + "BinaryOp": [ + "SubUnchecked", + { + "Copy": { + "local": 6, + "projection": [] + } + }, + { + "Copy": { + "local": 7, + "projection": [] + } + } ] - ], - "otherwise": 3 - } + } + ] } }, - "span": 172 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 176 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + { + "kind": { + "Assign": [ { - "Constant": { - "const_": { - "id": 31, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 29, - 0, - 0, - 0, - 0, - 0, + "local": 5, + "projection": [] + }, + { + "Aggregate": [ + { + "Adt": [ + 0, + 1, + [ + { + "Type": 0 + } + ], + null, + null + ] + }, + [ + { + "Move": { + "local": 14, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 14 + } + }, + { + "kind": { + "StorageDead": 13 + } + }, + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 5, + "projection": [ + { + "Downcast": 1 + }, + { + "Field": [ 0, 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } + ] } + ] + } + } + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageLive": 8 + } + }, + { + "kind": { + "Assign": [ + { + "local": 9, + "projection": [] + }, + { + "UnaryOp": [ + "PtrMetadata", + { + "Copy": { + "local": 2, + "projection": [] + } + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 8, + "projection": [] + }, + { + "BinaryOp": [ + "Gt", + { + "Copy": { + "local": 6, + "projection": [] } }, - "span": 74, - "user_ty": null - } + { + "Copy": { + "local": 9, + "projection": [] + } + } + ] } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 30, - "kind": "ZeroSized" - }, - "span": 177, - "user_ty": null + ] + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 8, + "projection": [] } }, - "target": null, - "unwind": "Continue" + "targets": { + "branches": [ + [ + 0, + 2 + ] + ], + "otherwise": 1 + } } - }, - "span": 177 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 178 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 179 + "mutability": "Not" }, { - "mutability": "Not", - "span": 180 + "mutability": "Not" }, { - "mutability": "Not", - "span": 162 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 168 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 171 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 172 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 174 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 175 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 177 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 181, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "a", + "name": "self", "source_info": { - "scope": 1, - "span": 179 + "scope": 0 }, "value": { "Place": { @@ -722,12 +800,11 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "b", + "name": "slice", "source_info": { - "scope": 2, - "span": 180 + "scope": 0 }, "value": { "Place": { @@ -735,458 +812,177 @@ "projection": [] } } - } - ] - }, - "id": 14, - "name": "main" - } - }, - "symbol_name": "_ZN5slice4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ + }, { - "statements": [], - "terminator": { - "kind": "Return", - "span": 86 + "argument_index": null, + "composite": null, + "name": "new_len", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 86 }, { - "mutability": "Not", - "span": 86 - } - ], - "span": 86, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 6, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 74, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 73, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 75 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 74, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 7, - "kind": "ZeroSized" - }, - "span": 76, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 77 + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 2 + }, + "value": { + "Place": { + "local": 6, + "projection": [] + } } }, { - "statements": [], - "terminator": { - "kind": "Return", - "span": 78 + "argument_index": 2, + "composite": null, + "name": "rhs", + "source_info": { + "scope": 2 + }, + "value": { + "Place": { + "local": 7, + "projection": [] + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 79 - }, - { - "mutability": "Not", - "span": 80 }, - { - "mutability": "Not", - "span": 81 - } - ], - "span": 84, - "spread_arg": null, - "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "ptr", "source_info": { - "scope": 0, - "span": 80 + "scope": 3 }, "value": { "Place": { - "local": 1, + "local": 2, "projection": [] } } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "offset", "source_info": { - "scope": 1, - "span": 82 + "scope": 3 }, "value": { "Place": { - "local": 0, + "local": 7, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "len", "source_info": { - "scope": 2, - "span": 83 + "scope": 3 }, "value": { - "Const": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 74, - "user_ty": null - } - } - } - ] - }, - "id": 4, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 19, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 149, - "user_ty": null - } - } - } - ] - }, - "span": 149 + "Place": { + "local": 4, + "projection": [] } - ], - "terminator": { - "kind": "Return", - "span": 148 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 150 }, - { - "mutability": "Not", - "span": 151 - } - ], - "span": 152, - "spread_arg": null, - "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "ptr", "source_info": { - "scope": 0, - "span": 151 + "scope": 5 }, "value": { - "Const": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 74, - "user_ty": null + "Place": { + "local": 2, + "projection": [] } } } ] }, - "id": 12, - "name": "<() as std::process::Termination>::report" + "name": " as std::slice::SliceIndex<[i32]>>::index" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 2 - }, - "span": 58 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 57 + "StorageLive": 5 + } }, { "kind": { - "StorageLive": 4 - }, - "span": 59 + "StorageLive": 7 + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 7, "projection": [] }, { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 18 - ] - } + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] ] - } - } - } - ] - }, - "span": 59 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" - }, - "span": 56, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 57 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 61 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 60, - "user_ty": null + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] } - }, - "target": 2, - "unwind": "Continue" + ] } }, - "span": 58 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 63 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 64 - }, { "kind": { "Assign": [ { - "local": 5, + "local": 6, "projection": [] }, { @@ -1196,171 +992,152 @@ }, "Shared", { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 26 - ] - } - ] + "local": 7, + "projection": [] } ] } ] - }, - "span": 64 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 65 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 26 - ] - }, - { - "Field": [ - 0, - 20 - ] - } - ] - } - } - } - ] - }, - "span": 65 + } }, { "kind": { "Assign": [ { - "local": 0, + "local": 5, "projection": [] }, { "Cast": [ - "IntToInt", { - "Move": { + "PointerCoercion": "Unsize" + }, + { + "Copy": { "local": 6, "projection": [] } }, - 27 + 0 ] } ] - }, - "span": 66 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 67 - }, + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ { "kind": { "StorageDead": 5 - }, - "span": 68 + } }, { "kind": { - "StorageDead": 2 - }, - "span": 69 + "StorageDead": 7 + } } ], "terminator": { - "kind": "Return", - "span": 62 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 70 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 45 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 58 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 57 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 59 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 64 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 65 + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 45, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 51 + "scope": 0 }, "value": { "Place": { "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 18 - ] - } - ] + "projection": [] } } }, { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "self", + "name": "argc", "source_info": { - "scope": 1, - "span": 71 + "scope": 0 }, "value": { "Place": { @@ -1370,265 +1147,288 @@ } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "self", + "name": "argv", "source_info": { - "scope": 2, - "span": 72 + "scope": 0 }, "value": { "Place": { - "local": 5, + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, "projection": [] } } } ] }, - "id": 3, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, + "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, + { + "kind": { + "Assign": [ + { + "local": 4, "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } } - }, - "target": 1, - "unwind": "Continue" + ] } - }, - "span": 85 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 85 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 85 - }, - { - "mutability": "Not", - "span": 85 - }, - { - "mutability": "Not", - "span": 85 - } - ], - "span": 85, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 5, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [], + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, + "local": 4, "projection": [] } } ], "destination": { - "local": 0, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 8, "kind": "ZeroSized" }, - "span": 85, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 85 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 85 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 85 - }, - { - "mutability": "Not", - "span": 85 }, { - "mutability": "Not", - "span": 85 - } - ], - "span": 85, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 5, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 4 + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 1, + "local": 3, "projection": [] } } ], "destination": { - "local": 0, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 18, "kind": "ZeroSized" }, - "span": 141, "user_ty": null } }, - "target": 1, + "target": 2, "unwind": "Continue" } - }, - "span": 142 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 0 + ] + }, + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + 0 + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 2 + } + } + ], "terminator": { - "kind": "Return", - "span": 143 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 144 + "mutability": "Mut" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 145 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 146 + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" } ], - "span": 147, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "self", + "name": "main", "source_info": { - "scope": 0, - "span": 145 + "scope": 0 }, "value": { "Place": { "local": 1, - "projection": [] + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] } } }, { - "argument_index": 2, + "argument_index": 1, "composite": null, - "name": "index", + "name": "self", "source_info": { - "scope": 0, - "span": 146 + "scope": 1 }, "value": { "Place": { @@ -1639,61 +1439,36 @@ } ] }, - "id": 11, - "name": "core::slice::index::> for [i32]>::index" + "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 89 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 3, + "local": 1, "projection": [] } }, { - "Move": { - "local": 2, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } ], @@ -1704,56 +1479,76 @@ "func": { "Constant": { "const_": { - "id": 10, "kind": "ZeroSized" }, - "span": 87, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 88 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 90 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 91 - }, - { - "mutability": "Not", - "span": 92 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 93 + "mutability": "Not" }, { - "mutability": "Not", - "span": 89 + "mutability": "Not" } ], - "span": 94, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "f", "source_info": { - "scope": 0, - "span": 92 + "scope": 0 }, "value": { "Place": { @@ -1763,27 +1558,41 @@ } }, { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "index", + "name": "result", "source_info": { - "scope": 0, - "span": 93 + "scope": 1 }, "value": { "Place": { - "local": 2, + "local": 0, "projection": [] } } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } } ] }, - "id": 7, - "name": "std::array::> for [i32; 4]>::index" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1793,43 +1602,17 @@ "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 85 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 3, - "projection": [] + "local": 1, + "projection": [ + "Deref" + ] } }, { @@ -1846,93 +1629,94 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 85, "user_ty": null } }, "target": 1, - "unwind": { - "Cleanup": 3 - } + "unwind": "Continue" } - }, - "span": 85 + } } }, { "statements": [], "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 85 + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, { - "statements": [], - "terminator": { - "kind": "Return", - "span": 85 - } + "mutability": "Not" }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ { "statements": [], "terminator": { "kind": { - "Drop": { - "place": { - "local": 1, + "Call": { + "args": [], + "destination": { + "local": 0, "projection": [] }, - "target": 4, - "unwind": "Terminate" + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" } - }, - "span": 85 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 85 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 85 - }, - { - "mutability": "Not", - "span": 85 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 85 + "mutability": "Not" }, { - "mutability": "Not", - "span": 85 + "mutability": "Not" } ], - "span": 85, "spread_arg": 2, "var_debug_info": [] }, - "id": 5, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": ">::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" @@ -1954,18 +1738,23 @@ "projection": [] }, { - "Use": { - "Copy": { + "Ref": [ + { + "kind": "ReErased" + }, + { + "Mut": { + "kind": "Default" + } + }, + { "local": 1, - "projection": [ - "Deref" - ] + "projection": [] } - } + ] } ] - }, - "span": 135 + } } ], "terminator": { @@ -1992,56 +1781,212 @@ "func": { "Constant": { "const_": { - "id": 17, "kind": "ZeroSized" }, - "span": 134, "user_ty": null } }, "target": 1, + "unwind": { + "Cleanup": 3 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 2, "unwind": "Continue" } - }, - "span": 134 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 136 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 137 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 138 + "mutability": "Not" }, { - "mutability": "Not", - "span": 139 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 138 + "mutability": "Not" } ], - "span": 140, - "spread_arg": null, - "var_debug_info": [ - { + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 1, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { "argument_index": 1, "composite": null, "name": "self", "source_info": { - "scope": 0, - "span": 138 + "scope": 0 }, "value": { "Place": { @@ -2053,10 +1998,9 @@ { "argument_index": 2, "composite": null, - "name": "other", + "name": "index", "source_info": { - "scope": 0, - "span": 139 + "scope": 0 }, "value": { "Place": { @@ -2067,11 +2011,10 @@ } ] }, - "id": 10, - "name": "std::array::equality:: for &[i32]>::eq" + "name": "std::array::> for [i32; 4]>::index" } }, - "symbol_name": "_ZN4core5array8equality96_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$RF$$u5b$T$u5d$$GT$2eq17h" + "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" }, { "details": null, @@ -2085,38 +2028,32 @@ { "kind": { "StorageLive": 3 - }, - "span": 96 + } }, { "kind": { "StorageLive": 5 - }, - "span": 97 + } }, { "kind": { "StorageLive": 9 - }, - "span": 98 + } }, { "kind": { "StorageLive": 10 - }, - "span": 98 + } }, { "kind": { "StorageLive": 6 - }, - "span": 95 + } }, { "kind": { "StorageLive": 7 - }, - "span": 99 + } }, { "kind": { @@ -2137,8 +2074,7 @@ ] } ] - }, - "span": 99 + } }, { "kind": { @@ -2159,7 +2095,6 @@ { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 8, @@ -2180,15 +2115,13 @@ } } }, - "span": 100, "user_ty": null } } ] } ] - }, - "span": 95 + } } ], "terminator": { @@ -2210,8 +2143,7 @@ "otherwise": 2 } } - }, - "span": 95 + } } }, { @@ -2219,13 +2151,11 @@ { "kind": { "StorageDead": 3 - }, - "span": 102 + } } ], "terminator": { - "kind": "Return", - "span": 101 + "kind": "Return" } }, { @@ -2233,14 +2163,12 @@ { "kind": { "StorageDead": 7 - }, - "span": 100 + } }, { "kind": { "StorageLive": 8 - }, - "span": 105 + } }, { "kind": { @@ -2251,7 +2179,7 @@ }, { "AddressOf": [ - "Not", + "Const", { "local": 1, "projection": [ @@ -2261,8 +2189,7 @@ ] } ] - }, - "span": 106 + } }, { "kind": { @@ -2280,12 +2207,11 @@ "projection": [] } }, - 39 + 0 ] } ] - }, - "span": 107 + } }, { "kind": { @@ -2309,8 +2235,7 @@ ] } ] - }, - "span": 108 + } }, { "kind": { @@ -2323,11 +2248,11 @@ "Aggregate": [ { "Adt": [ - 1, + 0, 1, [ { - "Type": 40 + "Type": 0 } ], null, @@ -2345,38 +2270,32 @@ ] } ] - }, - "span": 109 + } }, { "kind": { "StorageDead": 8 - }, - "span": 110 + } }, { "kind": { "StorageDead": 6 - }, - "span": 111 + } }, { "kind": { "StorageDead": 10 - }, - "span": 98 + } }, { "kind": { "StorageDead": 9 - }, - "span": 98 + } }, { "kind": { "StorageLive": 11 - }, - "span": 112 + } }, { "kind": { @@ -2396,7 +2315,7 @@ { "Field": [ 0, - 40 + 0 ] } ] @@ -2404,8 +2323,7 @@ } } ] - }, - "span": 113 + } }, { "kind": { @@ -2418,14 +2336,14 @@ "Aggregate": [ { "Adt": [ - 9, + 0, 0, [ { - "Type": 40 + "Type": 0 }, { - "Type": 41 + "Type": 0 } ], null, @@ -2443,20 +2361,17 @@ ] } ] - }, - "span": 114 + } }, { "kind": { "StorageDead": 11 - }, - "span": 112 + } }, { "kind": { "StorageDead": 5 - }, - "span": 115 + } }, { "kind": { @@ -2476,7 +2391,7 @@ { "Field": [ 0, - 40 + 0 ] } ] @@ -2484,8 +2399,7 @@ } } ] - }, - "span": 116 + } } ], "terminator": { @@ -2512,18 +2426,15 @@ "func": { "Constant": { "const_": { - "id": 12, "kind": "ZeroSized" }, - "span": 103, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 104 + } } }, { @@ -2531,8 +2442,7 @@ { "kind": { "StorageDead": 7 - }, - "span": 100 + } }, { "kind": { @@ -2545,7 +2455,6 @@ "Use": { "Constant": { "const_": { - "id": 13, "kind": { "Allocated": { "align": 8, @@ -2566,38 +2475,32 @@ } } }, - "span": 74, "user_ty": null } } } ] - }, - "span": 118 + } }, { "kind": { "StorageDead": 6 - }, - "span": 111 + } }, { "kind": { "StorageDead": 10 - }, - "span": 98 + } }, { "kind": { "StorageDead": 9 - }, - "span": 98 + } }, { "kind": { "StorageLive": 11 - }, - "span": 112 + } }, { "kind": { @@ -2610,7 +2513,6 @@ "Use": { "Constant": { "const_": { - "id": 14, "kind": { "Allocated": { "align": 8, @@ -2631,26 +2533,22 @@ } } }, - "span": 74, "user_ty": null } } } ] - }, - "span": 119 + } }, { "kind": { "StorageDead": 11 - }, - "span": 112 + } }, { "kind": { "StorageDead": 5 - }, - "span": 115 + } }, { "kind": { @@ -2663,7 +2561,6 @@ "Use": { "Constant": { "const_": { - "id": 15, "kind": { "Allocated": { "align": 1, @@ -2677,14 +2574,12 @@ } } }, - "span": 117, "user_ty": null } } } ] - }, - "span": 117 + } } ], "terminator": { @@ -2692,62 +2587,48 @@ "Goto": { "target": 1 } - }, - "span": 117 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 120 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 121 + "mutability": "Not" }, { - "mutability": "Not", - "span": 122 + "mutability": "Not" }, { - "mutability": "Not", - "span": 96 + "mutability": "Not" }, { - "mutability": "Not", - "span": 116 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 97 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 95 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 99 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 105 + "mutability": "Not" }, { - "mutability": "Not", - "span": 123 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 124 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 113 + "mutability": "Not" } ], - "span": 133, "spread_arg": null, "var_debug_info": [ { @@ -2755,8 +2636,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 0, - "span": 121 + "scope": 0 }, "value": { "Place": { @@ -2770,8 +2650,7 @@ "composite": null, "name": "other", "source_info": { - "scope": 0, - "span": 122 + "scope": 0 }, "value": { "Place": { @@ -2785,8 +2664,7 @@ "composite": null, "name": "b", "source_info": { - "scope": 1, - "span": 96 + "scope": 1 }, "value": { "Place": { @@ -2800,8 +2678,7 @@ "composite": null, "name": "b", "source_info": { - "scope": 2, - "span": 116 + "scope": 2 }, "value": { "Place": { @@ -2815,8 +2692,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 3, - "span": 125 + "scope": 3 }, "value": { "Place": { @@ -2830,8 +2706,7 @@ "composite": null, "name": "slice", "source_info": { - "scope": 4, - "span": 126 + "scope": 4 }, "value": { "Place": { @@ -2845,8 +2720,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 5, - "span": 127 + "scope": 5 }, "value": { "Place": { @@ -2860,8 +2734,7 @@ "composite": null, "name": "ptr", "source_info": { - "scope": 6, - "span": 105 + "scope": 6 }, "value": { "Place": { @@ -2875,8 +2748,7 @@ "composite": null, "name": "me", "source_info": { - "scope": 7, - "span": 123 + "scope": 7 }, "value": { "Place": { @@ -2890,8 +2762,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 8, - "span": 128 + "scope": 8 }, "value": { "Place": { @@ -2905,8 +2776,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 9, - "span": 129 + "scope": 9 }, "value": { "Place": { @@ -2920,16 +2790,13 @@ "composite": null, "name": "err", "source_info": { - "scope": 9, - "span": 130 + "scope": 9 }, "value": { "Const": { "const_": { - "id": 16, "kind": "ZeroSized" }, - "span": 74, "user_ty": null } } @@ -2939,8 +2806,7 @@ "composite": null, "name": "v", "source_info": { - "scope": 10, - "span": 113 + "scope": 10 }, "value": { "Place": { @@ -2954,8 +2820,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 11, - "span": 131 + "scope": 11 }, "value": { "Place": { @@ -2969,8 +2834,7 @@ "composite": null, "name": "other", "source_info": { - "scope": 11, - "span": 132 + "scope": 11 }, "value": { "Place": { @@ -2981,7 +2845,6 @@ } ] }, - "id": 8, "name": "std::array::equality:: for [i32]>::eq" } }, @@ -2996,12 +2859,6 @@ "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 155 - }, { "kind": { "Assign": [ @@ -3010,20 +2867,17 @@ "projection": [] }, { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 40 - ] + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref" + ] + } + } } ] - }, - "span": 155 + } } ], "terminator": { @@ -3032,13 +2886,13 @@ "args": [ { "Move": { - "local": 1, + "local": 3, "projection": [] } }, { "Move": { - "local": 3, + "local": 2, "projection": [] } } @@ -3050,63 +2904,46 @@ "func": { "Constant": { "const_": { - "id": 20, "kind": "ZeroSized" }, - "span": 153, "user_ty": null } }, "target": 1, - "unwind": "Unreachable" + "unwind": "Continue" } - }, - "span": 154 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 157 - } - ], + "statements": [], "terminator": { - "kind": "Return", - "span": 156 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 158 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 159 + "mutability": "Not" }, { - "mutability": "Not", - "span": 160 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 155 + "mutability": "Mut" } ], - "span": 161, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "a", + "name": "self", "source_info": { - "scope": 0, - "span": 159 + "scope": 0 }, "value": { "Place": { @@ -3118,10 +2955,9 @@ { "argument_index": 2, "composite": null, - "name": "b", + "name": "other", "source_info": { - "scope": 0, - "span": 160 + "scope": 0 }, "value": { "Place": { @@ -3132,11 +2968,10 @@ } ] }, - "id": 13, - "name": ">::spec_eq" + "name": "std::array::equality:: for &[i32]>::eq" } }, - "symbol_name": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h" + "symbol_name": "_ZN4core5array8equality96_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$RF$$u5b$T$u5d$$GT$2eq17h" }, { "details": null, @@ -3145,124 +2980,6 @@ "body": { "arg_count": 2, "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 1, - 0 - ] - } - ] - } - } - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 0 - ] - } - ] - } - } - } - ] - }, - "span": 3 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 0 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "BinaryOp": [ - "Lt", - { - "Copy": { - "local": 6, - "projection": [] - } - }, - { - "Copy": { - "local": 7, - "projection": [] - } - } - ] - } - ] - }, - "span": 0 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 13, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 0 - } - }, { "statements": [], "terminator": { @@ -3271,263 +2988,387 @@ "args": [ { "Move": { - "local": 6, + "local": 2, "projection": [] } }, { "Move": { - "local": 9, + "local": 1, "projection": [] } } ], "destination": { - "local": 10, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 4, "user_ty": null } }, - "target": null, + "target": 1, "unwind": "Continue" } - }, - "span": 5 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } } }, + { + "argument_index": 2, + "composite": null, + "name": "index", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + }, + "name": "core::slice::index::> for [i32]>::index" + } + }, + "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 8 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 9 - }, { "kind": { "Assign": [ { - "local": 12, + "local": 0, "projection": [] }, { - "AddressOf": [ - "Not", - { - "local": 2, - "projection": [ - "Deref" - ] + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } - ] + } } ] - }, - "span": 9 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 8 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 10 - }, + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "<() as std::process::Termination>::report" + } + }, + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ + { + "statements": [ { "kind": { "Assign": [ { - "local": 16, + "local": 1, "projection": [] }, { - "Cast": [ - "PtrToPtr", + "Aggregate": [ { - "Copy": { - "local": 12, - "projection": [] - } + "Array": 0 }, - 2 + [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 2, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 3, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 4, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] ] } ] - }, - "span": 11 + } }, { "kind": { "Assign": [ { - "local": 15, + "local": 4, "projection": [] }, { - "BinaryOp": [ - "Offset", + "Ref": [ { - "Copy": { - "local": 16, - "projection": [] - } + "kind": "ReErased" }, + "Shared", { - "Copy": { - "local": 7, - "projection": [] - } + "local": 1, + "projection": [] } ] } ] - }, - "span": 12 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 10 + } }, { "kind": { "Assign": [ { - "local": 11, + "local": 5, "projection": [] }, { "Aggregate": [ { - "RawPtr": [ - 3, - "Not" + "Adt": [ + 0, + 0, + [ + { + "Type": 0 + } + ], + null, + null ] }, [ { - "Copy": { - "local": 15, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } }, { - "Copy": { - "local": 4, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 3, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } ] ] } ] - }, - "span": 13 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 8 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 14 - }, - { - "kind": { - "Assign": [ + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 0, - "projection": [] + "Move": { + "local": 4, + "projection": [] + } }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 11, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 15 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 16 - } - ], - "terminator": { - "kind": "Return", - "span": 6 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 13 - }, - "span": 19 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 20 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } + "Move": { + "local": 5, + "projection": [] + } } ], "destination": { @@ -3537,202 +3378,146 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 17, "user_ty": null } }, - "target": null, + "target": 1, "unwind": "Continue" } - }, - "span": 18 + } } }, { "statements": [ - { - "kind": { - "StorageLive": 14 - }, - "span": 22 - }, { "kind": { "Assign": [ { - "local": 14, + "local": 2, "projection": [] }, { - "BinaryOp": [ - "SubUnchecked", - { - "Copy": { - "local": 6, - "projection": [] - } - }, - { - "Copy": { - "local": 7, - "projection": [] - } + "Use": { + "Copy": { + "local": 3, + "projection": [] } - ] + } } ] - }, - "span": 23 + } }, { "kind": { "Assign": [ { - "local": 5, + "local": 7, "projection": [] }, { - "Aggregate": [ + "Ref": [ { - "Adt": [ - 1, - 1, - [ - { - "Type": 0 - } - ], - null, - null - ] + "kind": "ReErased" }, - [ - { - "Move": { - "local": 14, - "projection": [] - } - } - ] + "Shared", + { + "local": 2, + "projection": [] + } ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 19 + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 8, "projection": [] }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 0 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 20 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 21 - }, - { - "kind": { - "Assign": [ + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 9, - "projection": [] + "Move": { + "local": 7, + "projection": [] + } }, { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] + "Move": { + "local": 8, + "projection": [] + } } - ] - }, - "span": 27 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "BinaryOp": [ - "Gt", - { - "Copy": { - "local": 6, - "projection": [] - } - }, - { - "Copy": { - "local": 9, - "projection": [] - } - } - ] + ], + "destination": { + "local": 6, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } - ] - }, - "span": 21 + }, + "target": 2, + "unwind": "Continue" + } } - ], + } + }, + { + "statements": [], "terminator": { "kind": { "SwitchInt": { "discr": { "Move": { - "local": 8, + "local": 6, "projection": [] } }, @@ -3740,394 +3525,190 @@ "branches": [ [ 0, - 2 + 4 ] ], - "otherwise": 1 + "otherwise": 3 } } - }, - "span": 21 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Not", - "span": 29 - }, - { - "mutability": "Not", - "span": 30 - }, - { - "mutability": "Mut", - "span": 31 }, { - "mutability": "Not", - "span": 26 + "statements": [], + "terminator": { + "kind": "Return" + } }, { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 29, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 1 + ] + ] + } + } + } + }, + "user_ty": null + } + } + ], + "destination": { + "local": 9, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": null, + "unwind": "Continue" + } + } + } + } + ], + "locals": [ { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 21 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 27 + "mutability": "Not" }, { - "mutability": "Not", - "span": 5 + "mutability": "Not" }, { - "mutability": "Not", - "span": 8 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 9 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 0 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 32 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 33 + "mutability": "Mut" } ], - "span": 41, "spread_arg": null, "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 29 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "slice", - "source_info": { - "scope": 0, - "span": 30 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "new_len", - "source_info": { - "scope": 1, - "span": 26 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 34 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 2, - "span": 35 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 3, - "span": 36 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "offset", - "source_info": { - "scope": 3, - "span": 37 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "len", - "source_info": { - "scope": 3, - "span": 38 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, { "argument_index": null, "composite": null, - "name": "ptr", - "source_info": { - "scope": 4, - "span": 32 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 5, - "span": 39 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "index", - "source_info": { - "scope": 5, - "span": 40 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", + "name": "a", "source_info": { - "scope": 6, - "span": 33 + "scope": 1 }, "value": { "Place": { - "local": 16, + "local": 1, "projection": [] } } - } - ] - }, - "id": 0, - "name": " as std::slice::SliceIndex<[i32]>>::index" - } - }, - "symbol_name": "_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 43 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 44 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 45 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 3, - [ - { - "Type": 12 - }, - { - "Type": 13 - }, - { - "Type": 14 - }, - { - "Type": 15 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 45 - }, + }, + { + "argument_index": null, + "composite": null, + "name": "b", + "source_info": { + "scope": 2 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + }, + "name": "main" + } + }, + "symbol_name": "_ZN5slice4main17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [ { "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 44 + "StorageLive": 3 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 3, "projection": [] }, { "Cast": [ - { - "PointerCoercion": "Unsize" - }, + "Transmute", { "Copy": { - "local": 7, + "local": 2, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 44 + } } ], "terminator": { @@ -4136,13 +3717,7 @@ "args": [ { "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, + "local": 1, "projection": [] } }, @@ -4151,139 +3726,61 @@ "local": 3, "projection": [] } - }, - { - "Move": { - "local": 4, - "projection": [] - } } ], "destination": { - "local": 5, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 42, "user_ty": null } }, "target": 1, - "unwind": "Continue" + "unwind": "Unreachable" } - }, - "span": 43 + } } }, { "statements": [ { "kind": { - "StorageDead": 6 - }, - "span": 47 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 17 - ] - } - ] - } - } - } - ] - }, - "span": 48 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 49 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 49 + "StorageDead": 3 + } } ], "terminator": { - "kind": "Return", - "span": 46 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 50 - }, - { - "mutability": "Not", - "span": 51 - }, - { - "mutability": "Not", - "span": 52 - }, - { - "mutability": "Not", - "span": 53 - }, - { - "mutability": "Not", - "span": 54 - }, - { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 44 + "mutability": "Not" }, { - "mutability": "Not", - "span": 44 + "mutability": "Not" }, { - "mutability": "Not", - "span": 45 + "mutability": "Mut" } ], - "span": 55, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "main", + "name": "a", "source_info": { - "scope": 0, - "span": 51 + "scope": 0 }, "value": { "Place": { @@ -4295,10 +3792,9 @@ { "argument_index": 2, "composite": null, - "name": "argc", + "name": "b", "source_info": { - "scope": 0, - "span": 52 + "scope": 0 }, "value": { "Place": { @@ -4306,59 +3802,13 @@ "projection": [] } } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 53 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 54 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 48 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } } ] }, - "id": 2, - "name": "std::rt::lang_start::<()>" + "name": ">::spec_eq" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h" } ], "types": [ @@ -4801,54 +4251,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -5660,39 +5062,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/static-vtable-nonbuiltin-deref.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/static-vtable-nonbuiltin-deref.smir.json.expected similarity index 83% rename from tests/integration/programs/static-vtable-nonbuiltin-deref.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/static-vtable-nonbuiltin-deref.smir.json.expected index eb801b9b..e5ca6777 100644 --- a/tests/integration/programs/static-vtable-nonbuiltin-deref.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/static-vtable-nonbuiltin-deref.smir.json.expected @@ -8,7 +8,7 @@ { "global_alloc": { "VTable": [ - 9, + 0, { "bound_vars": [], "value": { @@ -87,6 +87,25 @@ ] ], "items": [ + { + "details": null, + "mono_item_kind": { + "MonoItemStatic": { + "allocation": { + "align": 1, + "bytes": [ + 7 + ], + "mutability": "Not", + "provenance": { + "ptrs": [] + } + }, + "name": "S" + } + }, + "symbol_name": "_ZN30static_vtable_nonbuiltin_deref1S17h" + }, { "details": null, "mono_item_kind": { @@ -107,7 +126,6 @@ "Use": { "Constant": { "const_": { - "id": 16, "kind": { "Allocated": { "align": 8, @@ -145,14 +163,12 @@ } } }, - "span": 79, "user_ty": null } } } ] - }, - "span": 79 + } }, { "kind": { @@ -165,7 +181,6 @@ "Use": { "Constant": { "const_": { - "id": 17, "kind": { "Allocated": { "align": 8, @@ -186,14 +201,12 @@ } } }, - "span": 80, "user_ty": null } } } ] - }, - "span": 80 + } }, { "kind": { @@ -202,47 +215,6 @@ "local": 5, "projection": [] }, - { - "Use": { - "Constant": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "span": 78 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "BinaryOp": [ "Lt", @@ -253,16 +225,35 @@ } }, { - "Copy": { - "local": 5, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } ] } ] - }, - "span": 78 + } } ], "terminator": { @@ -270,7 +261,7 @@ "Assert": { "cond": { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -284,9 +275,29 @@ } }, "len": { - "Move": { - "local": 5, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } } @@ -294,8 +305,7 @@ "target": 1, "unwind": "Continue" } - }, - "span": 78 + } } }, { @@ -320,8 +330,7 @@ } } ] - }, - "span": 78 + } } ], "terminator": { @@ -342,63 +351,47 @@ "func": { "Constant": { "const_": { - "id": 19, "kind": "ZeroSized" }, - "span": 81, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 82 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 83 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 84 - }, - { - "mutability": "Not", - "span": 82 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 78 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 79 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 80 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 78 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 78 + "mutability": "Mut" } ], - "span": 85, "spread_arg": null, "var_debug_info": [] }, - "id": 9, "name": "main" } }, @@ -409,148 +402,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 66 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 66 - }, - { - "mutability": "Not", - "span": 66 - } - ], - "span": 66, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 6, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 13, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 1, - "unwind": "Unreachable" - } - }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 67 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 68 - }, - { - "mutability": "Not", - "span": 41 - } - ], - "span": 69, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 0, - "span": 41 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - }, - "id": 7, - "name": "std::hint::black_box::<&dyn std::fmt::Debug>" - } - }, - "symbol_name": "_ZN4core4hint9black_box17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + }, { "Move": { - "local": 1, + "local": 2, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -561,90 +540,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -654,136 +612,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 3, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 14, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 71, - "user_ty": null - } - } - } - ] - }, - "span": 71 + "Place": { + "local": 3, + "projection": [] } - ], - "terminator": { - "kind": "Return", - "span": 70 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 72 }, { - "mutability": "Not", - "span": 73 - } - ], - "span": 74, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, + "argument_index": 4, "composite": null, - "name": "self", + "name": "sigpipe", "source_info": { - "scope": 0, - "span": 73 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 8, - "name": "<() as std::process::Termination>::report" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -797,20 +672,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -828,7 +700,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -836,8 +708,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -858,18 +729,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -877,8 +745,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -899,18 +766,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -918,14 +782,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -935,65 +797,28 @@ "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { + "Use": { + "Copy": { "local": 2, "projection": [ { "Field": [ 0, - 15 + 0 + ] + }, + { + "Field": [ + 0, + 0 ] } ] } - ] + } } ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 23 + } }, { "kind": { @@ -1007,73 +832,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1081,8 +885,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1092,7 +895,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1104,8 +907,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1113,25 +915,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 2, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1142,70 +928,47 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 65 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 65 - }, - { - "mutability": "Not", - "span": 65 }, - { - "mutability": "Not", - "span": 65 - } - ], - "span": 65, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 5, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ { "statements": [], "terminator": { @@ -1213,72 +976,102 @@ "Call": { "args": [ { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } ], "destination": { - "local": 0, + "local": 2, "projection": [] }, "func": { "Constant": { "const_": { - "id": 11, "kind": "ZeroSized" }, - "span": 65, "user_ty": null } }, - "target": 1, - "unwind": "Continue" + "target": 2, + "unwind": "Unreachable" } - }, - "span": 65 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 65 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 65 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 65 + "mutability": "Not" }, { - "mutability": "Not", - "span": 65 + "mutability": "Not" } ], - "span": 65, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 5, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1289,203 +1082,54 @@ "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, { "kind": { "Assign": [ { - "local": 3, + "local": 4, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] + "Use": { + "Copy": { + "local": 2, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + }, + { + "Field": [ + 0, + 0 + ] + } + ] } - ] + } } ] - }, - "span": 65 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ + } + }, + { + "kind": { + "Assign": [ { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 12, - "kind": "ZeroSized" - }, - "span": 65, - "user_ty": null - } - }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 65 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 65 - }, - { - "mutability": "Not", - "span": 65 - }, - { - "mutability": "Not", - "span": 65 - }, - { - "mutability": "Not", - "span": 65 - } - ], - "span": 65, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 5, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 44 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 45 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref", - { - "Field": [ - 0, - 21 - ] - } - ] - } - } - } - ] - }, - "span": 45 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] + "local": 3, + "projection": [] }, { "BinaryOp": [ @@ -1499,7 +1143,6 @@ { "Constant": { "const_": { - "id": 6, "kind": { "Allocated": { "align": 4, @@ -1516,21 +1159,18 @@ } } }, - "span": 32, "user_ty": null } } ] } ] - }, - "span": 44 + } }, { "kind": { "StorageDead": 4 - }, - "span": 46 + } } ], "terminator": { @@ -1552,8 +1192,7 @@ "otherwise": 1 } } - }, - "span": 43 + } } }, { @@ -1561,8 +1200,7 @@ { "kind": { "StorageDead": 3 - }, - "span": 43 + } } ], "terminator": { @@ -1589,18 +1227,15 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 47, "user_ty": null } }, "target": 6, "unwind": "Continue" } - }, - "span": 48 + } } }, { @@ -1608,20 +1243,17 @@ { "kind": { "StorageDead": 3 - }, - "span": 43 + } }, { "kind": { "StorageLive": 5 - }, - "span": 50 + } }, { "kind": { "StorageLive": 6 - }, - "span": 51 + } }, { "kind": { @@ -1639,7 +1271,13 @@ { "Field": [ 0, - 21 + 0 + ] + }, + { + "Field": [ + 0, + 0 ] } ] @@ -1647,8 +1285,7 @@ } } ] - }, - "span": 51 + } }, { "kind": { @@ -1669,7 +1306,6 @@ { "Constant": { "const_": { - "id": 8, "kind": { "Allocated": { "align": 4, @@ -1686,21 +1322,18 @@ } } }, - "span": 32, "user_ty": null } } ] } ] - }, - "span": 50 + } }, { "kind": { "StorageDead": 6 - }, - "span": 52 + } } ], "terminator": { @@ -1722,8 +1355,7 @@ "otherwise": 3 } } - }, - "span": 49 + } } }, { @@ -1731,8 +1363,7 @@ { "kind": { "StorageDead": 5 - }, - "span": 49 + } } ], "terminator": { @@ -1759,18 +1390,15 @@ "func": { "Constant": { "const_": { - "id": 9, "kind": "ZeroSized" }, - "span": 53, "user_ty": null } }, "target": 5, "unwind": "Continue" } - }, - "span": 54 + } } }, { @@ -1778,8 +1406,7 @@ { "kind": { "StorageDead": 5 - }, - "span": 49 + } } ], "terminator": { @@ -1806,18 +1433,15 @@ "func": { "Constant": { "const_": { - "id": 10, "kind": "ZeroSized" }, - "span": 55, "user_ty": null } }, "target": 5, "unwind": "Continue" } - }, - "span": 56 + } } }, { @@ -1827,49 +1451,39 @@ "Goto": { "target": 6 } - }, - "span": 57 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 58 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 59 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 60 + "mutability": "Not" }, { - "mutability": "Not", - "span": 61 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 44 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 45 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 50 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" } ], - "span": 64, "spread_arg": null, "var_debug_info": [ { @@ -1877,8 +1491,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 0, - "span": 60 + "scope": 0 }, "value": { "Place": { @@ -1892,8 +1505,7 @@ "composite": null, "name": "f", "source_info": { - "scope": 0, - "span": 61 + "scope": 0 }, "value": { "Place": { @@ -1907,8 +1519,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 62 + "scope": 1 }, "value": { "Place": { @@ -1922,8 +1533,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 2, - "span": 63 + "scope": 2 }, "value": { "Place": { @@ -1934,7 +1544,6 @@ } ] }, - "id": 4, "name": "core::fmt::num::::fmt" } }, @@ -1945,135 +1554,168 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "Aggregate": [ - { - "Closure": [ - 2, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } + "Move": { + "local": 1, + "projection": [ + "Deref" ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] + } }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] + "Move": { + "local": 2, + "projection": [] + } } - ] - }, - "span": 2 - }, - { - "kind": { + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [ + { + "kind": { "Assign": [ { - "local": 6, + "local": 3, "projection": [] }, { - "Cast": [ + "Ref": [ { - "PointerCoercion": "Unsize" + "kind": "ReErased" }, { - "Copy": { - "local": 7, - "projection": [] + "Mut": { + "kind": "Default" } }, - 5 + { + "local": 1, + "projection": [] + } ] } ] - }, - "span": 2 + } } ], "terminator": { "kind": { "Call": { "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, { "Move": { "local": 3, @@ -2082,231 +1724,263 @@ }, { "Move": { - "local": 4, + "local": 2, "projection": [] } } ], "destination": { - "local": 5, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, "target": 1, + "unwind": { + "Cleanup": 3 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 2, "unwind": "Continue" } - }, - "span": 1 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } } - ], + } + }, + { + "statements": [], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 9 + "mutability": "Not" }, { - "mutability": "Not", - "span": 10 + "mutability": "Not" }, { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "mutability": "Mut", - "span": 2 - }, + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Unreachable" + } } } }, { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } + "statements": [], + "terminator": { + "kind": "Return" } - }, + } + ], + "locals": [ { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } + "mutability": "Mut" }, { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "v", + "name": "dummy", "source_info": { - "scope": 1, - "span": 6 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 1, "projection": [] } } } ] }, - "id": 1, - "name": "std::rt::lang_start::<()>" + "name": "std::hint::black_box::<&dyn std::fmt::Debug>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN4core4hint9black_box17h" }, { "details": null, "mono_item_kind": { - "MonoItemStatic": { - "allocation": { - "align": 1, - "bytes": [ - 7 + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": "Return" + } + } ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] }, - "id": 0, - "name": "S" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN30static_vtable_nonbuiltin_deref1S17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -2361,8 +2035,7 @@ "discriminants": [ 0, 1, - 2, - 3 + 2 ], "fields": "elided", "layout": { @@ -2370,7 +2043,7 @@ "Scalar": { "Initialized": { "valid_range": { - "end": 3, + "end": 2, "start": 0 }, "value": { @@ -2400,7 +2073,7 @@ "tag": { "Initialized": { "valid_range": { - "end": 3, + "end": 2, "start": 0 }, "value": { @@ -2476,7 +2149,81 @@ "index": 2 } } + } + ] + } + } + }, + "name": "std::fmt::Alignment" + } + } + ], + [ + { + "EnumType": { + "discriminants": [ + 0, + 1 + ], + "fields": "elided", + "layout": { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 3, + "start": 0 }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, + "size": { + "num_bits": 8 + }, + "variants": { + "Multiple": { + "tag": { + "Initialized": { + "valid_range": { + "end": 3, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + }, + "tag_encoding": { + "Niche": { + "niche_start": 3, + "niche_variants": { + "end": 0, + "start": 0 + }, + "untagged_variant": 1 + } + }, + "tag_field": 0, + "variants": [ { "abi": { "Aggregate": { @@ -2489,12 +2236,48 @@ "offsets": [] } }, + "size": { + "num_bits": 0 + }, + "variants": { + "Single": { + "index": 0 + } + } + }, + { + "abi": { + "Scalar": { + "Initialized": { + "valid_range": { + "end": 2, + "start": 0 + }, + "value": { + "Int": { + "length": "I8", + "signed": false + } + } + } + } + }, + "abi_align": 1, + "fields": { + "Arbitrary": { + "offsets": [ + { + "num_bits": 0 + } + ] + } + }, "size": { "num_bits": 8 }, "variants": { "Single": { - "index": 3 + "index": 1 } } } @@ -2502,7 +2285,7 @@ } } }, - "name": "core::fmt::rt::Alignment" + "name": "std::option::Option" } } ], @@ -2791,41 +2574,22 @@ ], [ { - "EnumType": { - "discriminants": [ - 0, - 1 - ], + "StructType": { "fields": "elided", "layout": { "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } + "Aggregate": { + "sized": true } }, - "abi_align": 8, + "abi_align": 1, "fields": { "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] + "offsets": [] } }, "size": { - "num_bits": 64 + "num_bits": 0 }, "variants": { "Single": { @@ -2833,7 +2597,7 @@ } } }, - "name": "std::result::Result" + "name": "std::fmt::Error" } } ], @@ -2847,14 +2611,21 @@ "sized": true } }, - "abi_align": 1, + "abi_align": 8, "fields": { "Arbitrary": { - "offsets": [] + "offsets": [ + { + "num_bits": 0 + }, + { + "num_bits": 384 + } + ] } }, "size": { - "num_bits": 0 + "num_bits": 512 }, "variants": { "Single": { @@ -2862,7 +2633,7 @@ } } }, - "name": "std::fmt::Error" + "name": "std::fmt::Formatter<'_>" } } ], @@ -2881,28 +2652,25 @@ "Arbitrary": { "offsets": [ { - "num_bits": 416 + "num_bits": 288 }, { - "num_bits": 384 + "num_bits": 256 }, { - "num_bits": 448 + "num_bits": 320 }, { "num_bits": 0 }, { "num_bits": 128 - }, - { - "num_bits": 256 } ] } }, "size": { - "num_bits": 512 + "num_bits": 384 }, "variants": { "Single": { @@ -2910,7 +2678,7 @@ } } }, - "name": "std::fmt::Formatter<'_>" + "name": "std::fmt::FormattingOptions" } } ], @@ -3314,39 +3082,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/strange-ref-deref.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/strange-ref-deref.smir.json.expected similarity index 78% rename from tests/integration/programs/strange-ref-deref.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/strange-ref-deref.smir.json.expected index f5316c53..3660fa2f 100644 --- a/tests/integration/programs/strange-ref-deref.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/strange-ref-deref.smir.json.expected @@ -108,7 +108,6 @@ "Use": { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -125,14 +124,12 @@ } } }, - "span": 51, "user_ty": null } } } ] - }, - "span": 51 + } }, { "kind": { @@ -154,8 +151,7 @@ ] } ] - }, - "span": 52 + } }, { "kind": { @@ -177,8 +173,7 @@ ] } ] - }, - "span": 53 + } }, { "kind": { @@ -196,8 +191,7 @@ } } ] - }, - "span": 53 + } }, { "kind": { @@ -215,8 +209,7 @@ } } ] - }, - "span": 54 + } }, { "kind": { @@ -236,8 +229,7 @@ } } ] - }, - "span": 55 + } } ], "terminator": { @@ -259,15 +251,13 @@ "otherwise": 2 } } - }, - "span": 50 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 56 + "kind": "Return" } }, { @@ -279,7 +269,6 @@ { "Constant": { "const_": { - "id": 11, "kind": { "Allocated": { "align": 8, @@ -313,7 +302,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -325,52 +313,41 @@ "func": { "Constant": { "const_": { - "id": 10, "kind": "ZeroSized" }, - "span": 57, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 57 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 58 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 59 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 60 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 53 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 57 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 53 + "mutability": "Mut" } ], - "span": 61, "spread_arg": null, "var_debug_info": [ { @@ -378,8 +355,7 @@ "composite": null, "name": "a", "source_info": { - "scope": 1, - "span": 59 + "scope": 1 }, "value": { "Place": { @@ -393,8 +369,7 @@ "composite": null, "name": "b", "source_info": { - "scope": 2, - "span": 60 + "scope": 2 }, "value": { "Place": { @@ -405,7 +380,6 @@ } ] }, - "id": 6, "name": "main" } }, @@ -416,63 +390,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -483,90 +528,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -576,136 +600,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -719,20 +660,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -750,7 +688,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -758,8 +696,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -780,18 +717,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -799,8 +733,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -821,18 +754,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -840,14 +770,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -856,42 +784,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -900,13 +792,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -914,8 +806,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -929,73 +820,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -1003,8 +873,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1014,7 +883,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1026,8 +895,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1035,25 +903,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1064,62 +916,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1156,52 +1096,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1235,8 +1221,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1263,10 +1248,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1275,8 +1258,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1291,15 +1273,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1314,222 +1294,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1539,168 +1374,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1737,54 +1453,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2204,39 +1872,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/struct.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/struct.smir.json.expected similarity index 79% rename from tests/integration/programs/struct.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/struct.smir.json.expected index a62354e5..fa2c8639 100644 --- a/tests/integration/programs/struct.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/struct.smir.json.expected @@ -99,109 +99,82 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 1, + "local": 7, "projection": [] }, { "Aggregate": [ { - "Adt": [ - 7, + "Closure": [ 0, - [], - null, - null + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] ] }, [ { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 52, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 2, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 53, - "user_ty": null + "Copy": { + "local": 1, + "projection": [] } } ] ] } ] - }, - "span": 54 + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 6, "projection": [] }, { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 26 - ] - } - ] + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] } - } + ] } ] - }, - "span": 55 + } }, { "kind": { @@ -211,331 +184,122 @@ "projection": [] }, { - "CheckedBinaryOp": [ - "Add", + "Cast": [ + { + "PointerCoercion": "Unsize" + }, { "Copy": { - "local": 4, + "local": 6, "projection": [] } }, - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 50, - "user_ty": null - } - } + 0 ] } ] - }, - "span": 51 + } } ], "terminator": { "kind": { - "Assert": { - "cond": { - "Move": { - "local": 5, - "projection": [ - { - "Field": [ - 1, - 25 - ] - } - ] + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } } + ], + "destination": { + "local": 0, + "projection": [] }, - "expected": false, - "msg": { - "Overflow": [ - "Add", - { - "Move": { - "local": 4, - "projection": [] - } + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" }, - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 1, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 50, - "user_ty": null - } - } - ] + "user_ty": null + } }, "target": 1, "unwind": "Continue" } - }, - "span": 51 + } } }, { "statements": [ { "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 5, - "projection": [ - { - "Field": [ - 0, - 26 - ] - } - ] - } - } - } - ] - }, - "span": 51 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 1, - 26 - ] - } - ] - } - } - } - ] - }, - "span": 57 + "StorageDead": 5 + } }, { "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ] - } - ] - }, - "span": 56 + "StorageDead": 7 + } } ], "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 2 - } - } - }, - "span": 56 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 58 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 32, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized" - }, - "span": 59, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 59 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 60 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 61 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 56 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 51 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 57 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 59 + "mutability": "Not" } ], - "span": 62, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "s", + "name": "main", "source_info": { - "scope": 1, - "span": 61 + "scope": 0 }, "value": { "Place": { @@ -543,49 +307,55 @@ "projection": [] } } - } - ] - }, - "id": 6, - "name": "main" - } - }, - "symbol_name": "_ZN6struct4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ + }, { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } } - } - ], - "locals": [ + }, { - "mutability": "Mut", - "span": 44 + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } }, { - "mutability": "Not", - "span": 44 + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } + } } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] + ] }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -595,63 +365,94 @@ "arg_count": 1, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 4, "projection": [] } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } } ], "destination": { - "local": 0, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 4 + } + } + ], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] } } ], @@ -662,101 +463,162 @@ "func": { "Constant": { "const_": { - "id": 5, "kind": "ZeroSized" }, - "span": 34, "user_ty": null } }, "target": 2, - "unwind": "Unreachable" + "unwind": "Continue" } - }, - "span": 35 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 0 + ] + }, + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + 0 + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 2 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 39 + "mutability": "Mut" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { "local": 1, - "projection": [] + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] } } }, { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "result", + "name": "self", "source_info": { - "scope": 1, - "span": 40 + "scope": 1 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -766,439 +628,219 @@ "arg_count": 1, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 0, - "projection": [] + "Move": { + "local": 1, + "projection": [] + } }, { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } - ] - }, - "span": 46 + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } } - ], + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], "terminator": { - "kind": "Return", - "span": 45 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 47 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 48 + "mutability": "Not" + }, + { + "mutability": "Not" } ], - "span": 49, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", "source_info": { - "scope": 0, - "span": 48 + "scope": 2 }, "value": { "Const": { "const_": { - "id": 4, "kind": "ZeroSized" }, - "span": 32, "user_ty": null } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 15 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 17 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - } - ] - }, - "span": 17 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 4, - "projection": [] + "local": 1, + "projection": [ + "Deref" + ] } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 1, - "kind": "ZeroSized" - }, - "span": 14, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 15 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 19 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ + }, { "Move": { - "local": 3, + "local": 2, "projection": [] } } ], "destination": { - "local": 2, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, - "target": 2, + "target": 1, "unwind": "Continue" } - }, - "span": 16 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 21 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 22 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 16 - ] - } - ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 27 - } - ], + "statements": [], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 - }, - { - "mutability": "Mut", - "span": 16 - }, - { - "mutability": "Mut", - "span": 15 - }, - { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Not" } ], - "span": 3, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] + "spread_arg": 2, + "var_debug_info": [] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1226,123 +868,35 @@ "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": ">::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, { "details": null, "mono_item_kind": { @@ -1376,8 +930,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1404,10 +957,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1416,8 +967,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1432,15 +982,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1455,41 +1003,33 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 43 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1500,92 +1040,322 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "<() as std::process::Termination>::report" + } + }, + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ + { + "statements": [ { "kind": { "Assign": [ { - "local": 8, + "local": 1, "projection": [] }, { "Aggregate": [ { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] + "Adt": [ + 0, + 0, + [], + null, + null ] }, [ { - "Copy": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 2, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } ] ] } ] - }, - "span": 3 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 4, "projection": [] }, { - "Ref": [ + "Use": { + "Copy": { + "local": 1, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "CheckedBinaryOp": [ + "Add", { - "kind": "ReErased" + "Copy": { + "local": 4, + "projection": [] + } }, - "Shared", { - "local": 8, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } } ] } ] - }, - "span": 2 + } + } + ], + "terminator": { + "kind": { + "Assert": { + "cond": { + "Move": { + "local": 5, + "projection": [ + { + "Field": [ + 1, + 0 + ] + } + ] + } + }, + "expected": false, + "msg": { + "Overflow": [ + "Add", + { + "Move": { + "local": 4, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 1, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Use": { + "Move": { + "local": 5, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } }, { "kind": { @@ -1595,253 +1365,192 @@ "projection": [] }, { - "Cast": [ + "Use": { + "Copy": { + "local": 1, + "projection": [ + { + "Field": [ + 1, + 0 + ] + } + ] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 2, + "projection": [] + }, + { + "BinaryOp": [ + "Eq", { - "PointerCoercion": "Unsize" + "Move": { + "local": 3, + "projection": [] + } }, { - "Copy": { - "local": 7, + "Move": { + "local": 6, "projection": [] } - }, - 5 + } + ] + } + ] + } + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 2, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 3 ] - } - ] - }, - "span": 2 + ], + "otherwise": 2 + } + } } - ], + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 32, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null } } ], "destination": { - "local": 5, + "local": 7, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 1 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 } - ], - "terminator": { - "kind": "Return", - "span": 4 } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 10 + "mutability": "Not" }, { - "mutability": "Not", - "span": 11 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, { "argument_index": null, "composite": null, - "name": "v", + "name": "s", "source_info": { - "scope": 1, - "span": 6 + "scope": 1 }, "value": { "Place": { - "local": 0, + "local": 1, "projection": [] } } } ] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "main" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN6struct4main17h" } ], "types": [ @@ -1883,54 +1592,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2409,39 +2070,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/sum-to-n.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/sum-to-n.smir.json.expected similarity index 80% rename from tests/integration/programs/sum-to-n.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/sum-to-n.smir.json.expected index 343e5e31..7fe0a490 100644 --- a/tests/integration/programs/sum-to-n.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/sum-to-n.smir.json.expected @@ -101,478 +101,263 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 1, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 16, - "kind": "ZeroSized" - }, - "span": 84, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 } }, - "span": 85 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 86 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 87 - }, - { - "mutability": "Not", - "span": 85 - } - ], - "span": 88, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 8, - "name": "main" - } - }, - "symbol_name": "_ZN8sum_to_n4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 0, - "blocks": [ - { - "statements": [ { "kind": { "Assign": [ { - "local": 3, + "local": 7, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 10, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] } - }, - "span": 71, - "user_ty": null + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] } - } + ] } ] - }, - "span": 72 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } } ], "terminator": { "kind": { "Call": { "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, { "Move": { "local": 3, "projection": [] } + }, + { + "Move": { + "local": 4, + "projection": [] + } } ], "destination": { - "local": 2, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 11, "kind": "ZeroSized" }, - "span": 69, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 70 + } } }, { "statements": [ { "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 55, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 74, - "user_ty": null - } - } - } - ] - }, - "span": 75 + "StorageDead": 5 + } }, { "kind": { - "Assign": [ - { - "local": 1, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ] - } - ] - }, - "span": 76 + "StorageDead": 7 + } } ], "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 1, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 3 - } - } - }, - "span": 73 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 24, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized" - }, - "span": 77, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 77 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 78 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 79 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 80 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 70 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 72 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 75 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 77 + "mutability": "Not" } ], - "span": 83, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "n", + "name": "main", "source_info": { - "scope": 1, - "span": 81 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 10, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 71, - "user_ty": null + "Place": { + "local": 1, + "projection": [] } } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "golden", + "name": "argc", "source_info": { - "scope": 2, - "span": 82 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 55, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 74, - "user_ty": null + "Place": { + "local": 2, + "projection": [] } } }, { - "argument_index": null, + "argument_index": 3, "composite": null, - "name": "sucess", + "name": "argv", "source_info": { - "scope": 3, - "span": 80 + "scope": 0 }, "value": { "Place": { - "local": 1, + "local": 3, "projection": [] } } - } - ] - }, - "id": 7, - "name": "test_sum_to_n" - } - }, - "symbol_name": "_ZN8sum_to_n13test_sum_to_n17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 }, { - "mutability": "Not", - "span": 44 + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } + } } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] + ] }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -582,63 +367,94 @@ "arg_count": 1, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 4, "projection": [] } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } } ], "destination": { - "local": 0, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 4 + } + } + ], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] } } ], @@ -649,101 +465,162 @@ "func": { "Constant": { "const_": { - "id": 5, "kind": "ZeroSized" }, - "span": 34, "user_ty": null } }, "target": 2, - "unwind": "Unreachable" + "unwind": "Continue" } - }, - "span": 35 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 0 + ] + }, + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + 0 + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 2 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 39 + "mutability": "Mut" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { "local": 1, - "projection": [] + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] } } }, { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "result", + "name": "self", "source_info": { - "scope": 1, - "span": 40 + "scope": 1 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -753,677 +630,442 @@ "arg_count": 1, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 0, - "projection": [] + "Move": { + "local": 1, + "projection": [] + } }, { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } - ] - }, - "span": 46 + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } } - ], + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], "terminator": { - "kind": "Return", - "span": 45 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 47 + "mutability": "Mut" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 48 + "mutability": "Not" } ], - "span": 49, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", "source_info": { - "scope": 0, - "span": 48 + "scope": 2 }, "value": { "Const": { "const_": { - "id": 4, "kind": "ZeroSized" }, - "span": 32, "user_ty": null } } } ] }, - "id": 5, - "name": "<() as std::process::Termination>::report" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "Use": { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null - } + "Move": { + "local": 1, + "projection": [ + "Deref" + ] } - } - ] - }, - "span": 51 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] }, { - "Use": { - "Copy": { - "local": 1, - "projection": [] - } + "Move": { + "local": 2, + "projection": [] } } - ] - }, - "span": 52 + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } } - ], + } + }, + { + "statements": [], "terminator": { - "kind": { - "Goto": { - "target": 1 - } - }, - "span": 50 + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 54 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "BinaryOp": [ - "Gt", - { - "Move": { - "local": 5, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 55, - "user_ty": null - } - } - ] - } - ] - }, - "span": 53 - } - ], + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], "terminator": { "kind": { - "SwitchInt": { - "discr": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { "Move": { - "local": 4, + "local": 1, "projection": [] } }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 2 - } + "target": 1, + "unwind": "Continue" } - }, - "span": 53 + } } }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 57 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "CheckedBinaryOp": [ - "Add", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ] - } - ] - }, - "span": 56 - } - ], + "statements": [], "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 7, - "projection": [ - { - "Field": [ - 1, - 26 - ] - } - ] - } - }, - "expected": false, - "msg": { - "Overflow": [ - "Add", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ] - }, - "target": 3, - "unwind": "Continue" - } - }, - "span": 56 + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ { "statements": [ { "kind": { "Assign": [ { - "local": 2, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 7, - "projection": [ - { - "Field": [ - 0, - 25 - ] - } - ] - } - } - } - ] - }, - "span": 56 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 60 - }, - { - "kind": { - "Assign": [ - { - "local": 9, + "local": 3, "projection": [] }, { - "CheckedBinaryOp": [ - "Sub", + "Ref": [ { - "Copy": { - "local": 8, - "projection": [] - } + "kind": "ReErased" }, { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 58, - "user_ty": null + "Mut": { + "kind": "Default" } + }, + { + "local": 1, + "projection": [] } ] } ] - }, - "span": 59 + } } ], "terminator": { "kind": { - "Assert": { - "cond": { - "Move": { - "local": 9, - "projection": [ - { - "Field": [ - 1, - 26 - ] - } - ] + "Call": { + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } } + ], + "destination": { + "local": 0, + "projection": [] }, - "expected": false, - "msg": { - "Overflow": [ - "Sub", - { - "Move": { - "local": 8, - "projection": [] - } + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 58, - "user_ty": null - } - } - ] + "user_ty": null + } }, - "target": 4, - "unwind": "Continue" + "target": 1, + "unwind": { + "Cleanup": 3 + } } - }, - "span": 59 + } } }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 9, - "projection": [ - { - "Field": [ - 0, - 25 - ] - } - ] - } - } - } - ] - }, - "span": 61 - } - ], + "statements": [], "terminator": { "kind": { - "Goto": { - "target": 1 + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 2, + "unwind": "Continue" } - }, - "span": 50 + } } }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [] - } - } - } - ] - }, - "span": 63 + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } } - ], + } + }, + { + "statements": [], "terminator": { - "kind": "Return", - "span": 62 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 64 - }, - { - "mutability": "Not", - "span": 65 - }, - { - "mutability": "Mut", - "span": 66 - }, - { - "mutability": "Mut", - "span": 67 - }, - { - "mutability": "Mut", - "span": 53 - }, - { - "mutability": "Mut", - "span": 54 - }, - { - "mutability": "Mut", - "span": 57 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 56 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 60 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 59 + "mutability": "Not" } ], - "span": 68, - "spread_arg": null, - "var_debug_info": [ + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "argument_index": 1, - "composite": null, - "name": "n", - "source_info": { - "scope": 0, - "span": 65 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } + "statements": [], + "terminator": { + "kind": "Return" } - }, + } + ], + "locals": [ { - "argument_index": null, - "composite": null, - "name": "sum", - "source_info": { - "scope": 1, - "span": 66 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } + "mutability": "Mut" }, { - "argument_index": null, - "composite": null, - "name": "counter", - "source_info": { - "scope": 2, - "span": 67 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } + "mutability": "Not" } - ] + ], + "spread_arg": null, + "var_debug_info": [] }, - "id": 6, - "name": "sum_to_n" + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN8sum_to_n8sum_to_n17h" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1434,355 +1076,414 @@ "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 15 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 17 - }, { "kind": { "Assign": [ { - "local": 4, + "local": 0, "projection": [] }, { "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 17 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 1, - "kind": "ZeroSized" - }, - "span": 14, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" } - }, - "span": 15 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 19 } ], "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 2, - "kind": "ZeroSized" - }, - "span": 18, - "user_ty": null - } - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 16 + "kind": "Return" } + } + ], + "locals": [ + { + "mutability": "Mut" }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "<() as std::process::Termination>::report" + } + }, + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 21 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 22 - }, { "kind": { "Assign": [ { - "local": 5, + "local": 3, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } - ] + } + } + ] + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ { "kind": { "Assign": [ { - "local": 6, + "local": 4, "projection": [] }, { "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 55, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 23 + } }, { "kind": { "Assign": [ { - "local": 0, + "local": 1, "projection": [] }, { - "Cast": [ - "IntToInt", + "BinaryOp": [ + "Eq", { "Move": { - "local": 6, + "local": 2, "projection": [] } }, - 16 + { + "Move": { + "local": 4, + "projection": [] + } + } ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": { + "SwitchInt": { + "discr": { + "Copy": { + "local": 1, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 2 + ] + ], + "otherwise": 3 + } + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 24, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null + } + } + ], + "destination": { + "local": 5, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": null, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { "argument_index": null, "composite": null, - "name": "main", + "name": "n", "source_info": { - "scope": 0, - "span": 9 + "scope": 1 }, "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] + "Const": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "golden", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 55, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] + }, + "user_ty": null } } }, { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "self", + "name": "sucess", "source_info": { - "scope": 2, - "span": 30 + "scope": 3 }, "value": { "Place": { - "local": 5, + "local": 1, "projection": [] } } } ] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "test_sum_to_n" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN8sum_to_n13test_sum_to_n17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 0, "blocks": [ { "statements": [], @@ -1791,482 +1492,469 @@ "Call": { "args": [], "destination": { - "local": 0, + "local": 1, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, + "spread_arg": null, "var_debug_info": [] }, - "id": 3, - "name": ">::call_once" + "name": "main" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN8sum_to_n4main17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + "statements": [ + { + "kind": { + "Assign": [ { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } + "local": 2, + "projection": [] }, { - "Move": { - "local": 2, - "projection": [] + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } } } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 43, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" + ] } }, - "span": 43 + { + "kind": { + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [] + } + } + } + ] + } + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 1 + } + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 3, + "projection": [] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "BinaryOp": [ + "Gt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + } + ] + } + } + ], "terminator": { - "kind": "Return", - "span": 43 + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 4, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 5 + ] + ], + "otherwise": 2 + } + } + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ { "statements": [ { "kind": { "Assign": [ { - "local": 3, + "local": 6, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 3, + "projection": [] + } + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, + "CheckedBinaryOp": [ + "Add", { - "Mut": { - "kind": "Default" + "Copy": { + "local": 2, + "projection": [] } }, { - "local": 1, - "projection": [] + "Copy": { + "local": 6, + "projection": [] + } } ] } ] - }, - "span": 43 + } } ], "terminator": { "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } + "Assert": { + "cond": { + "Move": { + "local": 7, + "projection": [ + { + "Field": [ + 1, + 0 + ] + } + ] } - ], - "destination": { - "local": 0, - "projection": [] }, - "func": { - "Constant": { - "const_": { - "id": 7, - "kind": "ZeroSized" + "expected": false, + "msg": { + "Overflow": [ + "Add", + { + "Copy": { + "local": 2, + "projection": [] + } }, - "span": 43, - "user_ty": null - } - }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] + { + "Move": { + "local": 6, + "projection": [] + } + } + ] }, - "target": 2, + "target": 3, "unwind": "Continue" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, { "kind": { "Assign": [ { - "local": 8, + "local": 2, "projection": [] }, { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] + "Use": { + "Move": { + "local": 7, + "projection": [ + { + "Field": [ + 0, + 0 + ] } - } - ] - ] + ] + } + } } ] - }, - "span": 3 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 8, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, + "Use": { + "Copy": { + "local": 3, "projection": [] } - ] + } } ] - }, - "span": 2 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 9, "projection": [] }, { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, + "CheckedBinaryOp": [ + "Sub", { "Copy": { - "local": 7, + "local": 8, "projection": [] } - }, - 5 + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } ] } ] - }, - "span": 2 + } } ], "terminator": { "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } + "Assert": { + "cond": { + "Move": { + "local": 9, + "projection": [ + { + "Field": [ + 1, + 0 + ] + } + ] } - ], - "destination": { - "local": 5, - "projection": [] }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" + "expected": false, + "msg": { + "Overflow": [ + "Sub", + { + "Move": { + "local": 8, + "projection": [] + } }, - "span": 0, - "user_ty": null - } + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] }, - "target": 1, + "target": 4, "unwind": "Continue" } - }, - "span": 1 + } } }, { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ { - "local": 0, + "local": 3, "projection": [] }, { "Use": { - "Copy": { - "local": 5, + "Move": { + "local": 9, "projection": [ - { - "Downcast": 0 - }, { "Field": [ 0, - 6 + 0 ] } ] @@ -2274,76 +1962,83 @@ } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, + } + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 1 + } + } + } + }, + { + "statements": [ { "kind": { - "StorageDead": 5 - }, - "span": 7 + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 2, + "projection": [] + } + } + } + ] + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 + "mutability": "Mut" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 9 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 10 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 11 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "main", + "name": "n", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -2353,12 +2048,11 @@ } }, { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "argc", + "name": "sum", "source_info": { - "scope": 0, - "span": 10 + "scope": 1 }, "value": { "Place": { @@ -2367,58 +2061,26 @@ } } }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, { "argument_index": null, "composite": null, - "name": "v", + "name": "counter", "source_info": { - "scope": 1, - "span": 6 + "scope": 2 }, "value": { "Place": { - "local": 0, + "local": 3, "projection": [] } } } ] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "sum_to_n" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN8sum_to_n8sum_to_n17h" } ], "types": [ @@ -2467,54 +2129,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2930,39 +2544,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/tuple-eq.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/tuple-eq.smir.json.expected similarity index 80% rename from tests/integration/programs/tuple-eq.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/tuple-eq.smir.json.expected index 56bb496c..aa0f5297 100644 --- a/tests/integration/programs/tuple-eq.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/tuple-eq.smir.json.expected @@ -131,81 +131,66 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 1, + "local": 7, "projection": [] }, { "Aggregate": [ - "Tuple", - [ - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } + { + "Closure": [ + 0, + [ + { + "Type": 0 }, - "span": 69, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 99, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } + { + "Type": 0 }, - "span": 70, - "user_ty": null + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] } } ] ] } ] - }, - "span": 71 + } }, { "kind": { "Assign": [ { - "local": 3, + "local": 6, "projection": [] }, { @@ -215,66 +200,55 @@ }, "Shared", { - "local": 1, + "local": 7, "projection": [] } ] } ] - }, - "span": 72 + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 5, "projection": [] }, { - "Use": { - "Constant": { - "const_": { - "id": 14, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 73, - "user_ty": null - } - } + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] } ] - }, - "span": 73 + } } ], "terminator": { "kind": { "Call": { "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, { "Move": { "local": 3, @@ -289,164 +263,75 @@ } ], "destination": { - "local": 2, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 11, "kind": "ZeroSized" }, - "span": 68, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 68 + } } }, { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 2 - } + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 68 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 74 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 33, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 15, - "kind": "ZeroSized" - }, - "span": 75, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" + { + "kind": { + "StorageDead": 7 } - }, - "span": 75 + } + ], + "terminator": { + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 76 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 77 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 68 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 72 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 73 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 75 + "mutability": "Not" } ], - "span": 78, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "tup", + "name": "main", "source_info": { - "scope": 1, - "span": 77 + "scope": 0 }, "value": { "Place": { @@ -454,49 +339,55 @@ "projection": [] } } - } - ] - }, - "id": 8, - "name": "main" - } - }, - "symbol_name": "_ZN8tuple_eq4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ + }, { - "statements": [], - "terminator": { - "kind": "Return", - "span": 53 + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } } - } - ], - "locals": [ + }, { - "mutability": "Mut", - "span": 53 + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } }, { - "mutability": "Not", - "span": 53 + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } + } } - ], - "span": 53, - "spread_arg": null, - "var_debug_info": [] + ] }, - "id": 5, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -506,63 +397,94 @@ "arg_count": 1, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 2 + } + }, + { + "kind": { + "StorageLive": 3 + } + }, + { + "kind": { + "StorageLive": 4 + } + }, + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 4, "projection": [] } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } } ], "destination": { - "local": 0, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], + "statements": [ + { + "kind": { + "StorageDead": 4 + } + } + ], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] } } ], @@ -573,296 +495,221 @@ "func": { "Constant": { "const_": { - "id": 5, "kind": "ZeroSized" }, - "span": 34, "user_ty": null } }, "target": 2, - "unwind": "Unreachable" + "unwind": "Continue" } - }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 37 - }, - { - "mutability": "Not", - "span": 38 - }, - { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] } } }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ { "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } + }, { "kind": { "Assign": [ { - "local": 0, + "local": 5, "projection": [] }, { "Use": { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } + "Copy": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 0 + ] + }, + { + "Field": [ + 0, + 0 + ] } - }, - "span": 64, - "user_ty": null + ] } } } ] - }, - "span": 64 + } + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + 0 + ] + } + ] + } + }, + { + "kind": { + "StorageDead": 5 + } + }, + { + "kind": { + "StorageDead": 2 + } } ], "terminator": { - "kind": "Return", - "span": 63 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 65 + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 66 + "mutability": "Mut" + }, + { + "mutability": "Mut" } ], - "span": 67, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "self", + "name": "main", "source_info": { - "scope": 0, - "span": 66 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 7, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 15 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 17 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - } - ] - }, - "span": 17 + "Place": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] } - ], + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + }, + "name": "std::rt::lang_start::<()>::{closure#0}" + } + }, + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 4, + "local": 1, "projection": [] } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } } ], "destination": { - "local": 3, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 19 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 3, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } ], @@ -873,75 +720,132 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, - "unwind": "Continue" + "unwind": "Unreachable" } - }, - "span": 16 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 3 + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" }, - "span": 21 - }, + "user_ty": null + } + } + } + ] + }, + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + } + }, + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [ { "kind": { - "StorageLive": 5 - }, - "span": 22 + "StorageLive": 3 + } }, { "kind": { "Assign": [ { - "local": 5, + "local": 3, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, + "Use": { + "Copy": { + "local": 1, "projection": [ - { - "Field": [ - 0, - 15 - ] - } + "Deref" ] } - ] + } } ] - }, - "span": 22 + } }, { "kind": { - "StorageLive": 6 - }, - "span": 23 + "StorageLive": 4 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 4, "projection": [] }, { @@ -949,25 +853,13 @@ "Copy": { "local": 2, "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } + "Deref" ] } } } ] - }, - "span": 23 + } }, { "kind": { @@ -977,139 +869,94 @@ "projection": [] }, { - "Cast": [ - "IntToInt", + "BinaryOp": [ + "Eq", { "Move": { - "local": 6, + "local": 3, "projection": [] } }, - 16 + { + "Move": { + "local": 4, + "projection": [] + } + } ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { - "StorageDead": 5 - }, - "span": 26 + "StorageDead": 4 + } }, { "kind": { - "StorageDead": 2 - }, - "span": 27 + "StorageDead": 3 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], - "locals": [ - { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 - }, - { - "mutability": "Mut", - "span": 16 - }, - { - "mutability": "Mut", - "span": 15 - }, - { - "mutability": "Mut", - "span": 17 - }, - { - "mutability": "Mut", - "span": 22 - }, - { - "mutability": "Mut", - "span": 23 - } - ], - "span": 3, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" }, + { + "mutability": "Mut" + } + ], + "spread_arg": null, + "var_debug_info": [ { "argument_index": 1, "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 0 }, "value": { "Place": { - "local": 2, + "local": 1, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "self", + "name": "other", "source_info": { - "scope": 2, - "span": 30 + "scope": 0 }, "value": { "Place": { - "local": 5, + "local": 2, "projection": [] } } } ] }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" + "name": "std::cmp::impls::::eq" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17h" }, { "details": null, @@ -1123,55 +970,65 @@ "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 52 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 52 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 52 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 52 + "mutability": "Not" }, { - "mutability": "Not", - "span": 52 + "mutability": "Not" } ], - "span": 52, "spread_arg": 2, "var_debug_info": [] }, - "id": 4, - "name": ">::call_once" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1185,74 +1042,48 @@ "terminator": { "kind": { "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], + "args": [], "destination": { "local": 0, "projection": [] }, "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized" - }, - "span": 52, - "user_ty": null + "Move": { + "local": 1, + "projection": [] } }, "target": 1, "unwind": "Continue" } - }, - "span": 52 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 52 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 52 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 52 + "mutability": "Not" }, { - "mutability": "Not", - "span": 52 + "mutability": "Not" } ], - "span": 52, "spread_arg": 2, "var_debug_info": [] }, - "id": 4, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1287,8 +1118,7 @@ ] } ] - }, - "span": 52 + } } ], "terminator": { @@ -1315,10 +1145,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 52, "user_ty": null } }, @@ -1327,8 +1155,7 @@ "Cleanup": 3 } } - }, - "span": 52 + } } }, { @@ -1343,15 +1170,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 52 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 52 + "kind": "Return" } }, { @@ -1366,41 +1191,33 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 52 + } } }, { "statements": [], "terminator": { - "kind": "Resume", - "span": 52 + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 52 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 52 + "mutability": "Not" }, { - "mutability": "Not", - "span": 52 + "mutability": "Not" }, { - "mutability": "Not", - "span": 52 + "mutability": "Not" } ], - "span": 52, "spread_arg": 2, "var_debug_info": [] }, - "id": 4, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1411,173 +1228,30 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 44 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref" - ] - } - } - } - ] - }, - "span": 44 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 45 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref" - ] - } - } - } - ] - }, - "span": 45 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ] - } - ] - }, - "span": 46 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 47 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 47 - } - ], + "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 48 - }, - { - "mutability": "Not", - "span": 49 - }, - { - "mutability": "Not", - "span": 50 - }, - { - "mutability": "Mut", - "span": 44 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 45 + "mutability": "Not" } ], - "span": 51, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 49 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 0, - "span": 50 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 3, - "name": "std::cmp::impls::::eq" + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17h" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1591,14 +1265,12 @@ { "kind": { "StorageLive": 3 - }, - "span": 54 + } }, { "kind": { "StorageLive": 4 - }, - "span": 55 + } }, { "kind": { @@ -1620,7 +1292,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -1628,14 +1300,12 @@ ] } ] - }, - "span": 55 + } }, { "kind": { "StorageLive": 5 - }, - "span": 56 + } }, { "kind": { @@ -1657,7 +1327,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -1665,8 +1335,7 @@ ] } ] - }, - "span": 56 + } } ], "terminator": { @@ -1693,18 +1362,15 @@ "func": { "Constant": { "const_": { - "id": 8, "kind": "ZeroSized" }, - "span": 54, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 54 + } } }, { @@ -1728,8 +1394,7 @@ "otherwise": 2 } } - }, - "span": 54 + } } }, { @@ -1737,20 +1402,17 @@ { "kind": { "StorageDead": 5 - }, - "span": 57 + } }, { "kind": { "StorageDead": 4 - }, - "span": 57 + } }, { "kind": { "StorageLive": 6 - }, - "span": 55 + } }, { "kind": { @@ -1772,7 +1434,7 @@ { "Field": [ 1, - 16 + 0 ] } ] @@ -1780,14 +1442,12 @@ ] } ] - }, - "span": 55 + } }, { "kind": { "StorageLive": 7 - }, - "span": 56 + } }, { "kind": { @@ -1809,7 +1469,7 @@ { "Field": [ 1, - 16 + 0 ] } ] @@ -1817,8 +1477,7 @@ ] } ] - }, - "span": 56 + } } ], "terminator": { @@ -1845,18 +1504,15 @@ "func": { "Constant": { "const_": { - "id": 8, "kind": "ZeroSized" }, - "span": 54, "user_ty": null } }, "target": 4, "unwind": "Continue" } - }, - "span": 54 + } } }, { @@ -1864,14 +1520,12 @@ { "kind": { "StorageDead": 5 - }, - "span": 57 + } }, { "kind": { "StorageDead": 4 - }, - "span": 57 + } }, { "kind": { @@ -1884,7 +1538,6 @@ "Use": { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 1, @@ -1898,14 +1551,12 @@ } } }, - "span": 54, "user_ty": null } } } ] - }, - "span": 54 + } } ], "terminator": { @@ -1913,8 +1564,7 @@ "Goto": { "target": 5 } - }, - "span": 54 + } } }, { @@ -1922,14 +1572,12 @@ { "kind": { "StorageDead": 7 - }, - "span": 57 + } }, { "kind": { "StorageDead": 6 - }, - "span": 57 + } } ], "terminator": { @@ -1937,8 +1585,7 @@ "Goto": { "target": 5 } - }, - "span": 54 + } } }, { @@ -1946,51 +1593,40 @@ { "kind": { "StorageDead": 3 - }, - "span": 57 + } } ], "terminator": { - "kind": "Return", - "span": 58 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 59 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 60 + "mutability": "Not" }, { - "mutability": "Not", - "span": 61 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 54 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 56 + "mutability": "Mut" } ], - "span": 62, "spread_arg": null, "var_debug_info": [ { @@ -1998,8 +1634,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 0, - "span": 60 + "scope": 0 }, "value": { "Place": { @@ -2013,8 +1648,7 @@ "composite": null, "name": "other", "source_info": { - "scope": 0, - "span": 61 + "scope": 0 }, "value": { "Place": { @@ -2025,7 +1659,6 @@ } ] }, - "id": 6, "name": "core::tuple::::eq" } }, @@ -2036,75 +1669,138 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 4, + "arg_count": 1, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "<() as std::process::Termination>::report" + } + }, + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 0, + "blocks": [ + { + "statements": [ { "kind": { "Assign": [ { - "local": 8, + "local": 1, "projection": [] }, { "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, + "Tuple", [ { - "Copy": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 42, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 4, + "bytes": [ + 99, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null } } ] ] } ] - }, - "span": 3 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 3, "projection": [] }, { @@ -2114,67 +1810,166 @@ }, "Shared", { - "local": 8, + "local": 1, "projection": [] } ] } ] - }, - "span": 2 + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 4, "projection": [] }, { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null + } + } } ] - }, - "span": 2 + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 2, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 3 + ] + ], + "otherwise": 2 + } + } } - ], + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 33, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 1 + ] + ] + } + } + } + }, + "user_ty": null } } ], @@ -2185,199 +1980,60 @@ "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 1 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 } - ], - "terminator": { - "kind": "Return", - "span": 4 } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 11 + "mutability": "Not" }, { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 2 - }, - { - "mutability": "Not", - "span": 3 + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, { "argument_index": null, "composite": null, - "name": "v", + "name": "tup", "source_info": { - "scope": 1, - "span": 6 + "scope": 1 }, "value": { "Place": { - "local": 0, + "local": 1, "projection": [] } } } ] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "main" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN8tuple_eq4main17h" } ], "types": [ @@ -2419,54 +2075,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2948,39 +2556,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/tuples-simple.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/tuples-simple.smir.json.expected similarity index 78% rename from tests/integration/programs/tuples-simple.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/tuples-simple.smir.json.expected index cb5dba84..0af340a2 100644 --- a/tests/integration/programs/tuples-simple.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/tuples-simple.smir.json.expected @@ -117,7 +117,6 @@ { "Constant": { "const_": { - "id": 9, "kind": { "Allocated": { "align": 4, @@ -134,14 +133,12 @@ } } }, - "span": 51, "user_ty": null } }, { "Constant": { "const_": { - "id": 10, "kind": { "Allocated": { "align": 4, @@ -158,7 +155,6 @@ } } }, - "span": 52, "user_ty": null } } @@ -166,8 +162,7 @@ ] } ] - }, - "span": 53 + } }, { "kind": { @@ -184,7 +179,7 @@ { "Field": [ 0, - 16 + 0 ] } ] @@ -192,8 +187,7 @@ } } ] - }, - "span": 54 + } }, { "kind": { @@ -210,7 +204,7 @@ { "Field": [ 1, - 16 + 0 ] } ] @@ -218,8 +212,7 @@ } } ] - }, - "span": 55 + } }, { "kind": { @@ -246,8 +239,7 @@ ] } ] - }, - "span": 50 + } } ], "terminator": { @@ -269,15 +261,13 @@ "otherwise": 1 } } - }, - "span": 50 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 56 + "kind": "Return" } }, { @@ -289,7 +279,6 @@ { "Constant": { "const_": { - "id": 12, "kind": { "Allocated": { "align": 8, @@ -323,7 +312,6 @@ } } }, - "span": 32, "user_ty": null } } @@ -335,48 +323,38 @@ "func": { "Constant": { "const_": { - "id": 11, "kind": "ZeroSized" }, - "span": 57, "user_ty": null } }, "target": null, "unwind": "Continue" } - }, - "span": 57 + } } } ], "locals": [ { - "mutability": "Mut", - "span": 58 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 59 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 50 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 54 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 55 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 57 + "mutability": "Mut" } ], - "span": 60, "spread_arg": null, "var_debug_info": [ { @@ -384,8 +362,7 @@ "composite": null, "name": "tup", "source_info": { - "scope": 1, - "span": 59 + "scope": 1 }, "value": { "Place": { @@ -396,7 +373,6 @@ } ] }, - "id": 6, "name": "main" } }, @@ -407,63 +383,134 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 44 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 44 - }, - { - "mutability": "Not", - "span": 44 - } - ], - "span": 44, - "spread_arg": null, - "var_debug_info": [] - }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, + "arg_count": 4, "blocks": [ { - "statements": [], + "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Aggregate": [ + { + "Closure": [ + 0, + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 7, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] + } + ] + } + } + ], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 1, + "local": 5, "projection": [] } }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] } } ], @@ -474,90 +521,69 @@ "func": { "Constant": { "const_": { - "id": 3, "kind": "ZeroSized" }, - "span": 31, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 33 + } } }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" + "statements": [ + { + "kind": { + "StorageDead": 5 } }, - "span": 35 - } - }, - { - "statements": [], + { + "kind": { + "StorageDead": 7 + } + } + ], "terminator": { - "kind": "Return", - "span": 36 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 37 + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" }, { - "mutability": "Not", - "span": 38 + "mutability": "Not" }, { - "mutability": "Not", - "span": 39 + "mutability": "Not" } ], - "span": 42, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "f", + "name": "main", "source_info": { - "scope": 0, - "span": 38 + "scope": 0 }, "value": { "Place": { @@ -567,136 +593,53 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "result", + "name": "argc", "source_info": { - "scope": 1, - "span": 40 + "scope": 0 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "dummy", + "name": "argv", "source_info": { - "scope": 2, - "span": 41 + "scope": 0 }, "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] } } } ] }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 8, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 46, - "user_ty": null - } - } - } - ] - }, - "span": 46 - } - ], - "terminator": { - "kind": "Return", - "span": 45 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 - }, - { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -710,20 +653,17 @@ { "kind": { "StorageLive": 2 - }, - "span": 16 + } }, { "kind": { "StorageLive": 3 - }, - "span": 15 + } }, { "kind": { "StorageLive": 4 - }, - "span": 17 + } }, { "kind": { @@ -741,7 +681,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -749,8 +689,7 @@ } } ] - }, - "span": 17 + } } ], "terminator": { @@ -771,18 +710,15 @@ "func": { "Constant": { "const_": { - "id": 1, "kind": "ZeroSized" }, - "span": 14, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 15 + } } }, { @@ -790,8 +726,7 @@ { "kind": { "StorageDead": 4 - }, - "span": 19 + } } ], "terminator": { @@ -812,18 +747,15 @@ "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, "target": 2, "unwind": "Continue" } - }, - "span": 16 + } } }, { @@ -831,14 +763,12 @@ { "kind": { "StorageDead": 3 - }, - "span": 21 + } }, { "kind": { "StorageLive": 5 - }, - "span": 22 + } }, { "kind": { @@ -847,42 +777,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -891,13 +785,13 @@ { "Field": [ 0, - 15 + 0 ] }, { "Field": [ 0, - 9 + 0 ] } ] @@ -905,8 +799,7 @@ } } ] - }, - "span": 23 + } }, { "kind": { @@ -920,73 +813,52 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 + } }, { "kind": { "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { "StorageDead": 2 - }, - "span": 27 + } } ], "terminator": { - "kind": "Return", - "span": 20 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 16 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 15 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 17 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 22 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 23 + "mutability": "Mut" } ], - "span": 3, "spread_arg": null, "var_debug_info": [ { @@ -994,8 +866,7 @@ "composite": null, "name": "main", "source_info": { - "scope": 0, - "span": 9 + "scope": 0 }, "value": { "Place": { @@ -1005,7 +876,7 @@ { "Field": [ 0, - 7 + 0 ] } ] @@ -1017,8 +888,7 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 29 + "scope": 1 }, "value": { "Place": { @@ -1026,25 +896,9 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] }, - "id": 1, "name": "std::rt::lang_start::<()>::{closure#0}" } }, @@ -1055,62 +909,150 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [], + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], "destination": { "local": 0, "projection": [] }, "func": { - "Move": { - "local": 1, - "projection": [] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + } + } + ] }, - "id": 3, - "name": ">::call_once" + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1147,52 +1089,98 @@ "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, "target": 1, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 43 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" }, { - "mutability": "Not", - "span": 43 + "mutability": "Not" } ], - "span": 43, "spread_arg": 2, "var_debug_info": [] }, - "id": 3, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1226,8 +1214,7 @@ ] } ] - }, - "span": 43 + } } ], "terminator": { @@ -1254,10 +1241,8 @@ "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, @@ -1266,8 +1251,7 @@ "Cleanup": 3 } } - }, - "span": 43 + } } }, { @@ -1282,15 +1266,13 @@ "target": 2, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { @@ -1305,222 +1287,77 @@ "target": 4, "unwind": "Terminate" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized" - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 } }, + { + "statements": [], + "terminator": { + "kind": "Resume" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, { "kind": { "Assign": [ @@ -1530,168 +1367,49 @@ }, { "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } } - ] + }, + "user_ty": null } } } ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 + } } ], "terminator": { - "kind": "Return", - "span": 4 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 8 - }, - { - "mutability": "Not", - "span": 9 - }, - { - "mutability": "Not", - "span": 10 - }, - { - "mutability": "Not", - "span": 11 - }, - { - "mutability": "Not", - "span": 12 - }, - { - "mutability": "Mut", - "span": 1 - }, - { - "mutability": "Mut", - "span": 2 - }, - { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" } ], - "span": 13, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 6 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] + "var_debug_info": [] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], "types": [ @@ -1733,54 +1451,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -2196,39 +1866,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { diff --git a/tests/integration/programs/weirdRefs.smir.json.expected b/tests/integration/expected/nightly-2025-03-01/weirdRefs.smir.json.expected similarity index 83% rename from tests/integration/programs/weirdRefs.smir.json.expected rename to tests/integration/expected/nightly-2025-03-01/weirdRefs.smir.json.expected index fe11aec6..db861743 100644 --- a/tests/integration/programs/weirdRefs.smir.json.expected +++ b/tests/integration/expected/nightly-2025-03-01/weirdRefs.smir.json.expected @@ -271,111 +271,66 @@ "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 0, + "arg_count": 4, "blocks": [ { "statements": [ + { + "kind": { + "StorageLive": 5 + } + }, + { + "kind": { + "StorageLive": 7 + } + }, { "kind": { "Assign": [ { - "local": 1, + "local": 7, "projection": [] }, { "Aggregate": [ { - "Adt": [ - 7, + "Closure": [ 0, - [], - null, - null + [ + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + }, + { + "Type": 0 + } + ] ] }, [ { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 32 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 51, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 52, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 32, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 53, - "user_ty": null + "Copy": { + "local": 1, + "projection": [] } } ] ] } ] - }, - "span": 54 + } }, { "kind": { "Assign": [ { - "local": 2, + "local": 6, "projection": [] }, { @@ -383,237 +338,226 @@ { "kind": "ReErased" }, + "Shared", { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 2 - ] - } - ] + "local": 7, + "projection": [] } ] } ] - }, - "span": 55 - }, - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [ - "Deref" - ] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 42 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 56, - "user_ty": null - } - } - } - ] - }, - "span": 57 + } }, { "kind": { "Assign": [ { - "local": 3, + "local": 5, "projection": [] }, { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 2 - ] - } - ] - } - } + "Cast": [ + { + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 0 + ] } ] - }, - "span": 58 + } } ], "terminator": { "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] + "Call": { + "args": [ + { + "Move": { + "local": 5, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } } + ], + "destination": { + "local": 0, + "projection": [] }, - "targets": { - "branches": [ - [ - 42, - 1 - ] - ], - "otherwise": 2 - } + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" } - }, - "span": 50 + } } }, { "statements": [ { "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 2 - ] - } - ] - } - ] - } - ] - }, - "span": 60 + "StorageDead": 5 + } }, { "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 5, - "projection": [] - } - ] - } - ] - }, - "span": 61 + "StorageDead": 7 + } + } + ], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "main", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "argc", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 3, + "composite": null, + "name": "argv", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } + } + } + ] + }, + "name": "std::rt::lang_start::<()>" + } + }, + "symbol_name": "_ZN3std2rt10lang_start17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ + { + "statements": [ + { + "kind": { + "StorageLive": 2 + } }, { "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "CopyForDeref": { - "local": 6, - "projection": [ - "Deref" - ] - } - } - ] - }, - "span": 62 + "StorageLive": 3 + } }, { "kind": { - "Assign": [ - { - "local": 20, - "projection": [ - "Deref" - ] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 43 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 63, - "user_ty": null - } - } - } - ] - }, - "span": 62 + "StorageLive": 4 + } }, { "kind": { "Assign": [ { - "local": 7, + "local": 4, "projection": [] }, { @@ -621,10 +565,11 @@ "Copy": { "local": 1, "projection": [ + "Deref", { "Field": [ 0, - 2 + 0 ] } ] @@ -632,1329 +577,1037 @@ } } ] - }, - "span": 64 + } } ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 7, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 43, - 3 - ] - ], - "otherwise": 4 - } - } - }, - "span": 59 - } - }, - { - "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 33, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null + "Move": { + "local": 4, + "projection": [] } } ], "destination": { - "local": 4, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 65, "user_ty": null } }, - "target": null, + "target": 1, "unwind": "Continue" } - }, - "span": 65 + } } }, { "statements": [ { "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] + "StorageDead": 4 + } + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } } - ] - }, - "span": 67 + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": 2, + "unwind": "Continue" + } + } + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 3 + } + }, + { + "kind": { + "StorageLive": 5 + } }, { "kind": { "Assign": [ { - "local": 9, + "local": 5, "projection": [] }, { - "Aggregate": [ - { - "Adt": [ - 8, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 10, - "projection": [] + "Use": { + "Copy": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 0 + ] + }, + { + "Field": [ + 0, + 0 + ] } - } - ] - ] + ] + } + } } ] - }, - "span": 68 + } }, { "kind": { "Assign": [ { - "local": 11, + "local": 0, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, + "Cast": [ + "IntToInt", { - "Mut": { - "kind": "Default" + "Move": { + "local": 5, + "projection": [] } }, - { - "local": 9, - "projection": [] - } + 0 ] } ] - }, - "span": 69 + } }, { "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "CopyForDeref": { - "local": 11, - "projection": [ - "Deref", - { - "Field": [ - 0, - 29 - ] - } - ] - } - } - ] - }, - "span": 70 + "StorageDead": 5 + } }, { "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 21, - "projection": [ - "Deref", - { - "Field": [ - 0, - 2 - ] - } - ] - } - } - } - ] - }, - "span": 70 + "StorageDead": 2 + } } ], "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 12, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 43, - 5 - ] - ], - "otherwise": 6 + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": null, + "composite": null, + "name": "main", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] } - } - }, - "span": 66 + ] + } } }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + }, + "name": "std::rt::lang_start::<()>::{closure#0}" + } + }, + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, { "Constant": { "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 33, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - } + "kind": "ZeroSized" }, - "span": 32, "user_ty": null } } ], "destination": { - "local": 8, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 71, "user_ty": null } }, - "target": null, + "target": 1, "unwind": "Continue" } - }, - "span": 71 + } } }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "CopyForDeref": { - "local": 11, - "projection": [ - "Deref", - { - "Field": [ - 0, - 29 - ] - } - ] + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } } - ] - }, - "span": 73 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [ - "Deref", - { - "Field": [ - 1, - 25 - ] - } - ] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 1 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - } - }, - "span": 74, - "user_ty": null - } - } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } - ] + }, + "target": 2, + "unwind": "Unreachable" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "f", + "source_info": { + "scope": 0 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "result", + "source_info": { + "scope": 1 + }, + "value": { + "Place": { + "local": 0, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "dummy", + "source_info": { + "scope": 2 + }, + "value": { + "Const": { + "const_": { + "kind": "ZeroSized" }, - "span": 73 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, + "user_ty": null + } + } + } + ] + }, + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + } + }, + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ { - "CopyForDeref": { - "local": 11, + "Move": { + "local": 1, "projection": [ - "Deref", - { - "Field": [ - 0, - 29 - ] - } + "Deref" ] } - } - ] - }, - "span": 75 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 23, - "projection": [ - "Deref", - { - "Field": [ - 2, - 26 - ] - } - ] - } - ] + "Move": { + "local": 2, + "projection": [] + } } - ] - }, - "span": 75 - }, - { - "kind": { - "Assign": [ - { - "local": 24, - "projection": [] - }, - { - "CopyForDeref": { - "local": 11, - "projection": [ - "Deref", - { - "Field": [ - 0, - 29 - ] - } - ] - } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null } - ] - }, - "span": 76 - }, - { - "kind": { - "Assign": [ - { - "local": 15, + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, "projection": [] - }, - { - "Use": { - "Copy": { - "local": 24, - "projection": [ - "Deref", - { - "Field": [ - 0, - 2 - ] - } - ] - } - } } - ] - }, - "span": 76 - }, + }, + "target": 1, + "unwind": "Continue" + } + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 2, + "blocks": [ + { + "statements": [ { "kind": { "Assign": [ { - "local": 14, - "projection": [ - "Deref" - ] + "local": 3, + "projection": [] }, { - "Cast": [ - "IntToInt", + "Ref": [ { - "Move": { - "local": 15, - "projection": [] + "kind": "ReErased" + }, + { + "Mut": { + "kind": "Default" } }, - 26 - ] - } - ] - }, - "span": 77 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Use": { - "Copy": { + { "local": 1, - "projection": [ - { - "Field": [ - 1, - 25 - ] - } - ] + "projection": [] } - } + ] } ] - }, - "span": 72 + } } ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 16, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 8 - ] - ], - "otherwise": 7 - } - } - }, - "span": 72 - } - }, - { - "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 26, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] } } ], "destination": { - "local": 13, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 14, "kind": "ZeroSized" }, - "span": 78, "user_ty": null } }, - "target": null, - "unwind": "Continue" - } - }, - "span": 78 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 2, - 26 - ] - } - ] - } - } - } - ] - }, - "span": 80 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 18, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 43, - 9 - ] - ], - "otherwise": 10 + "target": 1, + "unwind": { + "Cleanup": 3 } } - }, - "span": 79 + } } }, { "statements": [], "terminator": { "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 19, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 27, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 17, + "Drop": { + "place": { + "local": 1, "projection": [] }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized" - }, - "span": 81, - "user_ty": null - } - }, - "target": null, + "target": 2, "unwind": "Continue" } - }, - "span": 81 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 82 + "kind": "Return" } }, { "statements": [], "terminator": { "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 20, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 33, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 4 - ] - ] - } - } - } - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 19, + "Drop": { + "place": { + "local": 1, "projection": [] }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized" - }, - "span": 83, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" + "target": 4, + "unwind": "Terminate" } - }, - "span": 83 + } + } + }, + { + "statements": [], + "terminator": { + "kind": "Resume" } } ], "locals": [ { - "mutability": "Mut", - "span": 84 - }, - { - "mutability": "Mut", - "span": 85 - }, - { - "mutability": "Not", - "span": 86 - }, - { - "mutability": "Mut", - "span": 58 - }, - { - "mutability": "Mut", - "span": 65 - }, - { - "mutability": "Mut", - "span": 87 - }, - { - "mutability": "Not", - "span": 88 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 64 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 71 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 89 - }, - { - "mutability": "Mut", - "span": 67 - }, - { - "mutability": "Not", - "span": 90 - }, - { - "mutability": "Not", - "span": 91 - }, - { - "mutability": "Mut", - "span": 78 - }, - { - "mutability": "Not", - "span": 92 - }, - { - "mutability": "Mut", - "span": 76 - }, - { - "mutability": "Mut", - "span": 72 - }, - { - "mutability": "Mut", - "span": 81 - }, - { - "mutability": "Mut", - "span": 80 - }, - { - "mutability": "Mut", - "span": 83 - }, - { - "mutability": "Mut", - "span": 88 - }, - { - "mutability": "Mut", - "span": 90 - }, + "mutability": "Not" + } + ], + "spread_arg": 2, + "var_debug_info": [] + }, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "mutability": "Mut", - "span": 90 - }, + "statements": [], + "terminator": { + "kind": "Return" + } + } + ], + "locals": [ { - "mutability": "Mut", - "span": 90 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 90 + "mutability": "Not" } ], - "span": 93, "spread_arg": null, - "var_debug_info": [ + "var_debug_info": [] + }, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": { + "arg_count": 1, + "blocks": [ { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 1, - "span": 85 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "r1", - "source_info": { - "scope": 2, - "span": 86 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "r1", - "source_info": { - "scope": 3, - "span": 87 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "r2", - "source_info": { - "scope": 4, - "span": 88 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "e", - "source_info": { - "scope": 5, - "span": 89 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ee", - "source_info": { - "scope": 6, - "span": 90 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "vv", - "source_info": { - "scope": 7, - "span": 91 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "r3", - "source_info": { - "scope": 8, - "span": 92 - }, - "value": { - "Place": { - "local": 14, - "projection": [] + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } } - } - } - ] - }, - "id": 6, - "name": "main" - } - }, - "symbol_name": "_ZN9weirdRefs4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ - { - "statements": [], + ], "terminator": { - "kind": "Return", - "span": 44 + "kind": "Return" } } ], "locals": [ { - "mutability": "Mut", - "span": 44 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 44 + "mutability": "Not" } ], - "span": 44, "spread_arg": null, "var_debug_info": [] }, - "id": 4, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, "mono_item_kind": { "MonoItemFn": { "body": { - "arg_count": 1, + "arg_count": 0, "blocks": [ { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + "statements": [ + { + "kind": { + "Assign": [ { - "Move": { - "local": 1, - "projection": [] - } + "local": 1, + "projection": [] }, { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" + "Aggregate": [ + { + "Adt": [ + 0, + 0, + [], + null, + null + ] }, - "span": 32, - "user_ty": null - } + [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 32 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 32, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + ] + ] } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized" - }, - "span": 31, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" + ] } }, - "span": 33 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ + { + "kind": { + "Assign": [ { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized" + "local": 2, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" }, - "span": 32, - "user_ty": null - } + { + "Mut": { + "kind": "Default" + } + }, + { + "local": 1, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + ] } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized" - }, - "span": 34, - "user_ty": null + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 2, + "projection": [ + "Deref" + ] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 42 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } } - }, - "target": 2, - "unwind": "Unreachable" + ] } }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 37 - }, - { - "mutability": "Not", - "span": 38 - }, - { - "mutability": "Not", - "span": 39 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] + { + "kind": { + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 3, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 42, + 1 + ] + ], + "otherwise": 2 + } + } } } }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ { "statements": [ { "kind": { "Assign": [ { - "local": 0, + "local": 5, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + { + "Mut": { + "kind": "Default" + } + }, + { + "local": 1, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 6, "projection": [] }, + { + "Ref": [ + { + "kind": "ReErased" + }, + { + "Mut": { + "kind": "Default" + } + }, + { + "local": 5, + "projection": [] + } + ] + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 20, + "projection": [] + }, + { + "CopyForDeref": { + "local": 6, + "projection": [ + "Deref" + ] + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 20, + "projection": [ + "Deref" + ] + }, { "Use": { "Constant": { "const_": { - "id": 8, "kind": { "Allocated": { "align": 1, "bytes": [ - 0 + 43 ], "mutability": "Mut", "provenance": { @@ -1963,106 +1616,257 @@ } } }, - "span": 46, "user_ty": null } } } ] - }, - "span": 46 + } + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + } + ] + } } ], "terminator": { - "kind": "Return", - "span": 45 + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 7, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 43, + 3 + ] + ], + "otherwise": 4 + } + } + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 47 }, { - "mutability": "Not", - "span": 48 - } - ], - "span": 49, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized" - }, - "span": 32, - "user_ty": null + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 33, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 0 + ] + ] + } + } + } + }, + "user_ty": null + } + } + ], + "destination": { + "local": 4, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "kind": "ZeroSized" + }, + "user_ty": null + } + }, + "target": null, + "unwind": "Continue" + } } } - } - ] - }, - "id": 5, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 1, - "blocks": [ + }, { "statements": [ { "kind": { - "StorageLive": 2 - }, - "span": 16 + "Assign": [ + { + "local": 10, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + { + "Mut": { + "kind": "Default" + } + }, + { + "local": 1, + "projection": [] + } + ] + } + ] + } }, { "kind": { - "StorageLive": 3 - }, - "span": 15 + "Assign": [ + { + "local": 9, + "projection": [] + }, + { + "Aggregate": [ + { + "Adt": [ + 0, + 0, + [ + { + "Lifetime": { + "kind": "ReErased" + } + } + ], + null, + null + ] + }, + [ + { + "Copy": { + "local": 10, + "projection": [] + } + } + ] + ] + } + ] + } }, { "kind": { - "StorageLive": 4 - }, - "span": 17 + "Assign": [ + { + "local": 11, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + { + "Mut": { + "kind": "Default" + } + }, + { + "local": 9, + "projection": [] + } + ] + } + ] + } }, { "kind": { "Assign": [ { - "local": 4, + "local": 21, + "projection": [] + }, + { + "CopyForDeref": { + "local": 11, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 12, "projection": [] }, { "Use": { "Copy": { - "local": 1, + "local": 21, "projection": [ "Deref", { "Field": [ 0, - 7 + 0 ] } ] @@ -2070,102 +1874,189 @@ } } ] - }, - "span": 17 + } } ], "terminator": { "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 1, - "kind": "ZeroSized" - }, - "span": 14, - "user_ty": null + "SwitchInt": { + "discr": { + "Copy": { + "local": 12, + "projection": [] } }, - "target": 1, - "unwind": "Continue" + "targets": { + "branches": [ + [ + 43, + 5 + ] + ], + "otherwise": 6 + } } - }, - "span": 15 + } } }, { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 19 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 3, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 33, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 1 + ] + ] + } + } + } + }, + "user_ty": null } } ], "destination": { - "local": 2, + "local": 8, "projection": [] }, "func": { "Constant": { "const_": { - "id": 2, "kind": "ZeroSized" }, - "span": 18, "user_ty": null } }, - "target": 2, + "target": null, "unwind": "Continue" } - }, - "span": 16 + } } }, { "statements": [ { "kind": { - "StorageDead": 3 - }, - "span": 21 + "Assign": [ + { + "local": 22, + "projection": [] + }, + { + "CopyForDeref": { + "local": 11, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + ] + } }, { "kind": { - "StorageLive": 5 - }, - "span": 22 + "Assign": [ + { + "local": 22, + "projection": [ + "Deref", + { + "Field": [ + 1, + 0 + ] + } + ] + }, + { + "Use": { + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 1 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + } + }, + "user_ty": null + } + } + } + ] + } }, { "kind": { "Assign": [ { - "local": 5, + "local": 23, + "projection": [] + }, + { + "CopyForDeref": { + "local": 11, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + ] + } + }, + { + "kind": { + "Assign": [ + { + "local": 14, "projection": [] }, { @@ -2173,14 +2064,19 @@ { "kind": "ReErased" }, - "Shared", { - "local": 2, + "Mut": { + "kind": "Default" + } + }, + { + "local": 23, "projection": [ + "Deref", { "Field": [ - 0, - 15 + 2, + 0 ] } ] @@ -2188,37 +2084,49 @@ ] } ] - }, - "span": 22 + } }, { "kind": { - "StorageLive": 6 - }, - "span": 23 + "Assign": [ + { + "local": 24, + "projection": [] + }, + { + "CopyForDeref": { + "local": 11, + "projection": [ + "Deref", + { + "Field": [ + 0, + 0 + ] + } + ] + } + } + ] + } }, { "kind": { "Assign": [ { - "local": 6, + "local": 15, "projection": [] }, { "Use": { "Copy": { - "local": 2, + "local": 24, "projection": [ + "Deref", { "Field": [ 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 + 0 ] } ] @@ -2226,220 +2134,80 @@ } } ] - }, - "span": 23 + } }, { "kind": { "Assign": [ { - "local": 0, - "projection": [] + "local": 14, + "projection": [ + "Deref" + ] }, { "Cast": [ "IntToInt", { "Move": { - "local": 6, + "local": 15, "projection": [] } }, - 16 + 0 ] } ] - }, - "span": 24 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 26 + } }, { "kind": { - "StorageDead": 2 - }, - "span": 27 + "Assign": [ + { + "local": 16, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + { + "Field": [ + 1, + 0 + ] + } + ] + } + } + } + ] + } } ], - "terminator": { - "kind": "Return", - "span": 20 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 28 - }, - { - "mutability": "Mut", - "span": 3 - }, - { - "mutability": "Mut", - "span": 16 - }, - { - "mutability": "Mut", - "span": 15 - }, - { - "mutability": "Mut", - "span": 17 - }, - { - "mutability": "Mut", - "span": 22 - }, - { - "mutability": "Mut", - "span": 23 - } - ], - "span": 3, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 9 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] - }, - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" - } - }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ - { - "statements": [], "terminator": { "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { + "SwitchInt": { + "discr": { "Move": { - "local": 1, + "local": 16, "projection": [] } }, - "target": 1, - "unwind": "Continue" + "targets": { + "branches": [ + [ + 0, + 8 + ] + ], + "otherwise": 7 + } } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ { "statements": [], "terminator": { @@ -2447,497 +2215,333 @@ "Call": { "args": [ { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 26, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 2 + ] + ] + } + } + } + }, + "user_ty": null } } ], "destination": { - "local": 0, + "local": 13, "projection": [] }, "func": { "Constant": { "const_": { - "id": 6, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 + } } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 2, - "blocks": [ { "statements": [ { "kind": { "Assign": [ { - "local": 3, + "local": 18, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { + "Use": { + "Copy": { "local": 1, - "projection": [] + "projection": [ + { + "Field": [ + 2, + 0 + ] + } + ] } - ] + } } ] - }, - "span": 43 + } } ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 18, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 43, + 9 + ] + ], + "otherwise": 10 + } + } + } + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 27, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 3 + ] + ] + } + } + } + }, + "user_ty": null } } ], "destination": { - "local": 0, + "local": 17, "projection": [] }, "func": { "Constant": { "const_": { - "id": 7, "kind": "ZeroSized" }, - "span": 43, "user_ty": null } }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, + "target": null, "unwind": "Continue" } - }, - "span": 43 + } } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 43 + "kind": "Return" } }, { "statements": [], "terminator": { "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - }, - { - "mutability": "Not", - "span": 43 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - }, - "id": 3, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, + "Call": { + "args": [ { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Copy": { - "local": 7, - "projection": [] + "Constant": { + "const_": { + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 33, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 4 + ] + ] + } + } } }, - 5 - ] - } - ] - }, - "span": 2 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] + "user_ty": null } } ], "destination": { - "local": 5, + "local": 19, "projection": [] }, "func": { "Constant": { "const_": { - "id": 0, "kind": "ZeroSized" }, - "span": 0, "user_ty": null } }, - "target": 1, + "target": null, "unwind": "Continue" } - }, - "span": 1 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 5 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 6 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 7 } - ], - "terminator": { - "kind": "Return", - "span": 4 } } ], "locals": [ { - "mutability": "Mut", - "span": 8 + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Not" }, { - "mutability": "Not", - "span": 9 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 10 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 11 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 12 + "mutability": "Mut" }, { - "mutability": "Mut", - "span": 1 + "mutability": "Not" }, { - "mutability": "Mut", - "span": 2 + "mutability": "Not" }, { - "mutability": "Not", - "span": 2 + "mutability": "Mut" }, { - "mutability": "Not", - "span": 3 + "mutability": "Not" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" + }, + { + "mutability": "Mut" } ], - "span": 13, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "main", + "name": "a", "source_info": { - "scope": 0, - "span": 9 + "scope": 1 }, "value": { "Place": { @@ -2947,12 +2551,11 @@ } }, { - "argument_index": 2, + "argument_index": null, "composite": null, - "name": "argc", + "name": "r1", "source_info": { - "scope": 0, - "span": 10 + "scope": 2 }, "value": { "Place": { @@ -2962,31 +2565,29 @@ } }, { - "argument_index": 3, + "argument_index": null, "composite": null, - "name": "argv", + "name": "r1", "source_info": { - "scope": 0, - "span": 11 + "scope": 3 }, "value": { "Place": { - "local": 3, + "local": 5, "projection": [] } } }, { - "argument_index": 4, + "argument_index": null, "composite": null, - "name": "sigpipe", + "name": "r2", "source_info": { - "scope": 0, - "span": 12 + "scope": 4 }, "value": { "Place": { - "local": 4, + "local": 6, "projection": [] } } @@ -2994,25 +2595,65 @@ { "argument_index": null, "composite": null, - "name": "v", + "name": "e", "source_info": { - "scope": 1, - "span": 6 + "scope": 5 }, "value": { "Place": { - "local": 0, + "local": 9, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "ee", + "source_info": { + "scope": 6 + }, + "value": { + "Place": { + "local": 11, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "vv", + "source_info": { + "scope": 7 + }, + "value": { + "Place": { + "local": 12, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "r3", + "source_info": { + "scope": 8 + }, + "value": { + "Place": { + "local": 14, "projection": [] } } } ] }, - "id": 0, - "name": "std::rt::lang_start::<()>" + "name": "main" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN9weirdRefs4main17h" } ], "types": [ @@ -3068,54 +2709,6 @@ } } ], - [ - { - "EnumType": { - "discriminants": [ - 0, - 1 - ], - "fields": "elided", - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 0 - }, - "value": { - "Int": { - "length": "I64", - "signed": true - } - } - } - } - }, - "abi_align": 8, - "fields": { - "Arbitrary": { - "offsets": [ - { - "num_bits": 0 - } - ] - } - }, - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "name": "std::result::Result" - } - } - ], [ { "StructType": { @@ -3714,39 +3307,6 @@ } } ], - [ - { - "RefType": { - "layout": { - "abi": { - "Scalar": { - "Initialized": { - "valid_range": { - "end": 18446744073709551615, - "start": 1 - }, - "value": { - "Pointer": 0 - } - } - } - }, - "abi_align": 8, - "fields": "Primitive", - "size": { - "num_bits": 64 - }, - "variants": { - "Single": { - "index": 0 - } - } - }, - "mutability": "Not", - "pointee_type": "elided" - } - } - ], [ { "RefType": { From eaadea6b4fe12569287dc135b55d4c0c732d9f5a Mon Sep 17 00:00:00 2001 From: cds-amal Date: Tue, 10 Mar 2026 18:23:12 -0400 Subject: [PATCH 15/15] feat(ui-tests): add awk directive parser and per-nightly test infrastructure Add an awk-based directive parser (parse_test_directives.awk) that extracts test metadata (editions, compile-flags, skip conditions) from rustc UI test source files. This replaces shell-level heuristics with a single-pass parser that handles: - //@ directives (edition, compile-flags, needs-*, ignore-*) - Architecture and subprocess filtering - Range-based nightly gating via override TSV files Rewrite run_ui_tests.sh and remake_ui_tests.sh to use the shared parser. Add diff_test_lists.sh for generating per-nightly effective test lists with caching. Include unit tests and boundary notes. Per-nightly override TSV files allow fine-grained control over which tests pass/fail on each nightly without modifying the base lists. --- tests/ui/README.md | 96 +- tests/ui/base-nightly.txt | 1 + tests/ui/diff_test_lists.sh | 471 +++ tests/ui/failing.tsv | 1 - tests/ui/overrides/nightly-2025-03-01.tsv | 14 + .../overrides/nightly-2025-03-01/failing.tsv | 1 + .../overrides/nightly-2025-03-01/passing.tsv | 2821 +++++++++++++++++ tests/ui/overrides/nightly-2025-07-05.tsv | 23 + .../overrides/nightly-2025-07-05/failing.tsv | 1 + .../overrides/nightly-2025-07-05/passing.tsv | 2738 ++++++++++++++++ tests/ui/overrides/nightly-2025-07-08.tsv | 23 + .../overrides/nightly-2025-07-08/failing.tsv | 1 + .../overrides/nightly-2025-07-08/passing.tsv | 2725 ++++++++++++++++ tests/ui/overrides/nightly-2025-07-11.tsv | 26 + .../overrides/nightly-2025-07-11/failing.tsv | 1 + .../overrides/nightly-2025-07-11/passing.tsv | 2723 ++++++++++++++++ tests/ui/overrides/nightly-2025-07-15.tsv | 26 + .../overrides/nightly-2025-07-15/failing.tsv | 1 + .../overrides/nightly-2025-07-15/passing.tsv | 2704 ++++++++++++++++ tests/ui/overrides/nightly-2025-07-26.tsv | 26 + .../overrides/nightly-2025-07-26/failing.tsv | 1 + .../overrides/nightly-2025-07-26/passing.tsv | 2704 ++++++++++++++++ tests/ui/overrides/nightly-2025-09-19.tsv | 26 + .../overrides/nightly-2025-09-19/failing.tsv | 1 + .../overrides/nightly-2025-09-19/passing.tsv | 2699 ++++++++++++++++ tests/ui/overrides/nightly-2025-10-03.tsv | 26 + .../overrides/nightly-2025-10-03/failing.tsv | 1 + .../overrides/nightly-2025-10-03/passing.tsv | 2699 ++++++++++++++++ tests/ui/overrides/nightly-2025-10-12.tsv | 26 + .../overrides/nightly-2025-10-12/failing.tsv | 1 + .../overrides/nightly-2025-10-12/passing.tsv | 2699 ++++++++++++++++ tests/ui/overrides/nightly-2025-11-19.tsv | 29 + .../overrides/nightly-2025-11-19/failing.tsv | 1 + .../overrides/nightly-2025-11-19/passing.tsv | 2753 ++++++++++++++++ tests/ui/overrides/nightly-2025-12-06.tsv | 29 + .../overrides/nightly-2025-12-06/failing.tsv | 1 + .../overrides/nightly-2025-12-06/passing.tsv | 2752 ++++++++++++++++ tests/ui/overrides/nightly-2025-12-14.tsv | 29 + .../overrides/nightly-2025-12-14/failing.tsv | 1 + .../overrides/nightly-2025-12-14/passing.tsv | 2749 ++++++++++++++++ tests/ui/overrides/nightly-2025-12-23.tsv | 29 + .../overrides/nightly-2025-12-23/failing.tsv | 1 + .../overrides/nightly-2025-12-23/passing.tsv | 2742 ++++++++++++++++ tests/ui/overrides/nightly-2026-01-15.tsv | 29 + .../overrides/nightly-2026-01-15/failing.tsv | 1 + .../overrides/nightly-2026-01-15/passing.tsv | 2649 ++++++++++++++++ tests/ui/parse_test_directives.awk | 145 + tests/ui/passing.tsv | 129 +- tests/ui/remake_ui_tests.sh | 91 +- tests/ui/run_ui_tests.sh | 166 +- tests/ui/test_directives_test.sh | 420 +++ 51 files changed, 39861 insertions(+), 191 deletions(-) create mode 100644 tests/ui/base-nightly.txt create mode 100755 tests/ui/diff_test_lists.sh create mode 100644 tests/ui/overrides/nightly-2025-03-01.tsv create mode 100644 tests/ui/overrides/nightly-2025-03-01/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-03-01/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-05.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-05/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-05/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-08.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-08/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-08/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-11.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-11/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-11/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-15.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-15/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-15/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-26.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-26/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-07-26/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-09-19.tsv create mode 100644 tests/ui/overrides/nightly-2025-09-19/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-09-19/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-10-03.tsv create mode 100644 tests/ui/overrides/nightly-2025-10-03/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-10-03/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-10-12.tsv create mode 100644 tests/ui/overrides/nightly-2025-10-12/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-10-12/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-11-19.tsv create mode 100644 tests/ui/overrides/nightly-2025-11-19/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-11-19/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-12-06.tsv create mode 100644 tests/ui/overrides/nightly-2025-12-06/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-12-06/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-12-14.tsv create mode 100644 tests/ui/overrides/nightly-2025-12-14/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-12-14/passing.tsv create mode 100644 tests/ui/overrides/nightly-2025-12-23.tsv create mode 100644 tests/ui/overrides/nightly-2025-12-23/failing.tsv create mode 100644 tests/ui/overrides/nightly-2025-12-23/passing.tsv create mode 100644 tests/ui/overrides/nightly-2026-01-15.tsv create mode 100644 tests/ui/overrides/nightly-2026-01-15/failing.tsv create mode 100644 tests/ui/overrides/nightly-2026-01-15/passing.tsv create mode 100644 tests/ui/parse_test_directives.awk create mode 100644 tests/ui/test_directives_test.sh diff --git a/tests/ui/README.md b/tests/ui/README.md index 53ddfb84..91aa3947 100644 --- a/tests/ui/README.md +++ b/tests/ui/README.md @@ -1,28 +1,92 @@ -# Rust UI Tests +# UI Tests -These tests are taken from The [Rust compiler UI test suite](https://github.com/rust-lang/rust/tests/ui/). -Some tests here are not appropriate for us to test with yet, so we need to filter valid tests for -the current state of Stable MIR JSON are generated. To generate and run the tests a checkout of the -rust compiler is required. +Regression tests drawn from the [Rust compiler UI test suite](https://github.com/rust-lang/rust/tree/master/tests/ui). We run a curated subset of rustc's UI tests through stable-mir-json and check that they process successfully (exit 0). A checkout of the rust compiler source is required. -## Usage -To generate the tests +## Quick start ```bash -cd tests/ui/ -RUST_TOP=`` ./collect_test_sources.sh > ui_sources.txt +# Run against the pinned nightly (uses base passing.tsv): +RUST_DIR_ROOT=/path/to/rust make test-ui + +# Run against a different nightly (uses effective list if available): +RUSTUP_TOOLCHAIN=nightly-2025-03-01 RUST_DIR_ROOT=/path/to/rust make test-ui +``` + +## Directory layout + +``` +tests/ui/ +├── base-nightly.txt # which nightly the base lists were generated against +├── passing.tsv # base passing list (one test path per line) +├── failing.tsv # base failing list (pathexit_code) +│ +├── overrides/ +│ ├── nightly-2025-03-01.tsv # manual overrides for behavior changes +│ └── nightly-2025-03-01/ +│ ├── passing.tsv # effective passing list (generated) +│ └── failing.tsv # effective failing list (generated) +│ +├── run_ui_tests.sh # test runner +├── diff_test_lists.sh # generates effective lists from base+delta +├── collect_test_sources.sh # discovers candidate tests from rustc source +├── remake_ui_tests.sh # regenerates base lists from scratch +├── ensure_rustc_commit.sh # checks out the right rustc commit +├── rustc_mir.sh # helper: runs rustc to emit MIR (used by collect) +├── has_match.sh # helper: grep wrapper (used by collect) +└── ui_sources.txt # intermediate output from collect_test_sources.sh ``` -To remake the ui tests and filter into the passing and failing directories (optionally storing the output) +## How it works + +The base lists (`passing.tsv`, `failing.tsv`) are the ground truth, generated against the nightly recorded in `base-nightly.txt`. They don't change when you target a different nightly. + +For other nightlies, upstream test files may have been deleted, renamed, or modified. Rather than maintaining full copies of the lists per nightly (they're 99.5% identical), `diff_test_lists.sh` computes the delta: + +1. **Deletions**: files removed upstream are dropped from the list +2. **Renames**: files that moved get their paths updated +3. **Manual overrides**: behavior changes that git can't detect (e.g., a test was rewritten to use syntax our driver doesn't handle) are recorded in `overrides/.tsv` + +`run_ui_tests.sh` detects the active nightly via `rustup show active-toolchain` and automatically uses the effective list from `overrides//` if it exists, falling back to the base list otherwise. + +## Adding support for a new nightly ```bash -cd tests/ui/ -./remake_ui_tests.sh [y|n] +# 1. See what changed: +./tests/ui/diff_test_lists.sh /path/to/rust nightly-YYYY-MM-DD + +# 2. If any tests have behavior changes, create a manual override file: +# tests/ui/overrides/nightly-YYYY-MM-DD.tsv +# Format: actionpath +# Actions: skip, -, +, fail (with exit code), pass + +# 3. Generate the effective lists: +./tests/ui/diff_test_lists.sh --emit /path/to/rust nightly-YYYY-MM-DD + +# 4. Run the tests: +RUSTUP_TOOLCHAIN=nightly-YYYY-MM-DD RUST_DIR_ROOT=/path/to/rust make test-ui + +# 5. Commit the override file and generated lists. ``` -To run the passing tests again +## Regenerating the base lists + +To regenerate from scratch against a new base nightly (only needed when re-baselining, not for routine nightly bumps): ```bash -cd tests/ui/ -./run_ui_tests.sh -``` \ No newline at end of file +# Discover candidate test sources: +RUST_TOP=/path/to/rust ./tests/ui/collect_test_sources.sh > tests/ui/ui_sources.txt + +# Regenerate passing/failing lists: +./tests/ui/remake_ui_tests.sh /path/to/rust + +# Update the base nightly marker: +echo "nightly-YYYY-MM-DD" > tests/ui/base-nightly.txt +``` + +## diff_test_lists.sh modes + +| Mode | Description | +|------|-------------| +| `--report` (default) | Human-readable summary per nightly: deletions, renames, modifications, effective list size | +| `--chain` | Incremental diffs between consecutive breakpoint nightlies | +| `--emit` | Write effective `passing.tsv` and `failing.tsv` to `overrides//` | diff --git a/tests/ui/base-nightly.txt b/tests/ui/base-nightly.txt new file mode 100644 index 00000000..e56b2c71 --- /dev/null +++ b/tests/ui/base-nightly.txt @@ -0,0 +1 @@ +nightly-2024-11-29 diff --git a/tests/ui/diff_test_lists.sh b/tests/ui/diff_test_lists.sh new file mode 100755 index 00000000..0b20106f --- /dev/null +++ b/tests/ui/diff_test_lists.sh @@ -0,0 +1,471 @@ +#!/usr/bin/env bash +set -euo pipefail + +# diff_test_lists.sh: generate effective UI test lists for a target nightly +# by diffing tests/ui/ in the rustc repo between the base commit and the +# target commit, then applying deletions, renames, and manual overrides +# to the base passing.tsv / failing.tsv. +# +# This script is the single source of truth for "which tests should we +# run against nightly X?" Its output is auditable and reproducible: given +# the same rust repo and commits, it produces the same result. +# +# Modes: +# --report Print a human-readable diff report (default) +# --emit Write effective passing.tsv and failing.tsv for the +# target nightly to the overrides directory +# +# Usage: +# ./tests/ui/diff_test_lists.sh RUST_DIR [OPTIONS] [NIGHTLY...] +# +# If no nightlies are specified, the script walks through the default +# breakpoint nightlies (those with installed toolchains). + +usage() { + cat <<'EOF' +Usage: diff_test_lists.sh [OPTIONS] RUST_DIR [NIGHTLY...] + + RUST_DIR Path to a rust-lang/rust checkout (regular or bare) + NIGHTLY One or more nightly dates (e.g., nightly-2025-03-01). + If omitted, walks through all breakpoint nightlies. + +Options: + --report Print a human-readable report to stdout (default) + --emit Write effective test lists to tests/ui/overrides// + --chain Show incremental diffs between each consecutive nightly + --force Regenerate even if cached overrides already exist (emit mode) + +Environment: + BASE_COMMIT Override the base commit (default: from base-nightly.txt) +EOF + exit 1 +} + +die() { printf 'Error: %s\n' "$*" >&2; exit 1; } + +# --------------------------------------------------------------------------- +# Arg parsing +# --------------------------------------------------------------------------- +MODE="report" +FORCE=0 +RUST_DIR="" +NIGHTLY_ARGS=() + +while (( $# > 0 )); do + case "$1" in + --report) MODE="report"; shift ;; + --emit) MODE="emit"; shift ;; + --chain) MODE="chain"; shift ;; + --force) FORCE=1; shift ;; + --help|-h) usage ;; + --*) die "unknown option: $1" ;; + *) + if [[ -z "$RUST_DIR" ]]; then + RUST_DIR="$1" + else + NIGHTLY_ARGS+=("$1") + fi + shift ;; + esac +done + +[[ -n "$RUST_DIR" ]] || usage +[[ -d "$RUST_DIR" ]] || die "not a directory: $RUST_DIR" + +UI_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +AWK_SCRIPT="${UI_DIR}/parse_test_directives.awk" +PASSING_TSV="${UI_DIR}/passing.tsv" +FAILING_TSV="${UI_DIR}/failing.tsv" +OVERRIDES_DIR="${UI_DIR}/overrides" + +[[ -f "$PASSING_TSV" ]] || die "missing $PASSING_TSV" +[[ -f "$FAILING_TSV" ]] || die "missing $FAILING_TSV" + +# --------------------------------------------------------------------------- +# Resolve base commit +# --------------------------------------------------------------------------- +if [[ -z "${BASE_COMMIT:-}" ]]; then + if [[ -f "${UI_DIR}/base-nightly.txt" ]]; then + BASE_NIGHTLY=$(head -1 "${UI_DIR}/base-nightly.txt" | tr -d '[:space:]') + BASE_COMMIT=$(rustup run "$BASE_NIGHTLY" rustc -vV 2>/dev/null \ + | grep 'commit-hash' | cut -d' ' -f2 || true) + [[ -n "$BASE_COMMIT" ]] || die "could not resolve commit for $BASE_NIGHTLY (is it installed?)" + else + BASE_COMMIT=$(rustc -vV | grep 'commit-hash' | cut -d' ' -f2) + BASE_NIGHTLY="(current)" + fi +else + BASE_NIGHTLY="(override)" +fi + +# --------------------------------------------------------------------------- +# Resolve nightly list -> (label, commit) pairs +# --------------------------------------------------------------------------- +DEFAULT_NIGHTLIES="nightly-2024-12-15 nightly-2025-01-25 nightly-2025-01-28 nightly-2025-01-29 nightly-2025-03-01 nightly-2025-07-11 nightly-2025-07-15 nightly-2025-07-26 nightly-2025-09-19 nightly-2025-10-03 nightly-2025-10-12 nightly-2025-11-19 nightly-2025-12-06 nightly-2025-12-14 nightly-2025-12-23 nightly-2026-01-15" + +if (( ${#NIGHTLY_ARGS[@]} > 0 )); then + NIGHTLY_LIST=("${NIGHTLY_ARGS[@]}") +else + read -ra NIGHTLY_LIST <<< "$DEFAULT_NIGHTLIES" +fi + +COMMITS=() +LABELS=() + +for n in "${NIGHTLY_LIST[@]}"; do + hash=$(rustup run "$n" rustc -vV 2>/dev/null \ + | grep 'commit-hash' | cut -d' ' -f2 || true) + if [[ -z "$hash" ]]; then + echo "# warning: $n not installed, skipping" >&2 + continue + fi + git -C "$RUST_DIR" cat-file -e "$hash" 2>/dev/null || { + echo "# warning: commit for $n ($hash) not in $RUST_DIR, skipping" >&2 + continue + } + COMMITS+=("$hash") + LABELS+=("$n") +done + +(( ${#COMMITS[@]} > 0 )) || die "no target commits resolved" + +# --------------------------------------------------------------------------- +# Load base test lists +# --------------------------------------------------------------------------- +declare -A BASE_PASSING +while IFS= read -r line; do + [[ -n "$line" ]] && BASE_PASSING["$line"]=1 +done < "$PASSING_TSV" + +declare -A BASE_FAILING +while IFS=$'\t' read -r path code; do + [[ -n "$path" ]] && BASE_FAILING["$path"]="${code:-1}" +done < "$FAILING_TSV" + +# --------------------------------------------------------------------------- +# Compute cumulative diff from base to a target commit +# +# Sets these arrays in the caller's scope: +# GIT_DELETED - files deleted upstream +# GIT_ADDED - files added upstream +# GIT_RENAMED - tab-separated oldnew pairs +# GIT_MODIFIED - files with content changes +# --------------------------------------------------------------------------- +compute_diff() { + local from="$1" to="$2" + + # Use a high rename limit to avoid truncated rename detection on large diffs. + # Without this, git silently falls back to treating renames as delete+add, + # which shrinks the effective test list by dropping renamed tests. + local -a diff_cmd=(git -C "$RUST_DIR" -c diff.renameLimit=5000 diff) + + mapfile -t GIT_DELETED < <( + "${diff_cmd[@]}" --diff-filter=D --name-only "$from..$to" -- tests/ui/ \ + | grep '\.rs$' || true + ) + + mapfile -t GIT_ADDED < <( + "${diff_cmd[@]}" --diff-filter=A --name-only "$from..$to" -- tests/ui/ \ + | grep '\.rs$' || true + ) + + mapfile -t GIT_RENAMED < <( + "${diff_cmd[@]}" --diff-filter=R --name-status "$from..$to" -- tests/ui/ \ + | grep '\.rs' \ + | awk '{print $2 "\t" $3}' || true + ) + + mapfile -t GIT_MODIFIED < <( + "${diff_cmd[@]}" --diff-filter=M --name-only "$from..$to" -- tests/ui/ \ + | grep '\.rs$' || true + ) +} + +# --------------------------------------------------------------------------- +# Build effective test list for a target commit +# +# Starts from BASE_PASSING, applies git deletions and renames, then +# applies manual overrides from overrides/.tsv if it exists. +# +# Outputs the effective passing list (one path per line, sorted) to stdout. +# --------------------------------------------------------------------------- +build_effective_passing() { + local target_commit="$1" label="$2" + + compute_diff "$BASE_COMMIT" "$target_commit" + + # Start with a copy of the base passing list + declare -A effective + for path in "${!BASE_PASSING[@]}"; do + effective["$path"]=1 + done + + # Remove deleted files. + # N.B.: we mark entries as empty rather than using `unset`, because bash + # evaluates the subscript in `unset "arr[$key]"` and chokes on filenames + # containing $ (e.g., need-crate-arg-ignore-tidy$x.rs). + for f in "${GIT_DELETED[@]}"; do + effective["$f"]="" + done + + # Handle renames: remove old path, add new path + for entry in "${GIT_RENAMED[@]}"; do + local old="${entry%% *}" new="${entry##* }" + if [[ -n "${effective[$old]:-}" ]]; then + effective["$old"]="" + effective["$new"]=1 + fi + done + + # Apply manual overrides if they exist + local override_file="${OVERRIDES_DIR}/${label}.tsv" + if [[ -f "$override_file" ]]; then + while IFS=$'\t' read -r action path _rest; do + [[ -z "$action" || "$action" == \#* ]] && continue + case "$action" in + -) effective["$path"]="" ;; + +) effective["$path"]=1 ;; + skip) effective["$path"]="" ;; + esac + done < "$override_file" + fi + + # Filter out tests that the directive parser would skip unconditionally + # (needs-subprocess, needs-sanitizer, extern crate libc). Uses universal + # mode so the output is platform-neutral; arch/os filtering happens at + # runtime in run_ui_tests.sh. + local skip_count=0 + for path in "${!effective[@]}"; do + [[ -n "${effective[$path]}" ]] || continue + local result + result=$(git -C "$RUST_DIR" show "${target_commit}:${path}" 2>/dev/null \ + | awk -v universal=1 -f "$AWK_SCRIPT" 2>/dev/null || echo "FLAGS ") + if [[ "${result%% *}" == "SKIP" ]]; then + effective["$path"]="" + (( ++skip_count )) + fi + done + if (( skip_count > 0 )); then + echo " (filtered $skip_count tests via directive parser)" >&2 + fi + + # Output sorted (skip empty-value entries, which were deleted/skipped). + # The `|| true` prevents a false-last-iteration from triggering set -e. + for path in "${!effective[@]}"; do + [[ -n "${effective[$path]}" ]] && printf '%s\n' "$path" || true + done | sort +} + +# --------------------------------------------------------------------------- +# Build effective failing list for a target commit +# --------------------------------------------------------------------------- +build_effective_failing() { + local target_commit="$1" label="$2" + + # Start with base failing list + declare -A effective + for path in "${!BASE_FAILING[@]}"; do + effective["$path"]="${BASE_FAILING[$path]}" + done + + # Remove deleted files (mark empty; see note in build_effective_passing) + for f in "${GIT_DELETED[@]}"; do + effective["$f"]="" + done + + # Handle renames + for entry in "${GIT_RENAMED[@]}"; do + local old="${entry%% *}" new="${entry##* }" + if [[ -n "${effective[$old]:-}" ]]; then + local code="${effective[$old]}" + effective["$old"]="" + effective["$new"]="$code" + fi + done + + # Apply manual overrides + local override_file="${OVERRIDES_DIR}/${label}.tsv" + if [[ -f "$override_file" ]]; then + while IFS=$'\t' read -r action path rest; do + [[ -z "$action" || "$action" == \#* ]] && continue + case "$action" in + -) effective["$path"]="" ;; + fail) effective["$path"]="${rest:-1}" ;; + pass) effective["$path"]="" ;; + esac + done < "$override_file" + fi + + # Output sorted (pathexit_code), skipping empty-value entries + for path in "${!effective[@]}"; do + [[ -n "${effective[$path]}" ]] && printf '%s\t%s\n' "$path" "${effective[$path]}" || true + done | sort +} + +# --------------------------------------------------------------------------- +# Report mode: human-readable diff report +# --------------------------------------------------------------------------- +print_report() { + local target_commit="$1" label="$2" + + compute_diff "$BASE_COMMIT" "$target_commit" + + echo "==========================================" + echo "## ${BASE_NIGHTLY} -> ${label}" + echo "## ${BASE_COMMIT:0:12}..${target_commit:0:12}" + echo "==========================================" + echo "" + printf " Upstream: %d deleted, %d added, %d renamed, %d modified\n\n" \ + "${#GIT_DELETED[@]}" "${#GIT_ADDED[@]}" "${#GIT_RENAMED[@]}" "${#GIT_MODIFIED[@]}" + + local del_p=0 ren_p=0 mod_p=0 + + for f in "${GIT_DELETED[@]}"; do + [[ -n "${BASE_PASSING[$f]:-}" ]] && { echo " - $f"; (( ++del_p )); } + done + + for entry in "${GIT_RENAMED[@]}"; do + local old="${entry%% *}" new="${entry##* }" + [[ -n "${BASE_PASSING[$old]:-}" ]] && { echo " R $old -> $new"; (( ++ren_p )); } + done + + for f in "${GIT_MODIFIED[@]}"; do + [[ -n "${BASE_PASSING[$f]:-}" ]] && (( ++mod_p )) + done + + local override_file="${OVERRIDES_DIR}/${label}.tsv" + local has_overrides=0 + if [[ -f "$override_file" ]]; then + has_overrides=1 + echo "" + echo " Manual overrides (${override_file##*/}):" + while IFS= read -r line; do + [[ -z "$line" || "$line" == \#* ]] && continue + echo " $line" + done < "$override_file" + fi + + echo "" + printf " Affecting passing.tsv: %d deleted, %d renamed, %d modified\n" "$del_p" "$ren_p" "$mod_p" + printf " New .rs files upstream: %d\n" "${#GIT_ADDED[@]}" + (( has_overrides )) && echo " Manual overrides: yes" || echo " Manual overrides: none" + + # Effective list size + local effective_count + effective_count=$(build_effective_passing "$target_commit" "$label" | wc -l) + printf " Effective passing list: %d entries\n" "$effective_count" + echo "" +} + +# --------------------------------------------------------------------------- +# Chain mode: incremental diffs between consecutive nightlies +# --------------------------------------------------------------------------- +print_chain() { + local prev_commit="$BASE_COMMIT" prev_label="$BASE_NIGHTLY" + + for i in "${!COMMITS[@]}"; do + local target="${COMMITS[$i]}" label="${LABELS[$i]}" + + compute_diff "$prev_commit" "$target" + + echo "==========================================" + echo "## ${prev_label} -> ${label}" + echo "## ${prev_commit:0:12}..${target:0:12}" + echo "==========================================" + echo "" + printf " Upstream: %d deleted, %d added, %d renamed, %d modified\n\n" \ + "${#GIT_DELETED[@]}" "${#GIT_ADDED[@]}" "${#GIT_RENAMED[@]}" "${#GIT_MODIFIED[@]}" + + for f in "${GIT_DELETED[@]}"; do + [[ -n "${BASE_PASSING[$f]:-}" ]] && echo " - $f" + done + for entry in "${GIT_RENAMED[@]}"; do + local old="${entry%% *}" new="${entry##* }" + [[ -n "${BASE_PASSING[$old]:-}" ]] && echo " R $old -> $new" + done + + local mod_p=0 + for f in "${GIT_MODIFIED[@]}"; do + [[ -n "${BASE_PASSING[$f]:-}" ]] && (( ++mod_p )) + done + (( mod_p > 0 )) && printf " (%d modified files in passing.tsv)\n" "$mod_p" + + echo "" + prev_commit="$target" + prev_label="$label" + done +} + +# --------------------------------------------------------------------------- +# Header (all modes) +# --------------------------------------------------------------------------- +echo "# UI Test List Diff Report" +echo "#" +echo "# Base: ${BASE_NIGHTLY} (${BASE_COMMIT:0:12})" +echo "# Targets: ${LABELS[*]}" +echo "# Generated: $(date -u '+%Y-%m-%d %H:%M:%S UTC')" +echo "#" +echo "# Base passing.tsv: $(wc -l < "$PASSING_TSV") entries" +echo "# Base failing.tsv: $(wc -l < "$FAILING_TSV") entries" +echo "" + +# --------------------------------------------------------------------------- +# Dispatch +# --------------------------------------------------------------------------- +case "$MODE" in + report) + for i in "${!COMMITS[@]}"; do + print_report "${COMMITS[$i]}" "${LABELS[$i]}" + done + ;; + + chain) + print_chain + ;; + + emit) + mkdir -p "$OVERRIDES_DIR" + for i in "${!COMMITS[@]}"; do + local_label="${LABELS[$i]}" + local_commit="${COMMITS[$i]}" + out_dir="${OVERRIDES_DIR}/${local_label}" + mkdir -p "$out_dir" + + # Cache: skip if non-empty overrides already exist (use --force to regenerate) + if (( ! FORCE )) && [[ -s "${out_dir}/passing.tsv" ]]; then + p_count=$(wc -l < "${out_dir}/passing.tsv") + printf " %s: cached (%d entries), skipping (use --force to regenerate)\n" "$local_label" "$p_count" + continue + fi + + echo "Generating effective lists for ${local_label}..." + + build_effective_passing "$local_commit" "$local_label" > "${out_dir}/passing.tsv" + build_effective_failing "$local_commit" "$local_label" > "${out_dir}/failing.tsv" + + p_count=$(wc -l < "${out_dir}/passing.tsv") + f_count=$(wc -l < "${out_dir}/failing.tsv") + if (( p_count == 0 )); then + cat >&2 < %s/passing.tsv (%d entries)\n" "$out_dir" "$p_count" + printf " -> %s/failing.tsv (%d entries)\n" "$out_dir" "$f_count" + done + echo "" + echo "Done. Use these lists with run_ui_tests.sh by setting:" + echo " PASSING_TSV=tests/ui/overrides//passing.tsv" + ;; +esac diff --git a/tests/ui/failing.tsv b/tests/ui/failing.tsv index 3d0b48b9..5e5f8330 100644 --- a/tests/ui/failing.tsv +++ b/tests/ui/failing.tsv @@ -1,2 +1 @@ -tests/ui/issues/issue-26641.rs 101 tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-03-01.tsv b/tests/ui/overrides/nightly-2025-03-01.tsv new file mode 100644 index 00000000..1cbbbba9 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-03-01.tsv @@ -0,0 +1,14 @@ +# Manual overrides for nightly-2025-03-01 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream changed this test to use ${concat()} macro metavar expressions, +# which don't compile through our driver. +skip tests/ui/macros/macro-metavar-expr-concat/repetitions.rs diff --git a/tests/ui/overrides/nightly-2025-03-01/failing.tsv b/tests/ui/overrides/nightly-2025-03-01/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-03-01/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-03-01/passing.tsv b/tests/ui/overrides/nightly-2025-03-01/passing.tsv new file mode 100644 index 00000000..8f381587 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-03-01/passing.tsv @@ -0,0 +1,2821 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/lib-defaults.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/augmented-assignments-rpass.rs +tests/ui/auto-instantiate.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bare-fn-implements-fn-mut.rs +tests/ui/bare-static-string.rs +tests/ui/bench/issue-32062.rs +tests/ui/big-literals.rs +tests/ui/bind-by-move.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/bitwise.rs +tests/ui/borrow-by-val-method-receiver.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-clone-unwind.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cancel-clean-via-immediate-rvalue-ref.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/supported-cast.rs +tests/ui/catch-unwind-bang.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/cfguard-run.rs +tests/ui/char.rs +tests/ui/cleanup-rvalue-for-scope.rs +tests/ui/cleanup-rvalue-scopes.rs +tests/ui/cleanup-rvalue-temp-during-incomplete-alloc.rs +tests/ui/cleanup-shortcircuit.rs +tests/ui/close-over-big-then-small-data.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/basic.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/function.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/print.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/print3.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/basic.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/function.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/print.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/print3.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/basic.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/function.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/print.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/print3.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/complex.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/float_methods.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/crate-leading-sep.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/deep.rs +tests/ui/default-method-simple.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/deref-rc.rs +tests/ui/deref.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/diverging-fallback-method-chain.rs +tests/ui/diverging-fallback-option.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dyn-star/box.rs +tests/ui/dyn-star/const.rs +tests/ui/dyn-star/dont-unsize-coerce-dyn-star.rs +tests/ui/dyn-star/drop.rs +tests/ui/dyn-star/dyn-star-to-dyn.rs +tests/ui/dyn-star/make-dyn-star.rs +tests/ui/dyn-star/method.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait-tuple.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/dynamically-sized-types/dst-tuple-no-reorder.rs +tests/ui/dynamically-sized-types/dst-tuple-sole.rs +tests/ui/dynamically-sized-types/dst-tuple-zst-offsets.rs +tests/ui/dynamically-sized-types/dst-tuple.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/else-if.rs +tests/ui/empty-allocation-non-null.rs +tests/ui/empty-allocation-rvalue-non-null.rs +tests/ui/empty-type-parameter-list.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-43398.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/errors/remap-path-prefix-macro.rs +tests/ui/explicit-i-suffix.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/ext-expand-inner-exprs.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/fact.rs +tests/ui/feature-gates/version_check.rs +tests/ui/filter-block-view-items.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/fun-indirect-call.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/global-scope.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hello.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-inherent-non-conflict.rs +tests/ui/impl-not-adjacent-to-type.rs +tests/ui/impl-trait/auto-trait-leak-rpass.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issue-36792.rs +tests/ui/impl-trait/issue-49685.rs +tests/ui/impl-trait/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/inline-const/const-match-pat-lifetime.rs +tests/ui/inline-const/const-match-pat.rs +tests/ui/inner-attrs-on-impl.rs +tests/ui/inner-module.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/issue-11881.rs +tests/ui/issue-15924.rs +tests/ui/issues/issue-10228.rs +tests/ui/issues/issue-10436.rs +tests/ui/issues/issue-10638.rs +tests/ui/issues/issue-10683.rs +tests/ui/issues/issue-10718.rs +tests/ui/issues/issue-10734.rs +tests/ui/issues/issue-10767.rs +tests/ui/issues/issue-10802.rs +tests/ui/issues/issue-10806.rs +tests/ui/issues/issue-11047.rs +tests/ui/issues/issue-11085.rs +tests/ui/issues/issue-11205.rs +tests/ui/issues/issue-11267.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-11709.rs +tests/ui/issues/issue-11820.rs +tests/ui/issues/issue-11958.rs +tests/ui/issues/issue-12033.rs +tests/ui/issues/issue-12285.rs +tests/ui/issues/issue-12677.rs +tests/ui/issues/issue-12744.rs +tests/ui/issues/issue-12860.rs +tests/ui/issues/issue-12909.rs +tests/ui/issues/issue-13027.rs +tests/ui/issues/issue-13204.rs +tests/ui/issues/issue-13259-windows-tcb-trash.rs +tests/ui/issues/issue-13264.rs +tests/ui/issues/issue-13323.rs +tests/ui/issues/issue-13434.rs +tests/ui/issues/issue-13665.rs +tests/ui/issues/issue-13763.rs +tests/ui/issues/issue-13808.rs +tests/ui/issues/issue-13867.rs +tests/ui/issues/issue-14229.rs +tests/ui/issues/issue-14308.rs +tests/ui/issues/issue-14382.rs +tests/ui/issues/issue-14393.rs +tests/ui/issues/issue-14399.rs +tests/ui/issues/issue-14821.rs +tests/ui/issues/issue-14865.rs +tests/ui/issues/issue-14875.rs +tests/ui/issues/issue-14919.rs +tests/ui/issues/issue-15043.rs +tests/ui/issues/issue-15063.rs +tests/ui/issues/issue-15104.rs +tests/ui/issues/issue-15129-rpass.rs +tests/ui/issues/issue-15189.rs +tests/ui/issues/issue-15444.rs +tests/ui/issues/issue-15523-big.rs +tests/ui/issues/issue-15523.rs +tests/ui/issues/issue-15571.rs +tests/ui/issues/issue-15673.rs +tests/ui/issues/issue-15734.rs +tests/ui/issues/issue-15763.rs +tests/ui/issues/issue-15774.rs +tests/ui/issues/issue-15793.rs +tests/ui/issues/issue-15858.rs +tests/ui/issues/issue-16151.rs +tests/ui/issues/issue-16256.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16441.rs +tests/ui/issues/issue-16452.rs +tests/ui/issues/issue-16492.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18685.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-18952.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-21655.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2284.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-22992.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-23808.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-24353.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25549-multiple-drop.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28777.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-3037.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30756.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-32805.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-3389.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36023.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36278-prefix-nesting.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36786-resolve-call.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-4333.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4734.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-47638.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5280.rs +tests/ui/issues/issue-5315.rs +tests/ui/issues/issue-5321-immediates-with-bare-self.rs +tests/ui/issues/issue-53333.rs +tests/ui/issues/issue-53728.rs +tests/ui/issues/issue-53843.rs +tests/ui/issues/issue-54462-mutable-noalias-correctness.rs +tests/ui/issues/issue-54477-reduced-2.rs +tests/ui/issues/issue-54696.rs +tests/ui/issues/issue-55380.rs +tests/ui/issues/issue-5550.rs +tests/ui/issues/issue-5554.rs +tests/ui/issues/issue-56237.rs +tests/ui/issues/issue-5666.rs +tests/ui/issues/issue-5688.rs +tests/ui/issues/issue-5708.rs +tests/ui/issues/issue-5718.rs +tests/ui/issues/issue-57198-pass.rs +tests/ui/issues/issue-5741.rs +tests/ui/issues/issue-58463.rs +tests/ui/issues/issue-59020.rs +tests/ui/issues/issue-5917.rs +tests/ui/issues/issue-5988.rs +tests/ui/issues/issue-5997-outer-generic-parameter/issue-5997.rs +tests/ui/issues/issue-6117.rs +tests/ui/issues/issue-6130.rs +tests/ui/issues/issue-61475.rs +tests/ui/issues/issue-6153.rs +tests/ui/issues/issue-61894.rs +tests/ui/issues/issue-6318.rs +tests/ui/issues/issue-6344-let.rs +tests/ui/issues/issue-6344-match.rs +tests/ui/issues/issue-68696-catch-during-unwind.rs +tests/ui/issues/issue-6892.rs +tests/ui/issues/issue-7012.rs +tests/ui/issues/issue-70673.rs +tests/ui/issues/issue-7344.rs +tests/ui/issues/issue-7519-match-unit-in-arg.rs +tests/ui/issues/issue-7563.rs +tests/ui/issues/issue-7575.rs +tests/ui/issues/issue-76042.rs +tests/ui/issues/issue-7660.rs +tests/ui/issues/issue-7663.rs +tests/ui/issues/issue-7784.rs +tests/ui/issues/issue-78192.rs +tests/ui/issues/issue-7911.rs +tests/ui/issues/issue-8248.rs +tests/ui/issues/issue-8249.rs +tests/ui/issues/issue-8391.rs +tests/ui/issues/issue-8498.rs +tests/ui/issues/issue-8783.rs +tests/ui/issues/issue-8860.rs +tests/ui/issues/issue-8898.rs +tests/ui/issues/issue-9047.rs +tests/ui/issues/issue-9129.rs +tests/ui/issues/issue-9259.rs +tests/ui/issues/issue-9382.rs +tests/ui/issues/issue-9446.rs +tests/ui/issues/issue-9737.rs +tests/ui/issues/issue-9837.rs +tests/ui/issues/issue-9918.rs +tests/ui/issues/issue-9942.rs +tests/ui/issues/issue-9951.rs +tests/ui/issues/issue-99838.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/last-use-in-cap-clause.rs +tests/ui/last-use-is-capture.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/lazy-and-or.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lexical-scoping.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/temporary-lifetime-extension.rs +tests/ui/link-section.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper_ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/list.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/log-err-phi.rs +tests/ui/log-knows-the-names-of-variants.rs +tests/ui/log-poly.rs +tests/ui/logging-only-prints-once.rs +tests/ui/loops/issue-1974.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-metavar-expr-concat/allowed-operations.rs +tests/ui/macros/macro-metavar-expr-concat/unicode-expansion.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/rfc-3086-metavar-expr/count-and-length-are-distinct.rs +tests/ui/macros/rfc-3086-metavar-expr/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/rfc-3086-metavar-expr/feature-gate-macro_metavar_expr.rs +tests/ui/macros/rfc-3086-metavar-expr/macro-expansion.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/max-min-classes.rs +tests/ui/maximal_mir_to_hir_coverage.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_computation.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/monomorphize-abi-alignment.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/msvc-opt-minsize.rs +tests/ui/multibyte.rs +tests/ui/mut-function-arguments.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/myriad-closures.rs +tests/ui/nested-block-comment.rs +tests/ui/nested-class.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/new-impl-syntax.rs +tests/ui/new-import-syntax.rs +tests/ui/new-style-constants.rs +tests/ui/new-unicode-escapes.rs +tests/ui/newlambdas.rs +tests/ui/newtype-polymorphic.rs +tests/ui/newtype.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/no-core-1.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/nul-characters.rs +tests/ui/nullable-pointer-iotareduction.rs +tests/ui/nullable-pointer-size.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/int.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/uint.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/objects-coerce-freeze-borrored.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/oom_unwind.rs +tests/ui/op-assign-builtins-by-ref.rs +tests/ui/opeq.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/out-pointer-aliasing.rs +tests/ui/output-slot-variants.rs +tests/ui/over-constrained-vregs.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panic-while-printing.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/path.rs +tests/ui/paths-containing-nul.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/bindings.rs +tests/ui/pattern/deref-patterns/branch.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/primitive-binop-lhs-mut.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/project-cache-issue-31849.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr-coercion-rpass.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/raw-str.rs +tests/ui/realloc-16687.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resource-assign-is-not-copy.rs +tests/ui/resource-destruct.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed-use-visibility.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/sse2.rs +tests/ui/stable-addr-of.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/string-box-error.rs +tests/ui/struct-ctor-mangling.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/large-records.rs +tests/ui/super.rs +tests/ui/swap-1.rs +tests/ui/swap-overlapping.rs +tests/ui/syntax-extension-minor.rs +tests/ui/tail-call-arg-leak.rs +tests/ui/tail-cps.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/tcp-stress.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/trailing-comma.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute-non-immediate-to-immediate.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/trivial_casts-rpass.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-from-int-error-partial-eq.rs +tests/ui/try-operator-hygiene.rs +tests/ui/try-operator.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/tydesc-name.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-id-higher-rank-2.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type-namespace.rs +tests/ui/type-param-constraints.rs +tests/ui/type-ptr.rs +tests/ui/type-use-i1-versus-i8.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/typestate-multi-decl.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetimes.rs +tests/ui/underscore-method-after-integer.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unit.rs +tests/ui/unnamed_argument_mode.rs +tests/ui/unreachable-code-1.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/align.rs +tests/ui/unsized-locals/autoderef.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +tests/ui/unsized-locals/reference-unsized-locals.rs +tests/ui/unsized-locals/simple-unsized-locals.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized-tuple-impls.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/unused-move-capture.rs +tests/ui/unused-move.rs +tests/ui/unwind-no-uwtable.rs +tests/ui/use-import-export.rs +tests/ui/use-keyword-2.rs +tests/ui/use-module-level-int-consts.rs +tests/ui/use-nested-groups.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/weak-new-uninhabited-issue-48493.rs +tests/ui/weird-exprs.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/write-fmt-errors.rs +tests/ui/wrong-hashset-issue-42918.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-07-05.tsv b/tests/ui/overrides/nightly-2025-07-05.tsv new file mode 100644 index 00000000..ea8de005 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-05.tsv @@ -0,0 +1,23 @@ +# Manual overrides for nightly-2025-07-05 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Same 9 compiler-change regressions as nightly-2025-07-11 (these tests +# changed upstream between the base nightly and here; the failures are +# compile errors in the test source, not driver bugs). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +skip tests/ui/errors/remap-path-prefix-macro.rs diff --git a/tests/ui/overrides/nightly-2025-07-05/failing.tsv b/tests/ui/overrides/nightly-2025-07-05/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-05/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-07-05/passing.tsv b/tests/ui/overrides/nightly-2025-07-05/passing.tsv new file mode 100644 index 00000000..23bd4423 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-05/passing.tsv @@ -0,0 +1,2738 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/supported-cast.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/issue-15924.rs +tests/ui/issues/issue-10228.rs +tests/ui/issues/issue-10436.rs +tests/ui/issues/issue-10638.rs +tests/ui/issues/issue-10683.rs +tests/ui/issues/issue-10718.rs +tests/ui/issues/issue-10734.rs +tests/ui/issues/issue-10767.rs +tests/ui/issues/issue-10802.rs +tests/ui/issues/issue-10806.rs +tests/ui/issues/issue-11047.rs +tests/ui/issues/issue-11085.rs +tests/ui/issues/issue-11205.rs +tests/ui/issues/issue-11267.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-11709.rs +tests/ui/issues/issue-11820.rs +tests/ui/issues/issue-11958.rs +tests/ui/issues/issue-12033.rs +tests/ui/issues/issue-12285.rs +tests/ui/issues/issue-12677.rs +tests/ui/issues/issue-12744.rs +tests/ui/issues/issue-12860.rs +tests/ui/issues/issue-12909.rs +tests/ui/issues/issue-13027.rs +tests/ui/issues/issue-13204.rs +tests/ui/issues/issue-13259-windows-tcb-trash.rs +tests/ui/issues/issue-13264.rs +tests/ui/issues/issue-13323.rs +tests/ui/issues/issue-13434.rs +tests/ui/issues/issue-13665.rs +tests/ui/issues/issue-13763.rs +tests/ui/issues/issue-13808.rs +tests/ui/issues/issue-13867.rs +tests/ui/issues/issue-14229.rs +tests/ui/issues/issue-14308.rs +tests/ui/issues/issue-14382.rs +tests/ui/issues/issue-14393.rs +tests/ui/issues/issue-14399.rs +tests/ui/issues/issue-14821.rs +tests/ui/issues/issue-14865.rs +tests/ui/issues/issue-14875.rs +tests/ui/issues/issue-14919.rs +tests/ui/issues/issue-15043.rs +tests/ui/issues/issue-15063.rs +tests/ui/issues/issue-15104.rs +tests/ui/issues/issue-15129-rpass.rs +tests/ui/issues/issue-15189.rs +tests/ui/issues/issue-15444.rs +tests/ui/issues/issue-15523-big.rs +tests/ui/issues/issue-15523.rs +tests/ui/issues/issue-15571.rs +tests/ui/issues/issue-15673.rs +tests/ui/issues/issue-15734.rs +tests/ui/issues/issue-15763.rs +tests/ui/issues/issue-15774.rs +tests/ui/issues/issue-15793.rs +tests/ui/issues/issue-15858.rs +tests/ui/issues/issue-16151.rs +tests/ui/issues/issue-16256.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16441.rs +tests/ui/issues/issue-16452.rs +tests/ui/issues/issue-16492.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18685.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-18952.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-21655.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2284.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-22992.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-24353.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25549-multiple-drop.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-3037.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30756.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-32805.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-3389.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36023.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36278-prefix-nesting.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36786-resolve-call.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-4333.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4734.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-47638.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5280.rs +tests/ui/issues/issue-5315.rs +tests/ui/issues/issue-5321-immediates-with-bare-self.rs +tests/ui/issues/issue-53333.rs +tests/ui/issues/issue-53728.rs +tests/ui/issues/issue-53843.rs +tests/ui/issues/issue-54462-mutable-noalias-correctness.rs +tests/ui/issues/issue-54477-reduced-2.rs +tests/ui/issues/issue-54696.rs +tests/ui/issues/issue-55380.rs +tests/ui/issues/issue-5550.rs +tests/ui/issues/issue-5554.rs +tests/ui/issues/issue-56237.rs +tests/ui/issues/issue-5666.rs +tests/ui/issues/issue-5688.rs +tests/ui/issues/issue-5708.rs +tests/ui/issues/issue-5718.rs +tests/ui/issues/issue-57198-pass.rs +tests/ui/issues/issue-5741.rs +tests/ui/issues/issue-58463.rs +tests/ui/issues/issue-59020.rs +tests/ui/issues/issue-5917.rs +tests/ui/issues/issue-5988.rs +tests/ui/issues/issue-5997-outer-generic-parameter/issue-5997.rs +tests/ui/issues/issue-6117.rs +tests/ui/issues/issue-6130.rs +tests/ui/issues/issue-61475.rs +tests/ui/issues/issue-6153.rs +tests/ui/issues/issue-61894.rs +tests/ui/issues/issue-6318.rs +tests/ui/issues/issue-6344-let.rs +tests/ui/issues/issue-6344-match.rs +tests/ui/issues/issue-68696-catch-during-unwind.rs +tests/ui/issues/issue-6892.rs +tests/ui/issues/issue-7012.rs +tests/ui/issues/issue-70673.rs +tests/ui/issues/issue-7344.rs +tests/ui/issues/issue-7519-match-unit-in-arg.rs +tests/ui/issues/issue-7563.rs +tests/ui/issues/issue-7575.rs +tests/ui/issues/issue-76042.rs +tests/ui/issues/issue-7660.rs +tests/ui/issues/issue-7663.rs +tests/ui/issues/issue-7784.rs +tests/ui/issues/issue-78192.rs +tests/ui/issues/issue-7911.rs +tests/ui/issues/issue-8248.rs +tests/ui/issues/issue-8249.rs +tests/ui/issues/issue-8391.rs +tests/ui/issues/issue-8498.rs +tests/ui/issues/issue-8783.rs +tests/ui/issues/issue-8860.rs +tests/ui/issues/issue-8898.rs +tests/ui/issues/issue-9047.rs +tests/ui/issues/issue-9129.rs +tests/ui/issues/issue-9259.rs +tests/ui/issues/issue-9446.rs +tests/ui/issues/issue-9737.rs +tests/ui/issues/issue-9837.rs +tests/ui/issues/issue-9918.rs +tests/ui/issues/issue-9942.rs +tests/ui/issues/issue-9951.rs +tests/ui/issues/issue-99838.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/last-use-in-cap-clause.rs +tests/ui/last-use-is-capture.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/temporary-lifetime-extension.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper_ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/log-poly.rs +tests/ui/loops/issue-1974.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut-function-arguments.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/myriad-closures.rs +tests/ui/nested-block-comment.rs +tests/ui/nested-class.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/nul-characters.rs +tests/ui/nullable-pointer-iotareduction.rs +tests/ui/nullable-pointer-size.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/objects-coerce-freeze-borrored.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/oom_unwind.rs +tests/ui/op-assign-builtins-by-ref.rs +tests/ui/opeq.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/out-pointer-aliasing.rs +tests/ui/output-slot-variants.rs +tests/ui/over-constrained-vregs.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panic-while-printing.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/paths-containing-nul.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/primitive-binop-lhs-mut.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/project-cache-issue-31849.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr-coercion-rpass.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/raw-str.rs +tests/ui/realloc-16687.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/resource-assign-is-not-copy.rs +tests/ui/resource-destruct.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed-use-visibility.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/sse2.rs +tests/ui/stable-addr-of.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/str-static-literal.rs +tests/ui/string-box-error.rs +tests/ui/struct-ctor-mangling.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/large-records.rs +tests/ui/super.rs +tests/ui/swap-1.rs +tests/ui/swap-overlapping.rs +tests/ui/tail-call-arg-leak.rs +tests/ui/tail-cps.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/tcp-stress.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/trailing-comma.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute-non-immediate-to-immediate.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/trivial_casts-rpass.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-from-int-error-partial-eq.rs +tests/ui/try-operator-hygiene.rs +tests/ui/try-operator.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/tydesc-name.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-id-higher-rank-2.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type-namespace.rs +tests/ui/type-param-constraints.rs +tests/ui/type-ptr.rs +tests/ui/type-use-i1-versus-i8.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/typestate-multi-decl.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetimes.rs +tests/ui/underscore-method-after-integer.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unit.rs +tests/ui/unnamed_argument_mode.rs +tests/ui/unreachable-code-1.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/unused-move-capture.rs +tests/ui/unused-move.rs +tests/ui/unwind-no-uwtable.rs +tests/ui/use-import-export.rs +tests/ui/use-keyword-2.rs +tests/ui/use-module-level-int-consts.rs +tests/ui/use-nested-groups.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/weak-new-uninhabited-issue-48493.rs +tests/ui/weird-exprs.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/write-fmt-errors.rs +tests/ui/wrong-hashset-issue-42918.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-07-08.tsv b/tests/ui/overrides/nightly-2025-07-08.tsv new file mode 100644 index 00000000..309f0c84 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-08.tsv @@ -0,0 +1,23 @@ +# Manual overrides for nightly-2025-07-08 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Same 9 compiler-change regressions as nightly-2025-07-11 (these tests +# changed upstream between the base nightly and here; the failures are +# compile errors in the test source, not driver bugs). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +skip tests/ui/errors/remap-path-prefix-macro.rs diff --git a/tests/ui/overrides/nightly-2025-07-08/failing.tsv b/tests/ui/overrides/nightly-2025-07-08/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-08/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-07-08/passing.tsv b/tests/ui/overrides/nightly-2025-07-08/passing.tsv new file mode 100644 index 00000000..e8326669 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-08/passing.tsv @@ -0,0 +1,2725 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/supported-cast.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/issues/issue-10228.rs +tests/ui/issues/issue-10436.rs +tests/ui/issues/issue-10638.rs +tests/ui/issues/issue-10683.rs +tests/ui/issues/issue-10718.rs +tests/ui/issues/issue-10734.rs +tests/ui/issues/issue-10767.rs +tests/ui/issues/issue-10802.rs +tests/ui/issues/issue-10806.rs +tests/ui/issues/issue-11047.rs +tests/ui/issues/issue-11085.rs +tests/ui/issues/issue-11205.rs +tests/ui/issues/issue-11267.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-11709.rs +tests/ui/issues/issue-11820.rs +tests/ui/issues/issue-11958.rs +tests/ui/issues/issue-12033.rs +tests/ui/issues/issue-12285.rs +tests/ui/issues/issue-12677.rs +tests/ui/issues/issue-12744.rs +tests/ui/issues/issue-12860.rs +tests/ui/issues/issue-12909.rs +tests/ui/issues/issue-13027.rs +tests/ui/issues/issue-13204.rs +tests/ui/issues/issue-13259-windows-tcb-trash.rs +tests/ui/issues/issue-13264.rs +tests/ui/issues/issue-13323.rs +tests/ui/issues/issue-13434.rs +tests/ui/issues/issue-13665.rs +tests/ui/issues/issue-13763.rs +tests/ui/issues/issue-13808.rs +tests/ui/issues/issue-13867.rs +tests/ui/issues/issue-14229.rs +tests/ui/issues/issue-14308.rs +tests/ui/issues/issue-14382.rs +tests/ui/issues/issue-14393.rs +tests/ui/issues/issue-14399.rs +tests/ui/issues/issue-14821.rs +tests/ui/issues/issue-14865.rs +tests/ui/issues/issue-14875.rs +tests/ui/issues/issue-14919.rs +tests/ui/issues/issue-15043.rs +tests/ui/issues/issue-15063.rs +tests/ui/issues/issue-15104.rs +tests/ui/issues/issue-15129-rpass.rs +tests/ui/issues/issue-15189.rs +tests/ui/issues/issue-15444.rs +tests/ui/issues/issue-15523-big.rs +tests/ui/issues/issue-15523.rs +tests/ui/issues/issue-15571.rs +tests/ui/issues/issue-15673.rs +tests/ui/issues/issue-15734.rs +tests/ui/issues/issue-15763.rs +tests/ui/issues/issue-15774.rs +tests/ui/issues/issue-15793.rs +tests/ui/issues/issue-15858.rs +tests/ui/issues/issue-16151.rs +tests/ui/issues/issue-16256.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16441.rs +tests/ui/issues/issue-16452.rs +tests/ui/issues/issue-16492.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18685.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-18952.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-21655.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2284.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-22992.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-24353.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25549-multiple-drop.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-3037.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30756.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-32805.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-3389.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36023.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36278-prefix-nesting.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36786-resolve-call.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-4333.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4734.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-47638.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5280.rs +tests/ui/issues/issue-5315.rs +tests/ui/issues/issue-5321-immediates-with-bare-self.rs +tests/ui/issues/issue-53333.rs +tests/ui/issues/issue-53728.rs +tests/ui/issues/issue-53843.rs +tests/ui/issues/issue-54462-mutable-noalias-correctness.rs +tests/ui/issues/issue-54477-reduced-2.rs +tests/ui/issues/issue-54696.rs +tests/ui/issues/issue-55380.rs +tests/ui/issues/issue-5550.rs +tests/ui/issues/issue-5554.rs +tests/ui/issues/issue-56237.rs +tests/ui/issues/issue-5666.rs +tests/ui/issues/issue-5688.rs +tests/ui/issues/issue-5708.rs +tests/ui/issues/issue-5718.rs +tests/ui/issues/issue-57198-pass.rs +tests/ui/issues/issue-5741.rs +tests/ui/issues/issue-58463.rs +tests/ui/issues/issue-59020.rs +tests/ui/issues/issue-5917.rs +tests/ui/issues/issue-5988.rs +tests/ui/issues/issue-5997-outer-generic-parameter/issue-5997.rs +tests/ui/issues/issue-6117.rs +tests/ui/issues/issue-6130.rs +tests/ui/issues/issue-61475.rs +tests/ui/issues/issue-6153.rs +tests/ui/issues/issue-61894.rs +tests/ui/issues/issue-6318.rs +tests/ui/issues/issue-6344-let.rs +tests/ui/issues/issue-6344-match.rs +tests/ui/issues/issue-68696-catch-during-unwind.rs +tests/ui/issues/issue-6892.rs +tests/ui/issues/issue-7012.rs +tests/ui/issues/issue-70673.rs +tests/ui/issues/issue-7344.rs +tests/ui/issues/issue-7519-match-unit-in-arg.rs +tests/ui/issues/issue-7563.rs +tests/ui/issues/issue-7575.rs +tests/ui/issues/issue-76042.rs +tests/ui/issues/issue-7660.rs +tests/ui/issues/issue-7663.rs +tests/ui/issues/issue-7784.rs +tests/ui/issues/issue-78192.rs +tests/ui/issues/issue-7911.rs +tests/ui/issues/issue-8248.rs +tests/ui/issues/issue-8249.rs +tests/ui/issues/issue-8391.rs +tests/ui/issues/issue-8498.rs +tests/ui/issues/issue-8783.rs +tests/ui/issues/issue-8860.rs +tests/ui/issues/issue-8898.rs +tests/ui/issues/issue-9047.rs +tests/ui/issues/issue-9129.rs +tests/ui/issues/issue-9259.rs +tests/ui/issues/issue-9446.rs +tests/ui/issues/issue-9737.rs +tests/ui/issues/issue-9837.rs +tests/ui/issues/issue-9918.rs +tests/ui/issues/issue-9942.rs +tests/ui/issues/issue-9951.rs +tests/ui/issues/issue-99838.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/temporary-lifetime-extension.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper_ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/log-poly.rs +tests/ui/loops/issue-1974.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/out-pointer-aliasing.rs +tests/ui/output-slot-variants.rs +tests/ui/over-constrained-vregs.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panic-while-printing.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/oom-panic-unwind.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/struct-ctor-mangling.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/large-records.rs +tests/ui/super.rs +tests/ui/swap-1.rs +tests/ui/swap-overlapping.rs +tests/ui/tail-call-arg-leak.rs +tests/ui/tail-cps.rs +tests/ui/target-feature/target-feature-detection.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/tcp-stress.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/trailing-comma.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute-non-immediate-to-immediate.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/trivial_casts-rpass.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-from-int-error-partial-eq.rs +tests/ui/try-operator-hygiene.rs +tests/ui/try-operator.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/tydesc-name.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-id-higher-rank-2.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type-namespace.rs +tests/ui/type-param-constraints.rs +tests/ui/type-ptr.rs +tests/ui/type-use-i1-versus-i8.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/typestate-multi-decl.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetimes.rs +tests/ui/underscore-method-after-integer.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unit.rs +tests/ui/unnamed_argument_mode.rs +tests/ui/unreachable-code-1.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/unused-move-capture.rs +tests/ui/unused-move.rs +tests/ui/unwind-no-uwtable.rs +tests/ui/use-import-export.rs +tests/ui/use-keyword-2.rs +tests/ui/use-module-level-int-consts.rs +tests/ui/use-nested-groups.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/weak-new-uninhabited-issue-48493.rs +tests/ui/weird-exprs.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/write-fmt-errors.rs +tests/ui/wrong-hashset-issue-42918.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-07-11.tsv b/tests/ui/overrides/nightly-2025-07-11.tsv new file mode 100644 index 00000000..1e5b2050 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-11.tsv @@ -0,0 +1,26 @@ +# Manual overrides for nightly-2025-07-11 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs diff --git a/tests/ui/overrides/nightly-2025-07-11/failing.tsv b/tests/ui/overrides/nightly-2025-07-11/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-11/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-07-11/passing.tsv b/tests/ui/overrides/nightly-2025-07-11/passing.tsv new file mode 100644 index 00000000..56dd4109 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-11/passing.tsv @@ -0,0 +1,2723 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/supported-cast.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/issues/issue-10228.rs +tests/ui/issues/issue-10436.rs +tests/ui/issues/issue-10638.rs +tests/ui/issues/issue-10683.rs +tests/ui/issues/issue-10718.rs +tests/ui/issues/issue-10734.rs +tests/ui/issues/issue-10767.rs +tests/ui/issues/issue-10802.rs +tests/ui/issues/issue-10806.rs +tests/ui/issues/issue-11047.rs +tests/ui/issues/issue-11085.rs +tests/ui/issues/issue-11205.rs +tests/ui/issues/issue-11267.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-11709.rs +tests/ui/issues/issue-11820.rs +tests/ui/issues/issue-11958.rs +tests/ui/issues/issue-12033.rs +tests/ui/issues/issue-12285.rs +tests/ui/issues/issue-12677.rs +tests/ui/issues/issue-12744.rs +tests/ui/issues/issue-12860.rs +tests/ui/issues/issue-12909.rs +tests/ui/issues/issue-13027.rs +tests/ui/issues/issue-13204.rs +tests/ui/issues/issue-13259-windows-tcb-trash.rs +tests/ui/issues/issue-13264.rs +tests/ui/issues/issue-13323.rs +tests/ui/issues/issue-13434.rs +tests/ui/issues/issue-13665.rs +tests/ui/issues/issue-13763.rs +tests/ui/issues/issue-13808.rs +tests/ui/issues/issue-13867.rs +tests/ui/issues/issue-14229.rs +tests/ui/issues/issue-14308.rs +tests/ui/issues/issue-14382.rs +tests/ui/issues/issue-14393.rs +tests/ui/issues/issue-14399.rs +tests/ui/issues/issue-14821.rs +tests/ui/issues/issue-14865.rs +tests/ui/issues/issue-14875.rs +tests/ui/issues/issue-14919.rs +tests/ui/issues/issue-15043.rs +tests/ui/issues/issue-15063.rs +tests/ui/issues/issue-15104.rs +tests/ui/issues/issue-15129-rpass.rs +tests/ui/issues/issue-15189.rs +tests/ui/issues/issue-15444.rs +tests/ui/issues/issue-15523-big.rs +tests/ui/issues/issue-15523.rs +tests/ui/issues/issue-15571.rs +tests/ui/issues/issue-15673.rs +tests/ui/issues/issue-15734.rs +tests/ui/issues/issue-15763.rs +tests/ui/issues/issue-15774.rs +tests/ui/issues/issue-15793.rs +tests/ui/issues/issue-15858.rs +tests/ui/issues/issue-16151.rs +tests/ui/issues/issue-16256.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16441.rs +tests/ui/issues/issue-16452.rs +tests/ui/issues/issue-16492.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18685.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-18952.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-21655.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2284.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-22992.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-24353.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25549-multiple-drop.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-3037.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30756.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-32805.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-3389.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36023.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36278-prefix-nesting.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36786-resolve-call.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-4333.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4734.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-47638.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5280.rs +tests/ui/issues/issue-5315.rs +tests/ui/issues/issue-5321-immediates-with-bare-self.rs +tests/ui/issues/issue-53333.rs +tests/ui/issues/issue-53728.rs +tests/ui/issues/issue-53843.rs +tests/ui/issues/issue-54462-mutable-noalias-correctness.rs +tests/ui/issues/issue-54477-reduced-2.rs +tests/ui/issues/issue-54696.rs +tests/ui/issues/issue-55380.rs +tests/ui/issues/issue-5550.rs +tests/ui/issues/issue-5554.rs +tests/ui/issues/issue-56237.rs +tests/ui/issues/issue-5666.rs +tests/ui/issues/issue-5688.rs +tests/ui/issues/issue-5708.rs +tests/ui/issues/issue-5718.rs +tests/ui/issues/issue-57198-pass.rs +tests/ui/issues/issue-5741.rs +tests/ui/issues/issue-58463.rs +tests/ui/issues/issue-59020.rs +tests/ui/issues/issue-5917.rs +tests/ui/issues/issue-5988.rs +tests/ui/issues/issue-5997-outer-generic-parameter/issue-5997.rs +tests/ui/issues/issue-6117.rs +tests/ui/issues/issue-6130.rs +tests/ui/issues/issue-61475.rs +tests/ui/issues/issue-6153.rs +tests/ui/issues/issue-61894.rs +tests/ui/issues/issue-6318.rs +tests/ui/issues/issue-6344-let.rs +tests/ui/issues/issue-6344-match.rs +tests/ui/issues/issue-68696-catch-during-unwind.rs +tests/ui/issues/issue-6892.rs +tests/ui/issues/issue-7012.rs +tests/ui/issues/issue-70673.rs +tests/ui/issues/issue-7344.rs +tests/ui/issues/issue-7519-match-unit-in-arg.rs +tests/ui/issues/issue-7563.rs +tests/ui/issues/issue-7575.rs +tests/ui/issues/issue-76042.rs +tests/ui/issues/issue-7660.rs +tests/ui/issues/issue-7663.rs +tests/ui/issues/issue-7784.rs +tests/ui/issues/issue-78192.rs +tests/ui/issues/issue-7911.rs +tests/ui/issues/issue-8248.rs +tests/ui/issues/issue-8249.rs +tests/ui/issues/issue-8391.rs +tests/ui/issues/issue-8498.rs +tests/ui/issues/issue-8783.rs +tests/ui/issues/issue-8860.rs +tests/ui/issues/issue-8898.rs +tests/ui/issues/issue-9047.rs +tests/ui/issues/issue-9129.rs +tests/ui/issues/issue-9259.rs +tests/ui/issues/issue-9446.rs +tests/ui/issues/issue-9737.rs +tests/ui/issues/issue-9837.rs +tests/ui/issues/issue-9918.rs +tests/ui/issues/issue-9942.rs +tests/ui/issues/issue-9951.rs +tests/ui/issues/issue-99838.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/temporary-lifetime-extension.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper_ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/log-poly.rs +tests/ui/loops/issue-1974.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/oom-panic-unwind.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/struct-ctor-mangling.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/large-records.rs +tests/ui/super.rs +tests/ui/swap-1.rs +tests/ui/swap-overlapping.rs +tests/ui/tail-call-arg-leak.rs +tests/ui/tail-cps.rs +tests/ui/target-feature/target-feature-detection.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/tcp-stress.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/trailing-comma.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute-non-immediate-to-immediate.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/trivial_casts-rpass.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-from-int-error-partial-eq.rs +tests/ui/try-operator-hygiene.rs +tests/ui/try-operator.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/tydesc-name.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-id-higher-rank-2.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type-namespace.rs +tests/ui/type-param-constraints.rs +tests/ui/type-ptr.rs +tests/ui/type-use-i1-versus-i8.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/typestate-multi-decl.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetimes.rs +tests/ui/underscore-method-after-integer.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unit.rs +tests/ui/unnamed_argument_mode.rs +tests/ui/unreachable-code-1.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/unused-move-capture.rs +tests/ui/unused-move.rs +tests/ui/unwind-no-uwtable.rs +tests/ui/use-import-export.rs +tests/ui/use-keyword-2.rs +tests/ui/use-module-level-int-consts.rs +tests/ui/use-nested-groups.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/weak-new-uninhabited-issue-48493.rs +tests/ui/weird-exprs.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/write-fmt-errors.rs +tests/ui/wrong-hashset-issue-42918.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-07-15.tsv b/tests/ui/overrides/nightly-2025-07-15.tsv new file mode 100644 index 00000000..636078b3 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-15.tsv @@ -0,0 +1,26 @@ +# Manual overrides for nightly-2025-07-15 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs diff --git a/tests/ui/overrides/nightly-2025-07-15/failing.tsv b/tests/ui/overrides/nightly-2025-07-15/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-15/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-07-15/passing.tsv b/tests/ui/overrides/nightly-2025-07-15/passing.tsv new file mode 100644 index 00000000..c221cc1f --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-15/passing.tsv @@ -0,0 +1,2704 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/supported-cast.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/syntax-edge-cases-lint-clean.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-10228.rs +tests/ui/issues/issue-10436.rs +tests/ui/issues/issue-10638.rs +tests/ui/issues/issue-10683.rs +tests/ui/issues/issue-10718.rs +tests/ui/issues/issue-10734.rs +tests/ui/issues/issue-10767.rs +tests/ui/issues/issue-10802.rs +tests/ui/issues/issue-10806.rs +tests/ui/issues/issue-11047.rs +tests/ui/issues/issue-11085.rs +tests/ui/issues/issue-11205.rs +tests/ui/issues/issue-11267.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-11709.rs +tests/ui/issues/issue-11820.rs +tests/ui/issues/issue-11958.rs +tests/ui/issues/issue-12033.rs +tests/ui/issues/issue-12285.rs +tests/ui/issues/issue-12677.rs +tests/ui/issues/issue-12744.rs +tests/ui/issues/issue-12860.rs +tests/ui/issues/issue-12909.rs +tests/ui/issues/issue-13027.rs +tests/ui/issues/issue-13204.rs +tests/ui/issues/issue-13259-windows-tcb-trash.rs +tests/ui/issues/issue-13264.rs +tests/ui/issues/issue-13323.rs +tests/ui/issues/issue-13434.rs +tests/ui/issues/issue-13665.rs +tests/ui/issues/issue-13763.rs +tests/ui/issues/issue-13808.rs +tests/ui/issues/issue-13867.rs +tests/ui/issues/issue-14229.rs +tests/ui/issues/issue-14308.rs +tests/ui/issues/issue-14382.rs +tests/ui/issues/issue-14393.rs +tests/ui/issues/issue-14399.rs +tests/ui/issues/issue-14821.rs +tests/ui/issues/issue-14865.rs +tests/ui/issues/issue-14875.rs +tests/ui/issues/issue-14919.rs +tests/ui/issues/issue-15043.rs +tests/ui/issues/issue-15063.rs +tests/ui/issues/issue-15104.rs +tests/ui/issues/issue-15129-rpass.rs +tests/ui/issues/issue-15189.rs +tests/ui/issues/issue-15444.rs +tests/ui/issues/issue-15523-big.rs +tests/ui/issues/issue-15523.rs +tests/ui/issues/issue-15571.rs +tests/ui/issues/issue-15673.rs +tests/ui/issues/issue-15734.rs +tests/ui/issues/issue-15763.rs +tests/ui/issues/issue-15774.rs +tests/ui/issues/issue-15793.rs +tests/ui/issues/issue-15858.rs +tests/ui/issues/issue-16151.rs +tests/ui/issues/issue-16256.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16441.rs +tests/ui/issues/issue-16452.rs +tests/ui/issues/issue-16492.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18685.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-18952.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-21655.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2284.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-22992.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-24353.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25549-multiple-drop.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-3037.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30756.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-32805.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-3389.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36023.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36278-prefix-nesting.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36786-resolve-call.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-4333.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4734.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-47638.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5280.rs +tests/ui/issues/issue-5315.rs +tests/ui/issues/issue-5321-immediates-with-bare-self.rs +tests/ui/issues/issue-53333.rs +tests/ui/issues/issue-53728.rs +tests/ui/issues/issue-53843.rs +tests/ui/issues/issue-54462-mutable-noalias-correctness.rs +tests/ui/issues/issue-54477-reduced-2.rs +tests/ui/issues/issue-54696.rs +tests/ui/issues/issue-55380.rs +tests/ui/issues/issue-5550.rs +tests/ui/issues/issue-5554.rs +tests/ui/issues/issue-56237.rs +tests/ui/issues/issue-5666.rs +tests/ui/issues/issue-5688.rs +tests/ui/issues/issue-5708.rs +tests/ui/issues/issue-5718.rs +tests/ui/issues/issue-57198-pass.rs +tests/ui/issues/issue-5741.rs +tests/ui/issues/issue-58463.rs +tests/ui/issues/issue-59020.rs +tests/ui/issues/issue-5917.rs +tests/ui/issues/issue-5988.rs +tests/ui/issues/issue-5997-outer-generic-parameter/issue-5997.rs +tests/ui/issues/issue-6117.rs +tests/ui/issues/issue-6130.rs +tests/ui/issues/issue-61475.rs +tests/ui/issues/issue-6153.rs +tests/ui/issues/issue-61894.rs +tests/ui/issues/issue-6318.rs +tests/ui/issues/issue-6344-let.rs +tests/ui/issues/issue-6344-match.rs +tests/ui/issues/issue-68696-catch-during-unwind.rs +tests/ui/issues/issue-6892.rs +tests/ui/issues/issue-7012.rs +tests/ui/issues/issue-70673.rs +tests/ui/issues/issue-7344.rs +tests/ui/issues/issue-7519-match-unit-in-arg.rs +tests/ui/issues/issue-7563.rs +tests/ui/issues/issue-7575.rs +tests/ui/issues/issue-76042.rs +tests/ui/issues/issue-7660.rs +tests/ui/issues/issue-7663.rs +tests/ui/issues/issue-7784.rs +tests/ui/issues/issue-78192.rs +tests/ui/issues/issue-7911.rs +tests/ui/issues/issue-8248.rs +tests/ui/issues/issue-8249.rs +tests/ui/issues/issue-8391.rs +tests/ui/issues/issue-8498.rs +tests/ui/issues/issue-8783.rs +tests/ui/issues/issue-8860.rs +tests/ui/issues/issue-8898.rs +tests/ui/issues/issue-9047.rs +tests/ui/issues/issue-9129.rs +tests/ui/issues/issue-9259.rs +tests/ui/issues/issue-9446.rs +tests/ui/issues/issue-9737.rs +tests/ui/issues/issue-9837.rs +tests/ui/issues/issue-9918.rs +tests/ui/issues/issue-9942.rs +tests/ui/issues/issue-9951.rs +tests/ui/issues/issue-99838.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/temporary-lifetime-extension.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper_ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/log-poly.rs +tests/ui/loops/issue-1974.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/oom-panic-unwind.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/struct-ctor-mangling.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/large-records.rs +tests/ui/target-feature/target-feature-detection.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/tcp-stress.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-07-26.tsv b/tests/ui/overrides/nightly-2025-07-26.tsv new file mode 100644 index 00000000..10c86e5f --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-26.tsv @@ -0,0 +1,26 @@ +# Manual overrides for nightly-2025-07-26 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs diff --git a/tests/ui/overrides/nightly-2025-07-26/failing.tsv b/tests/ui/overrides/nightly-2025-07-26/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-26/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-07-26/passing.tsv b/tests/ui/overrides/nightly-2025-07-26/passing.tsv new file mode 100644 index 00000000..a54dad8e --- /dev/null +++ b/tests/ui/overrides/nightly-2025-07-26/passing.tsv @@ -0,0 +1,2704 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/supported-cast.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/weird-exprs.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fmt/println-debug-different-types.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-10228.rs +tests/ui/issues/issue-10436.rs +tests/ui/issues/issue-10638.rs +tests/ui/issues/issue-10683.rs +tests/ui/issues/issue-10718.rs +tests/ui/issues/issue-10734.rs +tests/ui/issues/issue-10767.rs +tests/ui/issues/issue-10802.rs +tests/ui/issues/issue-10806.rs +tests/ui/issues/issue-11047.rs +tests/ui/issues/issue-11085.rs +tests/ui/issues/issue-11205.rs +tests/ui/issues/issue-11267.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-11709.rs +tests/ui/issues/issue-11820.rs +tests/ui/issues/issue-11958.rs +tests/ui/issues/issue-12033.rs +tests/ui/issues/issue-12285.rs +tests/ui/issues/issue-12677.rs +tests/ui/issues/issue-12744.rs +tests/ui/issues/issue-12860.rs +tests/ui/issues/issue-12909.rs +tests/ui/issues/issue-13027.rs +tests/ui/issues/issue-13204.rs +tests/ui/issues/issue-13259-windows-tcb-trash.rs +tests/ui/issues/issue-13264.rs +tests/ui/issues/issue-13323.rs +tests/ui/issues/issue-13434.rs +tests/ui/issues/issue-13665.rs +tests/ui/issues/issue-13763.rs +tests/ui/issues/issue-13808.rs +tests/ui/issues/issue-13867.rs +tests/ui/issues/issue-14229.rs +tests/ui/issues/issue-14308.rs +tests/ui/issues/issue-14382.rs +tests/ui/issues/issue-14393.rs +tests/ui/issues/issue-14399.rs +tests/ui/issues/issue-14821.rs +tests/ui/issues/issue-14865.rs +tests/ui/issues/issue-14875.rs +tests/ui/issues/issue-14919.rs +tests/ui/issues/issue-15043.rs +tests/ui/issues/issue-15063.rs +tests/ui/issues/issue-15104.rs +tests/ui/issues/issue-15129-rpass.rs +tests/ui/issues/issue-15189.rs +tests/ui/issues/issue-15444.rs +tests/ui/issues/issue-15523-big.rs +tests/ui/issues/issue-15523.rs +tests/ui/issues/issue-15571.rs +tests/ui/issues/issue-15673.rs +tests/ui/issues/issue-15734.rs +tests/ui/issues/issue-15763.rs +tests/ui/issues/issue-15774.rs +tests/ui/issues/issue-15793.rs +tests/ui/issues/issue-15858.rs +tests/ui/issues/issue-16151.rs +tests/ui/issues/issue-16256.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16441.rs +tests/ui/issues/issue-16452.rs +tests/ui/issues/issue-16492.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18685.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-18952.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-21655.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2284.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-22992.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-24353.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25549-multiple-drop.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-3037.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30756.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-32805.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-3389.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36023.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36278-prefix-nesting.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36786-resolve-call.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-4333.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4734.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-47638.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5280.rs +tests/ui/issues/issue-5315.rs +tests/ui/issues/issue-5321-immediates-with-bare-self.rs +tests/ui/issues/issue-53333.rs +tests/ui/issues/issue-53728.rs +tests/ui/issues/issue-53843.rs +tests/ui/issues/issue-54462-mutable-noalias-correctness.rs +tests/ui/issues/issue-54477-reduced-2.rs +tests/ui/issues/issue-54696.rs +tests/ui/issues/issue-55380.rs +tests/ui/issues/issue-5550.rs +tests/ui/issues/issue-5554.rs +tests/ui/issues/issue-56237.rs +tests/ui/issues/issue-5666.rs +tests/ui/issues/issue-5688.rs +tests/ui/issues/issue-5708.rs +tests/ui/issues/issue-5718.rs +tests/ui/issues/issue-57198-pass.rs +tests/ui/issues/issue-5741.rs +tests/ui/issues/issue-58463.rs +tests/ui/issues/issue-59020.rs +tests/ui/issues/issue-5917.rs +tests/ui/issues/issue-5988.rs +tests/ui/issues/issue-5997-outer-generic-parameter/issue-5997.rs +tests/ui/issues/issue-6117.rs +tests/ui/issues/issue-6130.rs +tests/ui/issues/issue-61475.rs +tests/ui/issues/issue-6153.rs +tests/ui/issues/issue-61894.rs +tests/ui/issues/issue-6318.rs +tests/ui/issues/issue-6344-let.rs +tests/ui/issues/issue-6344-match.rs +tests/ui/issues/issue-68696-catch-during-unwind.rs +tests/ui/issues/issue-6892.rs +tests/ui/issues/issue-7012.rs +tests/ui/issues/issue-70673.rs +tests/ui/issues/issue-7344.rs +tests/ui/issues/issue-7519-match-unit-in-arg.rs +tests/ui/issues/issue-7563.rs +tests/ui/issues/issue-7575.rs +tests/ui/issues/issue-76042.rs +tests/ui/issues/issue-7660.rs +tests/ui/issues/issue-7663.rs +tests/ui/issues/issue-7784.rs +tests/ui/issues/issue-78192.rs +tests/ui/issues/issue-7911.rs +tests/ui/issues/issue-8248.rs +tests/ui/issues/issue-8249.rs +tests/ui/issues/issue-8391.rs +tests/ui/issues/issue-8498.rs +tests/ui/issues/issue-8783.rs +tests/ui/issues/issue-8860.rs +tests/ui/issues/issue-8898.rs +tests/ui/issues/issue-9047.rs +tests/ui/issues/issue-9129.rs +tests/ui/issues/issue-9259.rs +tests/ui/issues/issue-9446.rs +tests/ui/issues/issue-9737.rs +tests/ui/issues/issue-9837.rs +tests/ui/issues/issue-9918.rs +tests/ui/issues/issue-9942.rs +tests/ui/issues/issue-9951.rs +tests/ui/issues/issue-99838.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/temporary-lifetime-extension.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper_ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/loops/issue-1974.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/oom-panic-unwind.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/large-records.rs +tests/ui/symbol-names/struct-constructor-mangling.rs +tests/ui/target-feature/target-feature-detection.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/tcp-stress.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-09-19.tsv b/tests/ui/overrides/nightly-2025-09-19.tsv new file mode 100644 index 00000000..78eeaa71 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-09-19.tsv @@ -0,0 +1,26 @@ +# Manual overrides for nightly-2025-09-19 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs diff --git a/tests/ui/overrides/nightly-2025-09-19/failing.tsv b/tests/ui/overrides/nightly-2025-09-19/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-09-19/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-09-19/passing.tsv b/tests/ui/overrides/nightly-2025-09-19/passing.tsv new file mode 100644 index 00000000..d41671d8 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-09-19/passing.tsv @@ -0,0 +1,2699 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/fixed-length-vector-pattern-matching-7784.rs +tests/ui/array-slice-vec/fixed-size-arrays-zero-size-types-8898.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/array-slice-vec/vector-slice-matching-8498.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoderef-vec-box-fn-36786.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/autoref-autoderef/deref-chain-method-calls-13264.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-at-binding-8391.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/ref-pattern-drop-behavior-8860.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/block-result/blocks-without-results-11709.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/incorrect-loan-error-on-local-update-5550.rs +tests/ui/borrowck/incorrect-use-after-storage-end-78192.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/refcell-borrow-comparison-12033.rs +tests/ui/borrowck/region-checker-map-closure-13665.rs +tests/ui/borrowck/rvalue-lifetime-match-equivalence-7660.rs +tests/ui/borrowck/struct-with-reference-to-trait-5708.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/constant-expression-cast-9942.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/owned-struct-to-trait-cast-6318.rs +tests/ui/cast/supported-cast.rs +tests/ui/cast/trait-object-cast-segfault-4333.rs +tests/ui/cast/u8-to-char-cast-9918.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compilation-struct-11085.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/boxed-closure-lifetime-13808.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/closure-mut-argument-6153.rs +tests/ui/closures/closure-type-inference-in-context-9129.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/moved-upvar-mut-rebind-11958.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/closures/unused-closure-ice-16256.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/dynamic-size-of-prefix-correctly-36278.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/i128-shift-overflow-check-76042.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/llvm-miscompile-metadata-invalidation-36023.rs +tests/ui/codegen/matrix-row-swap-54462.rs +tests/ui/codegen/nested-enum-match-optimization-15793.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/static-array-comparison-7012.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/any-trait-object-debug-12744.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-mut-trait-object-8248.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/method-return-trait-object-14399.rs +tests/ui/coercion/trait-object-arrays-11205.rs +tests/ui/coercion/trait-object-coercion-distribution-9951.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/collections/hashset-connected-border-12860.rs +tests/ui/collections/vecdeque-append-operation-54477.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/module-const-array-size-13763.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/impl-copy-function-debuginfo-58463.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/deref/dereferenceable-type-behavior-22992.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord-discriminant-64bit.rs +tests/ui/derives/derive-partial-ord-discriminant.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/conditional-drop-10734.rs +tests/ui/drop/destructor-run-for-expression-4734.rs +tests/ui/drop/destructor-run-for-let-ignore-6892.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-count-assertion-16151.rs +tests/ui/drop/drop-immediate-non-box-ty-9446.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/enum-drop-impl-15063.rs +tests/ui/drop/generic-drop-trait-bound-15858.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/multiple-drop-safe-code-25549.rs +tests/ui/drop/nested-return-drop-order.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/panic-during-drop-14875.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/struct-field-drop-order.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/drop/trait-object-drop-10802.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/edition-specific-identifier-shadowing-53333.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/enum-discriminant-const-eval-truncation-9837.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/enum-with-generic-parameter-5997.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/enum/match-either-enum-variants-6117.rs +tests/ui/enum/zero-variant-enum-pattern-matching-3037.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/weird-exprs.rs +tests/ui/extern/empty-struct-extern-fn-16441.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fmt/println-debug-different-types.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-54696.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-associated-type-deref-target-56237.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/enum-variant-import-path-15774.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-declaration-no-path-segment-prefix.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/collection-type-copy-behavior-12909.rs +tests/ui/inference/fnonce-closure-call.rs +tests/ui/inference/generic-type-inference-10436.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/matcher-lifetime-inference-14919.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5315.rs +tests/ui/issues/issue-61475.rs +tests/ui/issues/issue-61894.rs +tests/ui/issues/issue-68696-catch-during-unwind.rs +tests/ui/issues/issue-70673.rs +tests/ui/iterators/bytes-iterator-clone-12677.rs +tests/ui/iterators/for-loop-over-mut-iterator-21655.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/iterator-type-inference-sum-15673.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/keyword/raw-identifier-for-function-57198.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/enum-lifetime-container-10228.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/matcher-trait-equality-13323.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/struct-with-lifetime-parameters-9259.rs +tests/ui/lifetimes/temporary-lifetime-extension.rs +tests/ui/lifetimes/trait-object-constructor-14821.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper-ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/loops/issue-1974.rs +tests/ui/loops/loop-with-label-9047.rs +tests/ui/loops/unreachable-while-loop-5741.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/for-loop-macro-rules-hygiene.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-invocation-with-variable-in-scope-9737.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-self-mutability-7911.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-variable-declaration-with-bounds-5554.rs +tests/ui/macros/macro-variable-unused-reporting-5718.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guard-pattern-ordering-14865.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/multiple-refutable-patterns-13867.rs +tests/ui/match/overeager-sub-match-pruning-13027.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/match/struct-reference-patterns-12285.rs +tests/ui/match/tuple-usize-pattern-14393.rs +tests/ui/methods/inherent-method-resolution-on-deref-type-53843.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/methods/trait-method-resolution-7575.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/modules/use-statement-duplicate-check-7663.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/match-move-same-binding-15571.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/f32-literal-rounding-32805.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/numeric/type-limit-comparisons-6130.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/misaligned-reference-drop-field-99838.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/oom-panic-unwind.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/doc-comment-parsing.rs +tests/ui/parser/generics-rangle-eq-15043.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/premature-match-scrutinee-temporary-drop-10683.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/slice-pattern-recursion-15104.rs +tests/ui/pattern/struct-wildcard-pattern-14308.rs +tests/ui/pattern/tuple-enum-match-15129.rs +tests/ui/pattern/unit-pattern-matching-in-function-argument-7519.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/packed-struct-with-enum-53728.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/reference-clone-nonclone-11820.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/early-return-with-unreachable-code-24353.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/trait-specialization-default-methods-55380.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/static/static-list-initialization-5917.rs +tests/ui/static/static-struct-initialization-5688.rs +tests/ui/statics/conditional-static-declaration-16010.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/park-timeout-wakeup-59020.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/destructuring-struct-type-inference-8783.rs +tests/ui/structs/destructuring-struct-with-dtor-6344.rs +tests/ui/structs/large-records.rs +tests/ui/structs/mutable-unit-struct-borrow-11267.rs +tests/ui/structs/trie-node-structure-usage-3389.rs +tests/ui/symbol-names/struct-constructor-mangling.rs +tests/ui/target-feature/target-feature-detection.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/thread-local-with-attributes-30756.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/trait-objects/trait-object-lifetime-conversion-47638.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method-lifetime-params-13204.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/dynamic-dispatch-trait-objects-5666.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/fn-type-trait-impl-15444.rs +tests/ui/traits/fnonce-repro-trait-impl-13434.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/impl-trait-chain-14229.rs +tests/ui/traits/index-trait-multiple-impls-15734.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/mut-trait-in-struct-8249.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-implementation-for-primitive-type-5280.rs +tests/ui/traits/trait-implementation-for-usize-5321.rs +tests/ui/traits/trait-implementation-restriction-5988.rs +tests/ui/traits/trait-object-lifetime-bounds-7563.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-alias/static-method-type-alias-11047.rs +tests/ui/type-inference/float-type-inference-unification-14382.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/fn-traits-overloading-arity-18952.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/self-param-space-conflict-in-unboxed-closure-18685.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unreachable-code/boolean-negation-in-unreachable-code-7344.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-10-03.tsv b/tests/ui/overrides/nightly-2025-10-03.tsv new file mode 100644 index 00000000..6e298915 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-10-03.tsv @@ -0,0 +1,26 @@ +# Manual overrides for nightly-2025-10-03 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs diff --git a/tests/ui/overrides/nightly-2025-10-03/failing.tsv b/tests/ui/overrides/nightly-2025-10-03/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-10-03/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-10-03/passing.tsv b/tests/ui/overrides/nightly-2025-10-03/passing.tsv new file mode 100644 index 00000000..d41671d8 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-10-03/passing.tsv @@ -0,0 +1,2699 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/fixed-length-vector-pattern-matching-7784.rs +tests/ui/array-slice-vec/fixed-size-arrays-zero-size-types-8898.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/array-slice-vec/vector-slice-matching-8498.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoderef-vec-box-fn-36786.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/autoref-autoderef/deref-chain-method-calls-13264.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-at-binding-8391.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/ref-pattern-drop-behavior-8860.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/block-result/blocks-without-results-11709.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/incorrect-loan-error-on-local-update-5550.rs +tests/ui/borrowck/incorrect-use-after-storage-end-78192.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/refcell-borrow-comparison-12033.rs +tests/ui/borrowck/region-checker-map-closure-13665.rs +tests/ui/borrowck/rvalue-lifetime-match-equivalence-7660.rs +tests/ui/borrowck/struct-with-reference-to-trait-5708.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/constant-expression-cast-9942.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/owned-struct-to-trait-cast-6318.rs +tests/ui/cast/supported-cast.rs +tests/ui/cast/trait-object-cast-segfault-4333.rs +tests/ui/cast/u8-to-char-cast-9918.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compilation-struct-11085.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/boxed-closure-lifetime-13808.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/closure-mut-argument-6153.rs +tests/ui/closures/closure-type-inference-in-context-9129.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/moved-upvar-mut-rebind-11958.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/closures/unused-closure-ice-16256.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/dynamic-size-of-prefix-correctly-36278.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/i128-shift-overflow-check-76042.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/llvm-miscompile-metadata-invalidation-36023.rs +tests/ui/codegen/matrix-row-swap-54462.rs +tests/ui/codegen/nested-enum-match-optimization-15793.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/static-array-comparison-7012.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/any-trait-object-debug-12744.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-mut-trait-object-8248.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/method-return-trait-object-14399.rs +tests/ui/coercion/trait-object-arrays-11205.rs +tests/ui/coercion/trait-object-coercion-distribution-9951.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/collections/hashset-connected-border-12860.rs +tests/ui/collections/vecdeque-append-operation-54477.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/module-const-array-size-13763.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/impl-copy-function-debuginfo-58463.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/deref/dereferenceable-type-behavior-22992.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord-discriminant-64bit.rs +tests/ui/derives/derive-partial-ord-discriminant.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/conditional-drop-10734.rs +tests/ui/drop/destructor-run-for-expression-4734.rs +tests/ui/drop/destructor-run-for-let-ignore-6892.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-count-assertion-16151.rs +tests/ui/drop/drop-immediate-non-box-ty-9446.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/enum-drop-impl-15063.rs +tests/ui/drop/generic-drop-trait-bound-15858.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/multiple-drop-safe-code-25549.rs +tests/ui/drop/nested-return-drop-order.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/panic-during-drop-14875.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/struct-field-drop-order.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/drop/trait-object-drop-10802.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/edition-specific-identifier-shadowing-53333.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/enum-discriminant-const-eval-truncation-9837.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/enum-with-generic-parameter-5997.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/enum/match-either-enum-variants-6117.rs +tests/ui/enum/zero-variant-enum-pattern-matching-3037.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/weird-exprs.rs +tests/ui/extern/empty-struct-extern-fn-16441.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fmt/println-debug-different-types.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-54696.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-associated-type-deref-target-56237.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/enum-variant-import-path-15774.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-declaration-no-path-segment-prefix.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/collection-type-copy-behavior-12909.rs +tests/ui/inference/fnonce-closure-call.rs +tests/ui/inference/generic-type-inference-10436.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/matcher-lifetime-inference-14919.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5315.rs +tests/ui/issues/issue-61475.rs +tests/ui/issues/issue-61894.rs +tests/ui/issues/issue-68696-catch-during-unwind.rs +tests/ui/issues/issue-70673.rs +tests/ui/iterators/bytes-iterator-clone-12677.rs +tests/ui/iterators/for-loop-over-mut-iterator-21655.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/iterator-type-inference-sum-15673.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/keyword/raw-identifier-for-function-57198.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/enum-lifetime-container-10228.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/matcher-trait-equality-13323.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/struct-with-lifetime-parameters-9259.rs +tests/ui/lifetimes/temporary-lifetime-extension.rs +tests/ui/lifetimes/trait-object-constructor-14821.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper-ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/loops/issue-1974.rs +tests/ui/loops/loop-with-label-9047.rs +tests/ui/loops/unreachable-while-loop-5741.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/for-loop-macro-rules-hygiene.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-invocation-with-variable-in-scope-9737.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-self-mutability-7911.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-variable-declaration-with-bounds-5554.rs +tests/ui/macros/macro-variable-unused-reporting-5718.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guard-pattern-ordering-14865.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/multiple-refutable-patterns-13867.rs +tests/ui/match/overeager-sub-match-pruning-13027.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/match/struct-reference-patterns-12285.rs +tests/ui/match/tuple-usize-pattern-14393.rs +tests/ui/methods/inherent-method-resolution-on-deref-type-53843.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/methods/trait-method-resolution-7575.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/modules/use-statement-duplicate-check-7663.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/match-move-same-binding-15571.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/f32-literal-rounding-32805.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/numeric/type-limit-comparisons-6130.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/misaligned-reference-drop-field-99838.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/oom-panic-unwind.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/doc-comment-parsing.rs +tests/ui/parser/generics-rangle-eq-15043.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/premature-match-scrutinee-temporary-drop-10683.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/slice-pattern-recursion-15104.rs +tests/ui/pattern/struct-wildcard-pattern-14308.rs +tests/ui/pattern/tuple-enum-match-15129.rs +tests/ui/pattern/unit-pattern-matching-in-function-argument-7519.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/packed-struct-with-enum-53728.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/reference-clone-nonclone-11820.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/early-return-with-unreachable-code-24353.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/trait-specialization-default-methods-55380.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/static/static-list-initialization-5917.rs +tests/ui/static/static-struct-initialization-5688.rs +tests/ui/statics/conditional-static-declaration-16010.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/park-timeout-wakeup-59020.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/destructuring-struct-type-inference-8783.rs +tests/ui/structs/destructuring-struct-with-dtor-6344.rs +tests/ui/structs/large-records.rs +tests/ui/structs/mutable-unit-struct-borrow-11267.rs +tests/ui/structs/trie-node-structure-usage-3389.rs +tests/ui/symbol-names/struct-constructor-mangling.rs +tests/ui/target-feature/target-feature-detection.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/thread-local-with-attributes-30756.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/trait-objects/trait-object-lifetime-conversion-47638.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method-lifetime-params-13204.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/dynamic-dispatch-trait-objects-5666.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/fn-type-trait-impl-15444.rs +tests/ui/traits/fnonce-repro-trait-impl-13434.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/impl-trait-chain-14229.rs +tests/ui/traits/index-trait-multiple-impls-15734.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/mut-trait-in-struct-8249.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-implementation-for-primitive-type-5280.rs +tests/ui/traits/trait-implementation-for-usize-5321.rs +tests/ui/traits/trait-implementation-restriction-5988.rs +tests/ui/traits/trait-object-lifetime-bounds-7563.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-alias/static-method-type-alias-11047.rs +tests/ui/type-inference/float-type-inference-unification-14382.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/fn-traits-overloading-arity-18952.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/self-param-space-conflict-in-unboxed-closure-18685.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unreachable-code/boolean-negation-in-unreachable-code-7344.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-10-12.tsv b/tests/ui/overrides/nightly-2025-10-12.tsv new file mode 100644 index 00000000..58a19de6 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-10-12.tsv @@ -0,0 +1,26 @@ +# Manual overrides for nightly-2025-10-12 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs diff --git a/tests/ui/overrides/nightly-2025-10-12/failing.tsv b/tests/ui/overrides/nightly-2025-10-12/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-10-12/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-10-12/passing.tsv b/tests/ui/overrides/nightly-2025-10-12/passing.tsv new file mode 100644 index 00000000..d41671d8 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-10-12/passing.tsv @@ -0,0 +1,2699 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/fixed-length-vector-pattern-matching-7784.rs +tests/ui/array-slice-vec/fixed-size-arrays-zero-size-types-8898.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/array-slice-vec/vector-slice-matching-8498.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoderef-vec-box-fn-36786.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/autoref-autoderef/deref-chain-method-calls-13264.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-at-binding-8391.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/ref-pattern-drop-behavior-8860.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/block-result/blocks-without-results-11709.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/incorrect-loan-error-on-local-update-5550.rs +tests/ui/borrowck/incorrect-use-after-storage-end-78192.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/refcell-borrow-comparison-12033.rs +tests/ui/borrowck/region-checker-map-closure-13665.rs +tests/ui/borrowck/rvalue-lifetime-match-equivalence-7660.rs +tests/ui/borrowck/struct-with-reference-to-trait-5708.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/constant-expression-cast-9942.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/owned-struct-to-trait-cast-6318.rs +tests/ui/cast/supported-cast.rs +tests/ui/cast/trait-object-cast-segfault-4333.rs +tests/ui/cast/u8-to-char-cast-9918.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compilation-struct-11085.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/boxed-closure-lifetime-13808.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/closure-mut-argument-6153.rs +tests/ui/closures/closure-type-inference-in-context-9129.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/moved-upvar-mut-rebind-11958.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/closures/unused-closure-ice-16256.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/dynamic-size-of-prefix-correctly-36278.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/i128-shift-overflow-check-76042.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/llvm-miscompile-metadata-invalidation-36023.rs +tests/ui/codegen/matrix-row-swap-54462.rs +tests/ui/codegen/nested-enum-match-optimization-15793.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/static-array-comparison-7012.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/any-trait-object-debug-12744.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-mut-trait-object-8248.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/method-return-trait-object-14399.rs +tests/ui/coercion/trait-object-arrays-11205.rs +tests/ui/coercion/trait-object-coercion-distribution-9951.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/collections/hashset-connected-border-12860.rs +tests/ui/collections/vecdeque-append-operation-54477.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/module-const-array-size-13763.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/impl-copy-function-debuginfo-58463.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/deref/dereferenceable-type-behavior-22992.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord-discriminant-64bit.rs +tests/ui/derives/derive-partial-ord-discriminant.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/conditional-drop-10734.rs +tests/ui/drop/destructor-run-for-expression-4734.rs +tests/ui/drop/destructor-run-for-let-ignore-6892.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-count-assertion-16151.rs +tests/ui/drop/drop-immediate-non-box-ty-9446.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/enum-drop-impl-15063.rs +tests/ui/drop/generic-drop-trait-bound-15858.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/multiple-drop-safe-code-25549.rs +tests/ui/drop/nested-return-drop-order.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/panic-during-drop-14875.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/struct-field-drop-order.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/drop/trait-object-drop-10802.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/edition-specific-identifier-shadowing-53333.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/enum-discriminant-const-eval-truncation-9837.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/enum-with-generic-parameter-5997.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/enum/match-either-enum-variants-6117.rs +tests/ui/enum/zero-variant-enum-pattern-matching-3037.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/weird-exprs.rs +tests/ui/extern/empty-struct-extern-fn-16441.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fmt/println-debug-different-types.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-54696.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-associated-type-deref-target-56237.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/enum-variant-import-path-15774.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-declaration-no-path-segment-prefix.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/collection-type-copy-behavior-12909.rs +tests/ui/inference/fnonce-closure-call.rs +tests/ui/inference/generic-type-inference-10436.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/matcher-lifetime-inference-14919.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5315.rs +tests/ui/issues/issue-61475.rs +tests/ui/issues/issue-61894.rs +tests/ui/issues/issue-68696-catch-during-unwind.rs +tests/ui/issues/issue-70673.rs +tests/ui/iterators/bytes-iterator-clone-12677.rs +tests/ui/iterators/for-loop-over-mut-iterator-21655.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/iterator-type-inference-sum-15673.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/keyword/raw-identifier-for-function-57198.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/enum-lifetime-container-10228.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/matcher-trait-equality-13323.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/struct-with-lifetime-parameters-9259.rs +tests/ui/lifetimes/temporary-lifetime-extension.rs +tests/ui/lifetimes/trait-object-constructor-14821.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper-ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/loops/issue-1974.rs +tests/ui/loops/loop-with-label-9047.rs +tests/ui/loops/unreachable-while-loop-5741.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/for-loop-macro-rules-hygiene.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-invocation-with-variable-in-scope-9737.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-self-mutability-7911.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-variable-declaration-with-bounds-5554.rs +tests/ui/macros/macro-variable-unused-reporting-5718.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guard-pattern-ordering-14865.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/multiple-refutable-patterns-13867.rs +tests/ui/match/overeager-sub-match-pruning-13027.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/match/struct-reference-patterns-12285.rs +tests/ui/match/tuple-usize-pattern-14393.rs +tests/ui/methods/inherent-method-resolution-on-deref-type-53843.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/methods/trait-method-resolution-7575.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/modules/use-statement-duplicate-check-7663.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/match-move-same-binding-15571.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/f32-literal-rounding-32805.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/numeric/type-limit-comparisons-6130.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/misaligned-reference-drop-field-99838.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/oom-panic-unwind.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/doc-comment-parsing.rs +tests/ui/parser/generics-rangle-eq-15043.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/premature-match-scrutinee-temporary-drop-10683.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/slice-pattern-recursion-15104.rs +tests/ui/pattern/struct-wildcard-pattern-14308.rs +tests/ui/pattern/tuple-enum-match-15129.rs +tests/ui/pattern/unit-pattern-matching-in-function-argument-7519.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/packed-struct-with-enum-53728.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/reference-clone-nonclone-11820.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/early-return-with-unreachable-code-24353.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/trait-specialization-default-methods-55380.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/static/static-list-initialization-5917.rs +tests/ui/static/static-struct-initialization-5688.rs +tests/ui/statics/conditional-static-declaration-16010.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/park-timeout-wakeup-59020.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/destructuring-struct-type-inference-8783.rs +tests/ui/structs/destructuring-struct-with-dtor-6344.rs +tests/ui/structs/large-records.rs +tests/ui/structs/mutable-unit-struct-borrow-11267.rs +tests/ui/structs/trie-node-structure-usage-3389.rs +tests/ui/symbol-names/struct-constructor-mangling.rs +tests/ui/target-feature/target-feature-detection.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/thread-local-with-attributes-30756.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/trait-objects/trait-object-lifetime-conversion-47638.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method-lifetime-params-13204.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/dynamic-dispatch-trait-objects-5666.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/fn-type-trait-impl-15444.rs +tests/ui/traits/fnonce-repro-trait-impl-13434.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/impl-trait-chain-14229.rs +tests/ui/traits/index-trait-multiple-impls-15734.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/mut-trait-in-struct-8249.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-implementation-for-primitive-type-5280.rs +tests/ui/traits/trait-implementation-for-usize-5321.rs +tests/ui/traits/trait-implementation-restriction-5988.rs +tests/ui/traits/trait-object-lifetime-bounds-7563.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-alias/static-method-type-alias-11047.rs +tests/ui/type-inference/float-type-inference-unification-14382.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/fn-traits-overloading-arity-18952.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/self-param-space-conflict-in-unboxed-closure-18685.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unreachable-code/boolean-negation-in-unreachable-code-7344.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-11-19.tsv b/tests/ui/overrides/nightly-2025-11-19.tsv new file mode 100644 index 00000000..e23605a1 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-11-19.tsv @@ -0,0 +1,29 @@ +# Manual overrides for nightly-2025-11-19 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs +# Upstream changed temporary-lifetime-extension.rs; new source fails to compile +# (rustc exit 101, not a driver bug). +skip tests/ui/lifetimes/temporary-lifetime-extension.rs diff --git a/tests/ui/overrides/nightly-2025-11-19/failing.tsv b/tests/ui/overrides/nightly-2025-11-19/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-11-19/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-11-19/passing.tsv b/tests/ui/overrides/nightly-2025-11-19/passing.tsv new file mode 100644 index 00000000..17d49be1 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-11-19/passing.tsv @@ -0,0 +1,2753 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/homogenous-floats-target-feature-mixup.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/segfault-no-out-of-stack.rs +tests/ui/abi/stack-probes.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/alloc-error/default-alloc-error-hook.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/fixed-length-vector-pattern-matching-7784.rs +tests/ui/array-slice-vec/fixed-size-arrays-zero-size-types-8898.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/array-slice-vec/vector-slice-matching-8498.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoderef-vec-box-fn-36786.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/autoref-autoderef/deref-chain-method-calls-13264.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/backtrace.rs +tests/ui/backtrace/std-backtrace.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-at-binding-8391.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/ref-pattern-drop-behavior-8860.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/block-result/blocks-without-results-11709.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/incorrect-loan-error-on-local-update-5550.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/pointer-reassignment-after-deref-78192.rs +tests/ui/borrowck/refcell-borrow-comparison-12033.rs +tests/ui/borrowck/region-checker-map-closure-13665.rs +tests/ui/borrowck/rvalue-lifetime-match-equivalence-7660.rs +tests/ui/borrowck/struct-with-reference-to-trait-5708.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/constant-expression-cast-9942.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/owned-struct-to-trait-cast-6318.rs +tests/ui/cast/supported-cast.rs +tests/ui/cast/trait-object-cast-segfault-4333.rs +tests/ui/cast/u8-to-char-cast-9918.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compilation-struct-11085.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/boxed-closure-lifetime-13808.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/closure-mut-argument-6153.rs +tests/ui/closures/closure-type-inference-in-context-9129.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/closures/unused-closure-ice-16256.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/dynamic-size-of-prefix-correctly-36278.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/i128-shift-overflow-check-76042.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/llvm-miscompile-metadata-invalidation-36023.rs +tests/ui/codegen/matrix-row-swap-54462.rs +tests/ui/codegen/nested-enum-match-optimization-15793.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/static-array-comparison-7012.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/any-trait-object-debug-12744.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-mut-trait-object-8248.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/method-return-trait-object-14399.rs +tests/ui/coercion/trait-object-arrays-11205.rs +tests/ui/coercion/trait-object-coercion-distribution-9951.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/collections/hashset-connected-border-12860.rs +tests/ui/collections/vecdeque-append-operation-54477.rs +tests/ui/command/command-argv0.rs +tests/ui/command/command-current-dir.rs +tests/ui/command/command-exec.rs +tests/ui/command/command-pre-exec.rs +tests/ui/command/command-setgroups.rs +tests/ui/command/command-uid-gid.rs +tests/ui/command/issue-10626.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/module-const-array-size-13763.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/impl-copy-function-debuginfo-58463.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/deref/dereferenceable-type-behavior-22992.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord-discriminant-64bit.rs +tests/ui/derives/derive-partial-ord-discriminant.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/conditional-drop-10734.rs +tests/ui/drop/destructor-run-for-expression-4734.rs +tests/ui/drop/destructor-run-for-let-ignore-6892.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-count-assertion-16151.rs +tests/ui/drop/drop-immediate-non-box-ty-9446.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/enum-drop-impl-15063.rs +tests/ui/drop/generic-drop-trait-bound-15858.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/multiple-drop-safe-code-25549.rs +tests/ui/drop/nested-return-drop-order.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/panic-during-drop-14875.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/struct-field-drop-order.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/drop/trait-object-drop-10802.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/edition-specific-identifier-shadowing-53333.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/enum-discriminant-const-eval-truncation-9837.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/enum-with-generic-parameter-5997.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/enum/match-either-enum-variants-6117.rs +tests/ui/enum/zero-variant-enum-pattern-matching-3037.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/weird-exprs.rs +tests/ui/extern/empty-struct-extern-fn-16441.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fmt/println-debug-different-types.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-54696.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-associated-type-deref-target-56237.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/enum-variant-import-path-15774.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-declaration-no-path-segment-prefix.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/collection-type-copy-behavior-12909.rs +tests/ui/inference/fnonce-closure-call.rs +tests/ui/inference/generic-type-inference-10436.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/matcher-lifetime-inference-14919.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/intrinsics/panic-uninitialized-zeroed.rs +tests/ui/io-checks/io-stdout-blocking-writes.rs +tests/ui/io-checks/stdout-stderr-separation.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3109.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-33770.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5315.rs +tests/ui/iterators/bytes-iterator-clone-12677.rs +tests/ui/iterators/for-loop-over-mut-iterator-21655.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/iterator-type-inference-sum-15673.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/keyword/raw-identifier-for-function-57198.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/enum-lifetime-container-10228.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/matcher-trait-equality-13323.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/struct-with-lifetime-parameters-9259.rs +tests/ui/lifetimes/tail-expr-lock-poisoning.rs +tests/ui/lifetimes/trait-object-constructor-14821.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper-ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/loops/issue-1974.rs +tests/ui/loops/loop-with-label-9047.rs +tests/ui/loops/unreachable-while-loop-5741.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/for-loop-macro-rules-hygiene.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-invocation-with-variable-in-scope-9737.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-self-mutability-7911.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-variable-declaration-with-bounds-5554.rs +tests/ui/macros/macro-variable-unused-reporting-5718.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guard-pattern-ordering-14865.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/multiple-refutable-patterns-13867.rs +tests/ui/match/overeager-sub-match-pruning-13027.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/match/struct-reference-patterns-12285.rs +tests/ui/match/tuple-usize-pattern-14393.rs +tests/ui/methods/inherent-method-resolution-on-deref-type-53843.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/methods/trait-method-resolution-7575.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/modules/use-statement-duplicate-check-7663.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/match-move-same-binding-15571.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/never_type/try_from.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/f32-literal-rounding-32805.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/numeric/type-limit-comparisons-6130.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/misaligned-reference-drop-field-99838.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-handler/catch-unwind-during-unwind-68696.rs +tests/ui/panic-runtime/abort.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panic-runtime/lto-abort.rs +tests/ui/panic-runtime/lto-unwind.rs +tests/ui/panics/abort-on-panic.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/oom-panic-unwind.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/doc-comment-parsing.rs +tests/ui/parser/generics-rangle-eq-15043.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/pattern-matching-with-double-references-61475.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/premature-match-scrutinee-temporary-drop-10683.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/slice-pattern-recursion-15104.rs +tests/ui/pattern/struct-wildcard-pattern-14308.rs +tests/ui/pattern/tuple-enum-match-15129.rs +tests/ui/pattern/unit-pattern-matching-in-function-argument-7519.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-args-reverse-iterator.rs +tests/ui/process/env-funky-keys.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/fds-are-cloexec.rs +tests/ui/process/inherit-env.rs +tests/ui/process/issue-13304.rs +tests/ui/process/issue-14456.rs +tests/ui/process/issue-14940.rs +tests/ui/process/issue-16272.rs +tests/ui/process/issue-30490.rs +tests/ui/process/multi-panic.rs +tests/ui/process/no-stdio.rs +tests/ui/process/nofile-limit.rs +tests/ui/process/println-with-broken-pipe.rs +tests/ui/process/process-envs.rs +tests/ui/process/process-exit.rs +tests/ui/process/process-panic-after-fork.rs +tests/ui/process/process-remove-from-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/process/process-spawn-nonexistent.rs +tests/ui/process/process-spawn-with-unicode-params.rs +tests/ui/process/process-status-inherits-stdin.rs +tests/ui/process/signal-exit-status.rs +tests/ui/process/sigpipe-should-be-ignored.rs +tests/ui/process/try-wait.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/packed-struct-with-enum-53728.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/reference-clone-nonclone-11820.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/early-return-with-unreachable-code-24353.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/atomic-print.rs +tests/ui/runtime/backtrace-debuginfo.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/on-broken-pipe/inherit.rs +tests/ui/runtime/out-of-stack.rs +tests/ui/runtime/rt-explody-panic-payloads.rs +tests/ui/runtime/signal-alternate-stack-cleanup.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-unix.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/sanitizer/issue-72154-address-lifetime-markers.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/target-feature-mixup.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/trait-specialization-default-methods-55380.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/static/static-list-initialization-5917.rs +tests/ui/static/static-struct-initialization-5688.rs +tests/ui/statics/conditional-static-declaration-16010.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/park-timeout-wakeup-59020.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/destructuring-struct-type-inference-8783.rs +tests/ui/structs/destructuring-struct-with-dtor-6344.rs +tests/ui/structs/large-records.rs +tests/ui/structs/mutable-unit-struct-borrow-11267.rs +tests/ui/structs/trie-node-structure-usage-3389.rs +tests/ui/symbol-names/struct-constructor-mangling.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/thread-local-static-reference-70673.rs +tests/ui/thread-local/thread-local-with-attributes-30756.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/eprint-on-tls-drop.rs +tests/ui/threads-sendsync/issue-24313.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/trait-objects/trait-object-lifetime-conversion-47638.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method-lifetime-params-13204.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/dynamic-dispatch-trait-objects-5666.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/fn-type-trait-impl-15444.rs +tests/ui/traits/fnonce-repro-trait-impl-13434.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/impl-trait-chain-14229.rs +tests/ui/traits/index-trait-multiple-impls-15734.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/mut-trait-in-struct-8249.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-implementation-for-primitive-type-5280.rs +tests/ui/traits/trait-implementation-for-usize-5321.rs +tests/ui/traits/trait-implementation-restriction-5988.rs +tests/ui/traits/trait-object-lifetime-bounds-7563.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-alias/static-method-type-alias-11047.rs +tests/ui/type-inference/float-type-inference-unification-14382.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/type-name-intrinsic-usage-61894.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/fn-traits-overloading-arity-18952.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/self-param-space-conflict-in-unboxed-closure-18685.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unreachable-code/boolean-negation-in-unreachable-code-7344.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/while/while-let-scope-issue-40235.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-12-06.tsv b/tests/ui/overrides/nightly-2025-12-06.tsv new file mode 100644 index 00000000..24060ff0 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-12-06.tsv @@ -0,0 +1,29 @@ +# Manual overrides for nightly-2025-12-06 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs +# Upstream changed temporary-lifetime-extension.rs; new source fails to compile +# (rustc exit 101, not a driver bug). +skip tests/ui/lifetimes/temporary-lifetime-extension.rs diff --git a/tests/ui/overrides/nightly-2025-12-06/failing.tsv b/tests/ui/overrides/nightly-2025-12-06/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-12-06/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-12-06/passing.tsv b/tests/ui/overrides/nightly-2025-12-06/passing.tsv new file mode 100644 index 00000000..9de00d08 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-12-06/passing.tsv @@ -0,0 +1,2752 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/homogenous-floats-target-feature-mixup.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/segfault-no-out-of-stack.rs +tests/ui/abi/stack-probes.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/alloc-error/default-alloc-error-hook.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/fixed-length-vector-pattern-matching-7784.rs +tests/ui/array-slice-vec/fixed-size-arrays-zero-size-types-8898.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/array-slice-vec/vector-slice-matching-8498.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoderef-vec-box-fn-36786.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/autoref-autoderef/deref-chain-method-calls-13264.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/backtrace.rs +tests/ui/backtrace/std-backtrace.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-at-binding-8391.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/ref-pattern-drop-behavior-8860.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/block-result/blocks-without-results-11709.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/incorrect-loan-error-on-local-update-5550.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/pointer-reassignment-after-deref-78192.rs +tests/ui/borrowck/refcell-borrow-comparison-12033.rs +tests/ui/borrowck/region-checker-map-closure-13665.rs +tests/ui/borrowck/rvalue-lifetime-match-equivalence-7660.rs +tests/ui/borrowck/struct-with-reference-to-trait-5708.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/constant-expression-cast-9942.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/owned-struct-to-trait-cast-6318.rs +tests/ui/cast/supported-cast.rs +tests/ui/cast/trait-object-cast-segfault-4333.rs +tests/ui/cast/u8-to-char-cast-9918.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compilation-struct-11085.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/boxed-closure-lifetime-13808.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/closure-mut-argument-6153.rs +tests/ui/closures/closure-type-inference-in-context-9129.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/closures/unused-closure-ice-16256.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/dynamic-size-of-prefix-correctly-36278.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/i128-shift-overflow-check-76042.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/llvm-miscompile-metadata-invalidation-36023.rs +tests/ui/codegen/matrix-row-swap-54462.rs +tests/ui/codegen/nested-enum-match-optimization-15793.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/static-array-comparison-7012.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/any-trait-object-debug-12744.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-mut-trait-object-8248.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/method-return-trait-object-14399.rs +tests/ui/coercion/trait-object-arrays-11205.rs +tests/ui/coercion/trait-object-coercion-distribution-9951.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/collections/hashset-connected-border-12860.rs +tests/ui/collections/vecdeque-append-operation-54477.rs +tests/ui/command/command-argv0.rs +tests/ui/command/command-current-dir.rs +tests/ui/command/command-exec.rs +tests/ui/command/command-pre-exec.rs +tests/ui/command/command-setgroups.rs +tests/ui/command/command-uid-gid.rs +tests/ui/command/issue-10626.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/module-const-array-size-13763.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/impl-copy-function-debuginfo-58463.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/deref/dereferenceable-type-behavior-22992.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord-discriminant-64bit.rs +tests/ui/derives/derive-partial-ord-discriminant.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/conditional-drop-10734.rs +tests/ui/drop/destructor-run-for-expression-4734.rs +tests/ui/drop/destructor-run-for-let-ignore-6892.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-count-assertion-16151.rs +tests/ui/drop/drop-immediate-non-box-ty-9446.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/enum-drop-impl-15063.rs +tests/ui/drop/generic-drop-trait-bound-15858.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/multiple-drop-safe-code-25549.rs +tests/ui/drop/nested-return-drop-order.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/panic-during-drop-14875.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/struct-field-drop-order.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/drop/trait-object-drop-10802.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/edition-specific-identifier-shadowing-53333.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/enum-discriminant-const-eval-truncation-9837.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/enum-with-generic-parameter-5997.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/enum/match-either-enum-variants-6117.rs +tests/ui/enum/zero-variant-enum-pattern-matching-3037.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/weird-exprs.rs +tests/ui/extern/empty-struct-extern-fn-16441.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fmt/println-debug-different-types.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let-scope.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-54696.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-associated-type-deref-target-56237.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/enum-variant-import-path-15774.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-declaration-no-path-segment-prefix.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/collection-type-copy-behavior-12909.rs +tests/ui/inference/fnonce-closure-call.rs +tests/ui/inference/generic-type-inference-10436.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/matcher-lifetime-inference-14919.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/intrinsics/panic-uninitialized-zeroed.rs +tests/ui/io-checks/io-stdout-blocking-writes.rs +tests/ui/io-checks/stdout-stderr-separation.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-2383.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-2642.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3091.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-3290.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-33770.rs +tests/ui/issues/issue-3429.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-3500.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5315.rs +tests/ui/iterators/bytes-iterator-clone-12677.rs +tests/ui/iterators/for-loop-over-mut-iterator-21655.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/iterator-type-inference-sum-15673.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/keyword/raw-identifier-for-function-57198.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/enum-lifetime-container-10228.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/matcher-trait-equality-13323.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/struct-with-lifetime-parameters-9259.rs +tests/ui/lifetimes/tail-expr-lock-poisoning.rs +tests/ui/lifetimes/trait-object-constructor-14821.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper-ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/loops/issue-1974.rs +tests/ui/loops/loop-with-label-9047.rs +tests/ui/loops/unreachable-while-loop-5741.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/for-loop-macro-rules-hygiene.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-invocation-with-variable-in-scope-9737.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-self-mutability-7911.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-variable-declaration-with-bounds-5554.rs +tests/ui/macros/macro-variable-unused-reporting-5718.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guard-pattern-ordering-14865.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/multiple-refutable-patterns-13867.rs +tests/ui/match/overeager-sub-match-pruning-13027.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/match/struct-reference-patterns-12285.rs +tests/ui/match/tuple-usize-pattern-14393.rs +tests/ui/methods/inherent-method-resolution-on-deref-type-53843.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/methods/trait-method-resolution-7575.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/modules/use-statement-duplicate-check-7663.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/match-move-same-binding-15571.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/f32-literal-rounding-32805.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/numeric/type-limit-comparisons-6130.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/misaligned-reference-drop-field-99838.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-handler/catch-unwind-during-unwind-68696.rs +tests/ui/panic-runtime/abort.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panic-runtime/lto-abort.rs +tests/ui/panic-runtime/lto-unwind.rs +tests/ui/panics/abort-on-panic.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/oom-panic-unwind.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/doc-comment-parsing.rs +tests/ui/parser/generics-rangle-eq-15043.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/pattern-matching-with-double-references-61475.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/premature-match-scrutinee-temporary-drop-10683.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/slice-pattern-recursion-15104.rs +tests/ui/pattern/struct-wildcard-pattern-14308.rs +tests/ui/pattern/tuple-enum-match-15129.rs +tests/ui/pattern/unit-pattern-matching-in-function-argument-7519.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-args-reverse-iterator.rs +tests/ui/process/env-funky-keys.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/fds-are-cloexec.rs +tests/ui/process/inherit-env.rs +tests/ui/process/issue-13304.rs +tests/ui/process/issue-14456.rs +tests/ui/process/issue-14940.rs +tests/ui/process/issue-16272.rs +tests/ui/process/issue-30490.rs +tests/ui/process/multi-panic.rs +tests/ui/process/no-stdio.rs +tests/ui/process/nofile-limit.rs +tests/ui/process/println-with-broken-pipe.rs +tests/ui/process/process-envs.rs +tests/ui/process/process-exit.rs +tests/ui/process/process-panic-after-fork.rs +tests/ui/process/process-remove-from-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/process/process-spawn-nonexistent.rs +tests/ui/process/process-spawn-with-unicode-params.rs +tests/ui/process/process-status-inherits-stdin.rs +tests/ui/process/signal-exit-status.rs +tests/ui/process/sigpipe-should-be-ignored.rs +tests/ui/process/try-wait.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/reachable/boolean-negation-in-unreachable-code-7344.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/packed-struct-with-enum-53728.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/reference-clone-nonclone-11820.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/early-return-with-unreachable-code-24353.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/atomic-print.rs +tests/ui/runtime/backtrace-debuginfo.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/on-broken-pipe/inherit.rs +tests/ui/runtime/out-of-stack.rs +tests/ui/runtime/rt-explody-panic-payloads.rs +tests/ui/runtime/signal-alternate-stack-cleanup.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-unix.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/sanitizer/issue-72154-address-lifetime-markers.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/target-feature-mixup.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/trait-specialization-default-methods-55380.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/static/static-list-initialization-5917.rs +tests/ui/static/static-struct-initialization-5688.rs +tests/ui/statics/conditional-static-declaration-16010.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/park-timeout-wakeup-59020.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/debug-print-basic-tuple.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/destructuring-struct-type-inference-8783.rs +tests/ui/structs/destructuring-struct-with-dtor-6344.rs +tests/ui/structs/large-records.rs +tests/ui/structs/mutable-unit-struct-borrow-11267.rs +tests/ui/structs/trie-node-structure-usage-3389.rs +tests/ui/symbol-names/struct-constructor-mangling.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/thread-local-static-reference-70673.rs +tests/ui/thread-local/thread-local-with-attributes-30756.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/eprint-on-tls-drop.rs +tests/ui/threads-sendsync/issue-24313.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method-lifetime-params-13204.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/dynamic-dispatch-trait-objects-5666.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/fn-type-trait-impl-15444.rs +tests/ui/traits/fnonce-repro-trait-impl-13434.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/impl-trait-chain-14229.rs +tests/ui/traits/index-trait-multiple-impls-15734.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/mut-trait-in-struct-8249.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/trait-object-lifetime-conversion.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-implementation-for-primitive-type-5280.rs +tests/ui/traits/trait-implementation-for-usize-5321.rs +tests/ui/traits/trait-implementation-restriction-5988.rs +tests/ui/traits/trait-object-lifetime-bounds-7563.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-alias/static-method-type-alias-11047.rs +tests/ui/type-inference/float-type-inference-unification-14382.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/type-name-intrinsic-usage-61894.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/fn-traits-overloading-arity-18952.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/self-param-space-conflict-in-unboxed-closure-18685.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-12-14.tsv b/tests/ui/overrides/nightly-2025-12-14.tsv new file mode 100644 index 00000000..5d5b6bda --- /dev/null +++ b/tests/ui/overrides/nightly-2025-12-14.tsv @@ -0,0 +1,29 @@ +# Manual overrides for nightly-2025-12-14 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs +# Upstream changed temporary-lifetime-extension.rs; new source fails to compile +# (rustc exit 101, not a driver bug). +skip tests/ui/lifetimes/temporary-lifetime-extension.rs diff --git a/tests/ui/overrides/nightly-2025-12-14/failing.tsv b/tests/ui/overrides/nightly-2025-12-14/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-12-14/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-12-14/passing.tsv b/tests/ui/overrides/nightly-2025-12-14/passing.tsv new file mode 100644 index 00000000..6c659437 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-12-14/passing.tsv @@ -0,0 +1,2749 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/homogenous-floats-target-feature-mixup.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/segfault-no-out-of-stack.rs +tests/ui/abi/stack-probes.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/alloc-error/default-alloc-error-hook.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/fixed-length-vector-pattern-matching-7784.rs +tests/ui/array-slice-vec/fixed-size-arrays-zero-size-types-8898.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/array-slice-vec/vector-slice-matching-8498.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoderef-vec-box-fn-36786.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/autoref-autoderef/deref-chain-method-calls-13264.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/backtrace.rs +tests/ui/backtrace/std-backtrace.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-at-binding-8391.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/ref-pattern-drop-behavior-8860.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/block-result/blocks-without-results-11709.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/incorrect-loan-error-on-local-update-5550.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/pointer-reassignment-after-deref-78192.rs +tests/ui/borrowck/refcell-borrow-comparison-12033.rs +tests/ui/borrowck/region-checker-map-closure-13665.rs +tests/ui/borrowck/rvalue-lifetime-match-equivalence-7660.rs +tests/ui/borrowck/struct-with-reference-to-trait-5708.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/constant-expression-cast-9942.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/owned-struct-to-trait-cast-6318.rs +tests/ui/cast/supported-cast.rs +tests/ui/cast/trait-object-cast-segfault-4333.rs +tests/ui/cast/u8-to-char-cast-9918.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compilation-struct-11085.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/boxed-closure-lifetime-13808.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/closure-mut-argument-6153.rs +tests/ui/closures/closure-type-inference-in-context-9129.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/closures/unused-closure-ice-16256.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/dynamic-size-of-prefix-correctly-36278.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/i128-shift-overflow-check-76042.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/llvm-miscompile-metadata-invalidation-36023.rs +tests/ui/codegen/matrix-row-swap-54462.rs +tests/ui/codegen/nested-enum-match-optimization-15793.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/static-array-comparison-7012.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/any-trait-object-debug-12744.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-mut-trait-object-8248.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/method-return-trait-object-14399.rs +tests/ui/coercion/trait-object-arrays-11205.rs +tests/ui/coercion/trait-object-coercion-distribution-9951.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/collections/hashset-connected-border-12860.rs +tests/ui/collections/vecdeque-append-operation-54477.rs +tests/ui/command/command-argv0.rs +tests/ui/command/command-current-dir.rs +tests/ui/command/command-exec.rs +tests/ui/command/command-pre-exec.rs +tests/ui/command/command-setgroups.rs +tests/ui/command/command-uid-gid.rs +tests/ui/command/issue-10626.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/module-const-array-size-13763.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/impl-copy-function-debuginfo-58463.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/deref/dereferenceable-type-behavior-22992.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord-discriminant-64bit.rs +tests/ui/derives/derive-partial-ord-discriminant.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/conditional-drop-10734.rs +tests/ui/drop/destructor-run-for-expression-4734.rs +tests/ui/drop/destructor-run-for-let-ignore-6892.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-count-assertion-16151.rs +tests/ui/drop/drop-immediate-non-box-ty-9446.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/enum-drop-impl-15063.rs +tests/ui/drop/generic-drop-trait-bound-15858.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/multiple-drop-safe-code-25549.rs +tests/ui/drop/nested-return-drop-order.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/panic-during-drop-14875.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/struct-field-drop-order.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/drop/trait-object-drop-10802.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/edition-specific-identifier-shadowing-53333.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/enum-discriminant-const-eval-truncation-9837.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/enum-with-generic-parameter-5997.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/enum/match-either-enum-variants-6117.rs +tests/ui/enum/zero-variant-enum-pattern-matching-3037.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/weird-exprs.rs +tests/ui/extern/empty-struct-extern-fn-16441.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fmt/println-debug-different-types.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/nested-loop-break-unit.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let-scope.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-54696.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-associated-type-deref-target-56237.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/enum-variant-import-path-15774.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-declaration-no-path-segment-prefix.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/collection-type-copy-behavior-12909.rs +tests/ui/inference/fnonce-closure-call.rs +tests/ui/inference/generic-type-inference-10436.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/matcher-lifetime-inference-14919.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/intrinsics/panic-uninitialized-zeroed.rs +tests/ui/io-checks/io-stdout-blocking-writes.rs +tests/ui/io-checks/stdout-stderr-separation.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-11382.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16783.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18110.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18352.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18464.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19499.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21291.rs +tests/ui/issues/issue-21306.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-23036.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24779.rs +tests/ui/issues/issue-24945-repeat-dash-opts.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27268.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-33770.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-37686.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-38987.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43205.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49854.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50442.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5315.rs +tests/ui/iterators/bytes-iterator-clone-12677.rs +tests/ui/iterators/for-loop-over-mut-iterator-21655.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/iterator-type-inference-sum-15673.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/keyword/raw-identifier-for-function-57198.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/enum-lifetime-container-10228.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/matcher-trait-equality-13323.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/struct-with-lifetime-parameters-9259.rs +tests/ui/lifetimes/tail-expr-lock-poisoning.rs +tests/ui/lifetimes/trait-object-constructor-14821.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper-ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/loops/issue-1974.rs +tests/ui/loops/loop-with-label-9047.rs +tests/ui/loops/unreachable-while-loop-5741.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/for-loop-macro-rules-hygiene.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-invocation-with-variable-in-scope-9737.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-self-mutability-7911.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-variable-declaration-with-bounds-5554.rs +tests/ui/macros/macro-variable-unused-reporting-5718.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guard-pattern-ordering-14865.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/match-ref-option-pattern.rs +tests/ui/match/multiple-refutable-patterns-13867.rs +tests/ui/match/overeager-sub-match-pruning-13027.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/match/struct-reference-patterns-12285.rs +tests/ui/match/tuple-usize-pattern-14393.rs +tests/ui/methods/inherent-method-resolution-on-deref-type-53843.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/methods/trait-method-resolution-7575.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/modules/use-statement-duplicate-check-7663.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/match-move-same-binding-15571.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/f32-literal-rounding-32805.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/numeric/ref-int.rs +tests/ui/numeric/type-limit-comparisons-6130.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/misaligned-reference-drop-field-99838.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-handler/catch-unwind-during-unwind-68696.rs +tests/ui/panic-runtime/abort.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panic-runtime/lto-abort.rs +tests/ui/panic-runtime/lto-unwind.rs +tests/ui/panics/abort-on-panic.rs +tests/ui/panics/alloc_error_hook-unwind.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/doc-comment-parsing.rs +tests/ui/parser/generics-rangle-eq-15043.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/pattern-matching-with-double-references-61475.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/premature-match-scrutinee-temporary-drop-10683.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/slice-pattern-recursion-15104.rs +tests/ui/pattern/struct-wildcard-pattern-14308.rs +tests/ui/pattern/tuple-enum-match-15129.rs +tests/ui/pattern/unit-pattern-matching-in-function-argument-7519.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-args-reverse-iterator.rs +tests/ui/process/env-funky-keys.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/fds-are-cloexec.rs +tests/ui/process/inherit-env.rs +tests/ui/process/issue-13304.rs +tests/ui/process/issue-14456.rs +tests/ui/process/issue-14940.rs +tests/ui/process/issue-16272.rs +tests/ui/process/issue-30490.rs +tests/ui/process/multi-panic.rs +tests/ui/process/no-stdio.rs +tests/ui/process/nofile-limit.rs +tests/ui/process/println-with-broken-pipe.rs +tests/ui/process/process-envs.rs +tests/ui/process/process-exit.rs +tests/ui/process/process-panic-after-fork.rs +tests/ui/process/process-remove-from-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/process/process-spawn-nonexistent.rs +tests/ui/process/process-spawn-with-unicode-params.rs +tests/ui/process/process-status-inherits-stdin.rs +tests/ui/process/signal-exit-status.rs +tests/ui/process/sigpipe-should-be-ignored.rs +tests/ui/process/try-wait.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/reachable/boolean-negation-in-unreachable-code-7344.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/packed-struct-with-enum-53728.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/reference-clone-nonclone-11820.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/early-return-with-unreachable-code-24353.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/atomic-print.rs +tests/ui/runtime/backtrace-debuginfo.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/on-broken-pipe/inherit.rs +tests/ui/runtime/out-of-stack.rs +tests/ui/runtime/rt-explody-panic-payloads.rs +tests/ui/runtime/signal-alternate-stack-cleanup.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-unix.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/sanitizer/issue-72154-address-lifetime-markers.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/target-feature-mixup.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/trait-specialization-default-methods-55380.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/static/static-list-initialization-5917.rs +tests/ui/static/static-struct-initialization-5688.rs +tests/ui/statics/conditional-static-declaration-16010.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/park-timeout-wakeup-59020.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/debug-print-basic-tuple.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/destructuring-struct-type-inference-8783.rs +tests/ui/structs/destructuring-struct-with-dtor-6344.rs +tests/ui/structs/large-records.rs +tests/ui/structs/mutable-unit-struct-borrow-11267.rs +tests/ui/structs/trie-node-structure-usage-3389.rs +tests/ui/symbol-names/struct-constructor-mangling.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/thread-local-static-reference-70673.rs +tests/ui/thread-local/thread-local-with-attributes-30756.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/eprint-on-tls-drop.rs +tests/ui/threads-sendsync/issue-24313.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method-lifetime-params-13204.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/dynamic-dispatch-trait-objects-5666.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/fn-type-trait-impl-15444.rs +tests/ui/traits/fnonce-repro-trait-impl-13434.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/impl-trait-chain-14229.rs +tests/ui/traits/index-trait-multiple-impls-15734.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/mut-trait-in-struct-8249.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/trait-object-lifetime-conversion.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-implementation-for-primitive-type-5280.rs +tests/ui/traits/trait-implementation-for-usize-5321.rs +tests/ui/traits/trait-implementation-restriction-5988.rs +tests/ui/traits/trait-object-lifetime-bounds-7563.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-alias/static-method-type-alias-11047.rs +tests/ui/type-inference/float-type-inference-unification-14382.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/type-name-intrinsic-usage-61894.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/fn-traits-overloading-arity-18952.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/self-param-space-conflict-in-unboxed-closure-18685.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2025-12-23.tsv b/tests/ui/overrides/nightly-2025-12-23.tsv new file mode 100644 index 00000000..e0213c0a --- /dev/null +++ b/tests/ui/overrides/nightly-2025-12-23.tsv @@ -0,0 +1,29 @@ +# Manual overrides for nightly-2025-12-23 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs +# Upstream changed temporary-lifetime-extension.rs; new source fails to compile +# (rustc exit 101, not a driver bug). +skip tests/ui/lifetimes/temporary-lifetime-extension.rs diff --git a/tests/ui/overrides/nightly-2025-12-23/failing.tsv b/tests/ui/overrides/nightly-2025-12-23/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-12-23/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2025-12-23/passing.tsv b/tests/ui/overrides/nightly-2025-12-23/passing.tsv new file mode 100644 index 00000000..0d4c0ae8 --- /dev/null +++ b/tests/ui/overrides/nightly-2025-12-23/passing.tsv @@ -0,0 +1,2742 @@ +tests/ui/abi/abi-sysv64-arg-passing.rs +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/homogenous-floats-target-feature-mixup.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/segfault-no-out-of-stack.rs +tests/ui/abi/stack-probes.rs +tests/ui/abi/stack-protector.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/abi/x86stdcall2.rs +tests/ui/alloc-error/default-alloc-error-hook.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/fixed-length-vector-pattern-matching-7784.rs +tests/ui/array-slice-vec/fixed-size-arrays-zero-size-types-8898.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/array-slice-vec/vector-slice-matching-8498.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/asm/x86_64/const.rs +tests/ui/asm/x86_64/goto.rs +tests/ui/asm/x86_64/may_unwind.rs +tests/ui/asm/x86_64/multiple-clobber-abi.rs +tests/ui/asm/x86_64/sym.rs +tests/ui/associated-consts/assoc-const.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoderef-vec-box-fn-36786.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/autoref-autoderef/deref-chain-method-calls-13264.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/backtrace.rs +tests/ui/backtrace/std-backtrace.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-at-binding-8391.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/ref-pattern-drop-behavior-8860.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/block-result/blocks-without-results-11709.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/incorrect-loan-error-on-local-update-5550.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/pointer-reassignment-after-deref-78192.rs +tests/ui/borrowck/refcell-borrow-comparison-12033.rs +tests/ui/borrowck/region-checker-map-closure-13665.rs +tests/ui/borrowck/rvalue-lifetime-match-equivalence-7660.rs +tests/ui/borrowck/struct-with-reference-to-trait-5708.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/constant-expression-cast-9942.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/owned-struct-to-trait-cast-6318.rs +tests/ui/cast/supported-cast.rs +tests/ui/cast/trait-object-cast-segfault-4333.rs +tests/ui/cast/u8-to-char-cast-9918.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compilation-struct-11085.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/boxed-closure-lifetime-13808.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/closure-mut-argument-6153.rs +tests/ui/closures/closure-type-inference-in-context-9129.rs +tests/ui/closures/closure-upvar-trait-caching.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/closures/unused-closure-ice-16256.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/dynamic-size-of-prefix-correctly-36278.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/i128-shift-overflow-check-76042.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-79865-llvm-miscompile.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/llvm-miscompile-metadata-invalidation-36023.rs +tests/ui/codegen/matrix-row-swap-54462.rs +tests/ui/codegen/nested-enum-match-optimization-15793.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/static-array-comparison-7012.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/any-trait-object-debug-12744.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-mut-trait-object-8248.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/method-return-trait-object-14399.rs +tests/ui/coercion/trait-object-arrays-11205.rs +tests/ui/coercion/trait-object-coercion-distribution-9951.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/collections/hashset-connected-border-12860.rs +tests/ui/collections/vecdeque-append-operation-54477.rs +tests/ui/command/command-argv0.rs +tests/ui/command/command-current-dir.rs +tests/ui/command/command-exec.rs +tests/ui/command/command-pre-exec.rs +tests/ui/command/command-setgroups.rs +tests/ui/command/command-uid-gid.rs +tests/ui/command/issue-10626.rs +tests/ui/compile-flags/run-pass/repeated-debug-opt-flags.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/module-const-array-size-13763.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/impl-copy-function-debuginfo-58463.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/debuginfo/msvc-strip-debuginfo.rs +tests/ui/debuginfo/msvc-strip-symbols.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref-patterns/basic.rs +tests/ui/deref/dereferenceable-type-behavior-22992.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord-discriminant-64bit.rs +tests/ui/derives/derive-partial-ord-discriminant.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/conditional-drop-10734.rs +tests/ui/drop/destructor-run-for-expression-4734.rs +tests/ui/drop/destructor-run-for-let-ignore-6892.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-count-assertion-16151.rs +tests/ui/drop/drop-immediate-non-box-ty-9446.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/enum-drop-impl-15063.rs +tests/ui/drop/generic-drop-trait-bound-15858.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/multiple-drop-safe-code-25549.rs +tests/ui/drop/nested-return-drop-order.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/panic-during-drop-14875.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/struct-field-drop-order.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/drop/trait-object-drop-10802.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/edition-specific-identifier-shadowing-53333.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/enum-discriminant-const-eval-truncation-9837.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/enum-with-generic-parameter-5997.rs +tests/ui/enum/enum-with-uninhabited-variant.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/enum/match-either-enum-variants-6117.rs +tests/ui/enum/zero-variant-enum-pattern-matching-3037.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/weird-exprs.rs +tests/ui/extern/empty-struct-extern-fn-16441.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/extern-vectorcall.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/float/int-to-float-miscompile-issue-105626.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fmt/println-debug-different-types.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/nested-loop-break-unit.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let-scope.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-54696.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-associated-type-deref-target-56237.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashmap-path-key.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/enum-variant-import-path-15774.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-declaration-no-path-segment-prefix.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/collection-type-copy-behavior-12909.rs +tests/ui/inference/fnonce-closure-call.rs +tests/ui/inference/generic-type-inference-10436.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/matcher-lifetime-inference-14919.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select-x86_64.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/intrinsics/panic-uninitialized-zeroed.rs +tests/ui/io-checks/io-stdout-blocking-writes.rs +tests/ui/io-checks/stdout-stderr-separation.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-20676.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20847.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22403.rs +tests/ui/issues/issue-22426.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-2428.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27639.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-33687.rs +tests/ui/issues/issue-33770.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5315.rs +tests/ui/iterators/bytes-iterator-clone-12677.rs +tests/ui/iterators/for-loop-over-mut-iterator-21655.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-count-overflow-debug.rs +tests/ui/iterators/iter-count-overflow-ndebug.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-position-overflow-debug.rs +tests/ui/iterators/iter-position-overflow-ndebug.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/iterator-type-inference-sum-15673.rs +tests/ui/iterators/skip-count-overflow.rs +tests/ui/keyword/raw-identifier-for-function-57198.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/enum-lifetime-container-10228.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/matcher-trait-equality-13323.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/struct-with-lifetime-parameters-9259.rs +tests/ui/lifetimes/tail-expr-lock-poisoning.rs +tests/ui/lifetimes/trait-object-constructor-14821.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper-ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/loops/issue-1974.rs +tests/ui/loops/loop-with-label-9047.rs +tests/ui/loops/unreachable-while-loop-5741.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/for-loop-macro-rules-hygiene.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-invocation-with-variable-in-scope-9737.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-self-mutability-7911.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-variable-declaration-with-bounds-5554.rs +tests/ui/macros/macro-variable-unused-reporting-5718.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/all-expr-kinds.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guard-pattern-ordering-14865.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-range-char-const.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/match-ref-option-pattern.rs +tests/ui/match/match-usize-min-max-pattern.rs +tests/ui/match/multiple-refutable-patterns-13867.rs +tests/ui/match/overeager-sub-match-pruning-13027.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/match/struct-reference-patterns-12285.rs +tests/ui/match/tuple-usize-pattern-14393.rs +tests/ui/methods/inherent-method-resolution-on-deref-type-53843.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/methods/trait-method-resolution-7575.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/modules/use-statement-duplicate-check-7663.rs +tests/ui/moves/array-copy-move.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/match-move-same-binding-15571.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/f32-literal-rounding-32805.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128-min-literal-parses.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/numeric/ref-int.rs +tests/ui/numeric/type-limit-comparisons-6130.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/misaligned-reference-drop-field-99838.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-handler/catch-unwind-during-unwind-68696.rs +tests/ui/panic-runtime/abort.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panic-runtime/lto-abort.rs +tests/ui/panic-runtime/lto-unwind.rs +tests/ui/panics/abort-on-panic.rs +tests/ui/panics/alloc_error_hook-unwind.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/doc-comment-parsing.rs +tests/ui/parser/generics-rangle-eq-15043.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/pattern-matching-with-double-references-61475.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/const-pattern-str-match-lifetime.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/premature-match-scrutinee-temporary-drop-10683.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/slice-pattern-recursion-15104.rs +tests/ui/pattern/struct-wildcard-pattern-14308.rs +tests/ui/pattern/tuple-enum-match-15129.rs +tests/ui/pattern/unit-pattern-matching-in-function-argument-7519.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-args-reverse-iterator.rs +tests/ui/process/env-funky-keys.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/fds-are-cloexec.rs +tests/ui/process/inherit-env.rs +tests/ui/process/issue-13304.rs +tests/ui/process/issue-14456.rs +tests/ui/process/issue-14940.rs +tests/ui/process/issue-16272.rs +tests/ui/process/issue-30490.rs +tests/ui/process/multi-panic.rs +tests/ui/process/no-stdio.rs +tests/ui/process/nofile-limit.rs +tests/ui/process/println-with-broken-pipe.rs +tests/ui/process/process-envs.rs +tests/ui/process/process-exit.rs +tests/ui/process/process-panic-after-fork.rs +tests/ui/process/process-remove-from-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/process/process-spawn-nonexistent.rs +tests/ui/process/process-spawn-with-unicode-params.rs +tests/ui/process/process-status-inherits-stdin.rs +tests/ui/process/signal-exit-status.rs +tests/ui/process/sigpipe-should-be-ignored.rs +tests/ui/process/try-wait.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/reachable/boolean-negation-in-unreachable-code-7344.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/packed-struct-with-enum-53728.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/reference-clone-nonclone-11820.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/early-return-with-unreachable-code-24353.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/atomic-print.rs +tests/ui/runtime/backtrace-debuginfo.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/runtime/on-broken-pipe/inherit.rs +tests/ui/runtime/out-of-stack.rs +tests/ui/runtime/rt-explody-panic-payloads.rs +tests/ui/runtime/signal-alternate-stack-cleanup.rs +tests/ui/runtime/stdout-before-main.rs +tests/ui/runtime/stdout-during-shutdown-unix.rs +tests/ui/runtime/stdout-during-shutdown-windows.rs +tests/ui/sanitizer/cfi/complex-receiver.rs +tests/ui/sanitizer/cfi/fn-ptr.rs +tests/ui/sanitizer/cfi/self-ref.rs +tests/ui/sanitizer/cfi/sized-associated-ty.rs +tests/ui/sanitizer/cfi/supertraits.rs +tests/ui/sanitizer/cfi/virtual-auto.rs +tests/ui/sanitizer/issue-72154-address-lifetime-markers.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/target-feature-mixup.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/trait-specialization-default-methods-55380.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/static/static-list-initialization-5917.rs +tests/ui/static/static-struct-initialization-5688.rs +tests/ui/statics/conditional-static-declaration-16010.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/park-timeout-wakeup-59020.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/std/windows-bat-args.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/debug-print-basic-tuple.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/destructuring-struct-type-inference-8783.rs +tests/ui/structs/destructuring-struct-with-dtor-6344.rs +tests/ui/structs/large-records.rs +tests/ui/structs/mutable-unit-struct-borrow-11267.rs +tests/ui/structs/trie-node-structure-usage-3389.rs +tests/ui/symbol-names/struct-constructor-mangling.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/thread-local-static-reference-70673.rs +tests/ui/thread-local/thread-local-with-attributes-30756.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/eprint-on-tls-drop.rs +tests/ui/threads-sendsync/issue-24313.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method-lifetime-params-13204.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/dynamic-dispatch-trait-objects-5666.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fmt-pointer-trait.rs +tests/ui/traits/fn-type-trait-impl-15444.rs +tests/ui/traits/fnonce-repro-trait-impl-13434.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/impl-trait-chain-14229.rs +tests/ui/traits/index-trait-multiple-impls-15734.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/mut-trait-in-struct-8249.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/trait-object-lifetime-conversion.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-implementation-for-primitive-type-5280.rs +tests/ui/traits/trait-implementation-for-usize-5321.rs +tests/ui/traits/trait-implementation-restriction-5988.rs +tests/ui/traits/trait-object-lifetime-bounds-7563.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-alias/static-method-type-alias-11047.rs +tests/ui/type-inference/float-type-inference-unification-14382.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/osstring-str-equality.rs +tests/ui/typeck/type-name-intrinsic-usage-61894.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/fn-traits-overloading-arity-18952.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/self-param-space-conflict-in-unboxed-closure-18685.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/overrides/nightly-2026-01-15.tsv b/tests/ui/overrides/nightly-2026-01-15.tsv new file mode 100644 index 00000000..a1227bd7 --- /dev/null +++ b/tests/ui/overrides/nightly-2026-01-15.tsv @@ -0,0 +1,29 @@ +# Manual overrides for nightly-2026-01-15 +# Format: actionpath[extra] +# +# Actions: +# - remove from passing list (use for behavior changes, not deletions; +# git deletions and renames are handled automatically) +# + add to passing list +# skip remove from passing list (alias for -, documents intent) +# fail move to failing list (extra = expected exit code) +# pass move from failing to passing list +# +# Upstream removed #![feature(unsized_locals)] from these tests; without the +# feature gate the code no longer compiles (rustc exit 101, not a driver bug). +skip tests/ui/unsized-locals/align.rs +skip tests/ui/unsized-locals/autoderef.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-rpass.rs +skip tests/ui/unsized-locals/by-value-trait-dyn-compatibility-with-default.rs +skip tests/ui/unsized-locals/reference-unsized-locals.rs +skip tests/ui/unsized-locals/simple-unsized-locals.rs +# Upstream reworked deref_patterns tests; new source references functions that +# were removed, causing compile errors (rustc exit 101, not a driver bug). +skip tests/ui/pattern/deref-patterns/bindings.rs +skip tests/ui/pattern/deref-patterns/branch.rs +# Upstream reworked remap-path-prefix-macro.rs; new source references a `file` +# crate that requires auxiliary build setup we don't handle (rustc exit 101). +skip tests/ui/errors/remap-path-prefix-macro.rs +# Upstream changed temporary-lifetime-extension.rs; new source fails to compile +# (rustc exit 101, not a driver bug). +skip tests/ui/lifetimes/temporary-lifetime-extension.rs diff --git a/tests/ui/overrides/nightly-2026-01-15/failing.tsv b/tests/ui/overrides/nightly-2026-01-15/failing.tsv new file mode 100644 index 00000000..5e5f8330 --- /dev/null +++ b/tests/ui/overrides/nightly-2026-01-15/failing.tsv @@ -0,0 +1 @@ +tests/ui/sanitizer/cfi/drop-in-place.rs 101 diff --git a/tests/ui/overrides/nightly-2026-01-15/passing.tsv b/tests/ui/overrides/nightly-2026-01-15/passing.tsv new file mode 100644 index 00000000..753aa4a9 --- /dev/null +++ b/tests/ui/overrides/nightly-2026-01-15/passing.tsv @@ -0,0 +1,2649 @@ +tests/ui/abi/anon-extern-mod.rs +tests/ui/abi/c-stack-as-value.rs +tests/ui/abi/c-stack-returning-int64.rs +tests/ui/abi/cabi-int-widening.rs +tests/ui/abi/extern/extern-call-deep.rs +tests/ui/abi/extern/extern-call-deep2.rs +tests/ui/abi/extern/extern-call-direct.rs +tests/ui/abi/extern/extern-call-indirect.rs +tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs +tests/ui/abi/extern/extern-pass-FiveU16s.rs +tests/ui/abi/extern/extern-pass-TwoU16s.rs +tests/ui/abi/extern/extern-pass-TwoU32s.rs +tests/ui/abi/extern/extern-pass-TwoU64s.rs +tests/ui/abi/extern/extern-pass-TwoU8s.rs +tests/ui/abi/extern/extern-pass-u32.rs +tests/ui/abi/extern/extern-pass-u64.rs +tests/ui/abi/extern/extern-return-FiveU16s.rs +tests/ui/abi/extern/extern-return-TwoU16s.rs +tests/ui/abi/extern/extern-return-TwoU32s.rs +tests/ui/abi/extern/extern-return-TwoU64s.rs +tests/ui/abi/extern/extern-return-TwoU8s.rs +tests/ui/abi/foreign/foreign-fn-with-byval.rs +tests/ui/abi/issue-28676.rs +tests/ui/abi/issues/issue-62350-sysv-neg-reg-counts.rs +tests/ui/abi/issues/issue-97463-broken-abi-leaked-uninit-data.rs +tests/ui/abi/mir/mir_codegen_calls_variadic.rs +tests/ui/abi/nullable-pointer-ffi-compat.rs +tests/ui/abi/numbers-arithmetic/i128-ffi.rs +tests/ui/abi/numbers-arithmetic/return-float.rs +tests/ui/abi/statics/static-mut-foreign.rs +tests/ui/abi/struct-enums/struct-return.rs +tests/ui/abi/union/union-c-interop.rs +tests/ui/abi/variadic-ffi.rs +tests/ui/allocator/alloc-shrink-oob-read.rs +tests/ui/allocator/dyn-compatible.rs +tests/ui/allocator/empty-alloc-nonnull-guarantee.rs +tests/ui/array-slice-vec/array_const_index-2.rs +tests/ui/array-slice-vec/box-of-array-of-drop-1.rs +tests/ui/array-slice-vec/box-of-array-of-drop-2.rs +tests/ui/array-slice-vec/byte-literals.rs +tests/ui/array-slice-vec/cast-in-array-size.rs +tests/ui/array-slice-vec/check-static-slice.rs +tests/ui/array-slice-vec/copy-out-of-array-1.rs +tests/ui/array-slice-vec/destructure-array-1.rs +tests/ui/array-slice-vec/empty-mutable-vec.rs +tests/ui/array-slice-vec/estr-slice.rs +tests/ui/array-slice-vec/evec-slice.rs +tests/ui/array-slice-vec/fixed_length_copy.rs +tests/ui/array-slice-vec/fixed-length-vector-pattern-matching-7784.rs +tests/ui/array-slice-vec/fixed-size-arrays-zero-size-types-8898.rs +tests/ui/array-slice-vec/huge-largest-array.rs +tests/ui/array-slice-vec/issue-15730.rs +tests/ui/array-slice-vec/issue-18425.rs +tests/ui/array-slice-vec/ivec-pass-by-value.rs +tests/ui/array-slice-vec/mut-vstore-expr.rs +tests/ui/array-slice-vec/mutability-inherits-through-fixed-length-vec.rs +tests/ui/array-slice-vec/mutable-alias-vec.rs +tests/ui/array-slice-vec/nested-vec-1.rs +tests/ui/array-slice-vec/nested-vec-2.rs +tests/ui/array-slice-vec/nested-vec-3.rs +tests/ui/array-slice-vec/new-style-fixed-length-vec.rs +tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs +tests/ui/array-slice-vec/repeated-vector-syntax.rs +tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs +tests/ui/array-slice-vec/slice-of-zero-size-elements.rs +tests/ui/array-slice-vec/slice-panic-1.rs +tests/ui/array-slice-vec/slice-panic-2.rs +tests/ui/array-slice-vec/slice.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs +tests/ui/array-slice-vec/subslice-patterns-const-eval.rs +tests/ui/array-slice-vec/variance-vec-covariant.rs +tests/ui/array-slice-vec/vec-dst.rs +tests/ui/array-slice-vec/vec-fixed-length.rs +tests/ui/array-slice-vec/vec-late-init.rs +tests/ui/array-slice-vec/vec-macro-rvalue-scope.rs +tests/ui/array-slice-vec/vec-macro-with-brackets.rs +tests/ui/array-slice-vec/vec-macro-with-trailing-comma.rs +tests/ui/array-slice-vec/vec-matching-autoslice.rs +tests/ui/array-slice-vec/vec-matching-fixed.rs +tests/ui/array-slice-vec/vec-matching-fold.rs +tests/ui/array-slice-vec/vec-matching-legal-tail-element-borrow.rs +tests/ui/array-slice-vec/vec-matching.rs +tests/ui/array-slice-vec/vec-repeat-with-cast.rs +tests/ui/array-slice-vec/vec-tail-matching.rs +tests/ui/array-slice-vec/vector-no-ann-2.rs +tests/ui/array-slice-vec/vector-slice-matching-8498.rs +tests/ui/asm/aarch64/const.rs +tests/ui/asm/aarch64/may_unwind.rs +tests/ui/asm/may_unwind.rs +tests/ui/associated-consts/associated-const-const-eval.rs +tests/ui/associated-consts/associated-const-in-global-const.rs +tests/ui/associated-consts/associated-const-inherent-impl.rs +tests/ui/associated-consts/associated-const-marks-live-code.rs +tests/ui/associated-consts/associated-const-overwrite-default.rs +tests/ui/associated-consts/associated-const-public-impl.rs +tests/ui/associated-consts/associated-const-range-match-patterns.rs +tests/ui/associated-consts/associated-const-resolution-order.rs +tests/ui/associated-consts/associated-const-self-type.rs +tests/ui/associated-consts/associated-const-type-parameters.rs +tests/ui/associated-consts/associated-const-ufcs-infer-trait.rs +tests/ui/associated-consts/associated-const-use-default.rs +tests/ui/associated-consts/associated-const-use-impl-of-same-trait.rs +tests/ui/associated-consts/associated-const.rs +tests/ui/associated-consts/defaults-cyclic-pass.rs +tests/ui/associated-consts/defaults-not-assumed-pass.rs +tests/ui/associated-consts/mismatched_impl_ty_1.rs +tests/ui/associated-consts/mismatched_impl_ty_2.rs +tests/ui/associated-consts/mismatched_impl_ty_3.rs +tests/ui/associated-type-bounds/enum-bounds.rs +tests/ui/associated-type-bounds/rpit.rs +tests/ui/associated-type-bounds/struct-bounds.rs +tests/ui/associated-type-bounds/trait-alias-impl-trait.rs +tests/ui/associated-type-bounds/union-bounds.rs +tests/ui/associated-types/associated-item-long-paths.rs +tests/ui/associated-types/associated-types-basic.rs +tests/ui/associated-types/associated-types-binding-in-trait.rs +tests/ui/associated-types/associated-types-binding-in-where-clause.rs +tests/ui/associated-types/associated-types-bound.rs +tests/ui/associated-types/associated-types-conditional-dispatch.rs +tests/ui/associated-types/associated-types-constant-type.rs +tests/ui/associated-types/associated-types-doubleendediterator-object.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env-hrtb.rs +tests/ui/associated-types/associated-types-duplicate-binding-in-env.rs +tests/ui/associated-types/associated-types-enum-field-named.rs +tests/ui/associated-types/associated-types-enum-field-numbered.rs +tests/ui/associated-types/associated-types-eq-obj.rs +tests/ui/associated-types/associated-types-from-supertrait.rs +tests/ui/associated-types/associated-types-in-default-method.rs +tests/ui/associated-types/associated-types-in-fn.rs +tests/ui/associated-types/associated-types-in-impl-generics.rs +tests/ui/associated-types/associated-types-in-inherent-method.rs +tests/ui/associated-types/associated-types-issue-20220.rs +tests/ui/associated-types/associated-types-issue-21212.rs +tests/ui/associated-types/associated-types-iterator-binding.rs +tests/ui/associated-types/associated-types-method.rs +tests/ui/associated-types/associated-types-nested-projections.rs +tests/ui/associated-types/associated-types-normalize-unifield-struct.rs +tests/ui/associated-types/associated-types-project-from-type-param-via-bound-in-where.rs +tests/ui/associated-types/associated-types-projection-from-known-type-in-impl.rs +tests/ui/associated-types/associated-types-projection-in-supertrait.rs +tests/ui/associated-types/associated-types-projection-in-where-clause.rs +tests/ui/associated-types/associated-types-ref-from-struct.rs +tests/ui/associated-types/associated-types-ref-in-struct-literal.rs +tests/ui/associated-types/associated-types-region-erasure-issue-20582.rs +tests/ui/associated-types/associated-types-return.rs +tests/ui/associated-types/associated-types-simple.rs +tests/ui/associated-types/associated-types-stream.rs +tests/ui/associated-types/associated-types-struct-field-named.rs +tests/ui/associated-types/associated-types-struct-field-numbered.rs +tests/ui/associated-types/associated-types-sugar-path.rs +tests/ui/associated-types/default-associated-types.rs +tests/ui/associated-types/issue-18655.rs +tests/ui/associated-types/issue-22828.rs +tests/ui/associated-types/issue-23208.rs +tests/ui/associated-types/issue-25339.rs +tests/ui/associated-types/issue-25700-1.rs +tests/ui/associated-types/issue-25700-2.rs +tests/ui/associated-types/issue-27901.rs +tests/ui/associated-types/issue-47139-1.rs +tests/ui/associated-types/issue-47139-2.rs +tests/ui/associated-types/issue-54182-1.rs +tests/ui/associated-types/issue-54467.rs +tests/ui/associated-types/issue-55846.rs +tests/ui/associated-types/object-method-numbering.rs +tests/ui/async-await/context-is-sorta-unwindsafe.rs +tests/ui/async-await/issue-60709.rs +tests/ui/async-await/issues/issue-59972.rs +tests/ui/attributes/tool_attributes.rs +tests/ui/auto-traits/auto-is-contextual.rs +tests/ui/auto-traits/auto-traits-type-parameter.rs +tests/ui/auto-traits/auto-traits.rs +tests/ui/autoref-autoderef/auto-ref-bounded-ty-param.rs +tests/ui/autoref-autoderef/auto-ref-sliceable.rs +tests/ui/autoref-autoderef/auto-ref.rs +tests/ui/autoref-autoderef/autoderef-and-borrow-method-receiver.rs +tests/ui/autoref-autoderef/autoderef-method-on-trait.rs +tests/ui/autoref-autoderef/autoderef-method-priority.rs +tests/ui/autoref-autoderef/autoderef-method-twice-but-not-thrice.rs +tests/ui/autoref-autoderef/autoderef-method-twice.rs +tests/ui/autoref-autoderef/autoderef-method.rs +tests/ui/autoref-autoderef/autoderef-privacy.rs +tests/ui/autoref-autoderef/autoderef-vec-box-fn-36786.rs +tests/ui/autoref-autoderef/autoref-intermediate-types-issue-3585.rs +tests/ui/autoref-autoderef/deref-chain-method-calls-13264.rs +tests/ui/backtrace/apple-no-dsymutil.rs +tests/ui/backtrace/synchronized-panic-handler.rs +tests/ui/bench/issue-32062.rs +tests/ui/binding/bind-field-short-with-modifiers.rs +tests/ui/binding/borrowed-ptr-pattern-2.rs +tests/ui/binding/borrowed-ptr-pattern-3.rs +tests/ui/binding/borrowed-ptr-pattern-infallible.rs +tests/ui/binding/borrowed-ptr-pattern-option.rs +tests/ui/binding/borrowed-ptr-pattern.rs +tests/ui/binding/empty-types-in-patterns.rs +tests/ui/binding/exhaustive-bool-match-sanity.rs +tests/ui/binding/expr-match-generic-unique1.rs +tests/ui/binding/expr-match-generic-unique2.rs +tests/ui/binding/expr-match-generic.rs +tests/ui/binding/expr-match-panic-all.rs +tests/ui/binding/expr-match-panic.rs +tests/ui/binding/expr-match-unique.rs +tests/ui/binding/expr-match.rs +tests/ui/binding/fat-arrow-match.rs +tests/ui/binding/fn-arg-incomplete-pattern-drop-order.rs +tests/ui/binding/fn-pattern-expected-type-2.rs +tests/ui/binding/fn-pattern-expected-type.rs +tests/ui/binding/func-arg-incomplete-pattern.rs +tests/ui/binding/func-arg-ref-pattern.rs +tests/ui/binding/func-arg-wild-pattern.rs +tests/ui/binding/if-let.rs +tests/ui/binding/inferred-suffix-in-pattern-range.rs +tests/ui/binding/irrefutable-slice-patterns.rs +tests/ui/binding/let-assignability.rs +tests/ui/binding/let-destruct-ref.rs +tests/ui/binding/let-var-hygiene.rs +tests/ui/binding/match-arm-statics.rs +tests/ui/binding/match-beginning-vert.rs +tests/ui/binding/match-borrowed_str.rs +tests/ui/binding/match-bot-2.rs +tests/ui/binding/match-bot.rs +tests/ui/binding/match-byte-array-patterns.rs +tests/ui/binding/match-enum-struct-0.rs +tests/ui/binding/match-enum-struct-1.rs +tests/ui/binding/match-implicit-copy-unique.rs +tests/ui/binding/match-in-macro.rs +tests/ui/binding/match-join.rs +tests/ui/binding/match-larger-const.rs +tests/ui/binding/match-naked-record-expr.rs +tests/ui/binding/match-naked-record.rs +tests/ui/binding/match-pattern-bindings.rs +tests/ui/binding/match-pattern-lit.rs +tests/ui/binding/match-phi.rs +tests/ui/binding/match-pipe-binding.rs +tests/ui/binding/match-range-infer.rs +tests/ui/binding/match-range-static.rs +tests/ui/binding/match-range.rs +tests/ui/binding/match-reassign.rs +tests/ui/binding/match-ref-binding-in-guard-3256.rs +tests/ui/binding/match-ref-binding-mut-option.rs +tests/ui/binding/match-ref-binding-mut.rs +tests/ui/binding/match-ref-binding.rs +tests/ui/binding/match-ref-unsized.rs +tests/ui/binding/match-str.rs +tests/ui/binding/match-struct-0.rs +tests/ui/binding/match-tag.rs +tests/ui/binding/match-unique-bind.rs +tests/ui/binding/match-unsized.rs +tests/ui/binding/match-value-binding-in-guard-3291.rs +tests/ui/binding/match-var-hygiene.rs +tests/ui/binding/match-vec-alternatives.rs +tests/ui/binding/match-vec-rvalue.rs +tests/ui/binding/match-with-at-binding-8391.rs +tests/ui/binding/match-with-ret-arm.rs +tests/ui/binding/multi-let.rs +tests/ui/binding/mut-in-ident-patterns.rs +tests/ui/binding/nested-matchs.rs +tests/ui/binding/nested-pattern.rs +tests/ui/binding/nil-pattern.rs +tests/ui/binding/nullary-or-pattern.rs +tests/ui/binding/optional_comma_in_match_arm.rs +tests/ui/binding/or-pattern.rs +tests/ui/binding/order-drop-with-match.rs +tests/ui/binding/pat-ranges.rs +tests/ui/binding/pat-tuple-1.rs +tests/ui/binding/pat-tuple-2.rs +tests/ui/binding/pat-tuple-3.rs +tests/ui/binding/pat-tuple-4.rs +tests/ui/binding/pat-tuple-5.rs +tests/ui/binding/pat-tuple-6.rs +tests/ui/binding/pat-tuple-7.rs +tests/ui/binding/pattern-bound-var-in-for-each.rs +tests/ui/binding/pattern-in-closure.rs +tests/ui/binding/range-inclusive-pattern-precedence.rs +tests/ui/binding/ref-pattern-drop-behavior-8860.rs +tests/ui/binding/shadow.rs +tests/ui/binding/simple-generic-match.rs +tests/ui/binding/use-uninit-match.rs +tests/ui/binding/use-uninit-match2.rs +tests/ui/binding/zero_sized_subslice_match.rs +tests/ui/binop/augmented-assignment.rs +tests/ui/binop/binary-minus-without-space.rs +tests/ui/binop/binary-op-on-fn-ptr-eq.rs +tests/ui/binop/binops-issue-22743.rs +tests/ui/binop/binops.rs +tests/ui/binop/compound-assign-by-ref.rs +tests/ui/binop/issue-25916.rs +tests/ui/binop/operator-multidispatch.rs +tests/ui/binop/operator-overloading.rs +tests/ui/binop/structured-compare.rs +tests/ui/block-result/blocks-without-results-11709.rs +tests/ui/borrowck/borrowck-assign-to-subfield.rs +tests/ui/borrowck/borrowck-binding-mutbl.rs +tests/ui/borrowck/borrowck-borrow-from-expr-block.rs +tests/ui/borrowck/borrowck-borrow-of-mut-base-ptr-safe.rs +tests/ui/borrowck/borrowck-box-sensitivity.rs +tests/ui/borrowck/borrowck-closures-slice-patterns-ok.rs +tests/ui/borrowck/borrowck-closures-two-imm.rs +tests/ui/borrowck/borrowck-field-sensitivity-rpass.rs +tests/ui/borrowck/borrowck-fixed-length-vecs.rs +tests/ui/borrowck/borrowck-freeze-frozen-mut.rs +tests/ui/borrowck/borrowck-lend-args.rs +tests/ui/borrowck/borrowck-move-by-capture-ok.rs +tests/ui/borrowck/borrowck-multiple-borrows-interior-boxes.rs +tests/ui/borrowck/borrowck-mut-uniq.rs +tests/ui/borrowck/borrowck-mut-vec-as-imm-slice.rs +tests/ui/borrowck/borrowck-pat-enum.rs +tests/ui/borrowck/borrowck-pat-reassign-no-binding.rs +tests/ui/borrowck/borrowck-rvalues-mutable.rs +tests/ui/borrowck/borrowck-scope-of-deref-issue-4666.rs +tests/ui/borrowck/borrowck-slice-pattern-element-loan-rpass.rs +tests/ui/borrowck/borrowck-static-item-in-fn.rs +tests/ui/borrowck/borrowck-trait-lifetime.rs +tests/ui/borrowck/borrowck-uniq-via-ref.rs +tests/ui/borrowck/borrowck-univariant-enum.rs +tests/ui/borrowck/borrowck-unsafe-static-mutable-borrows.rs +tests/ui/borrowck/borrowck-unused-mut-locals.rs +tests/ui/borrowck/borrowck-use-mut-borrow-rpass.rs +tests/ui/borrowck/fsu-moves-and-copies.rs +tests/ui/borrowck/incorrect-loan-error-on-local-update-5550.rs +tests/ui/borrowck/issue-23338-params-outlive-temps-of-body.rs +tests/ui/borrowck/issue-29166.rs +tests/ui/borrowck/issue-46095.rs +tests/ui/borrowck/issue-51348-multi-ref-mut-in-guard.rs +tests/ui/borrowck/issue-52967-edition-2018-needs-two-phase-borrows.rs +tests/ui/borrowck/lazy-init.rs +tests/ui/borrowck/pointer-reassignment-after-deref-78192.rs +tests/ui/borrowck/refcell-borrow-comparison-12033.rs +tests/ui/borrowck/region-checker-map-closure-13665.rs +tests/ui/borrowck/rvalue-lifetime-match-equivalence-7660.rs +tests/ui/borrowck/struct-with-reference-to-trait-5708.rs +tests/ui/borrowck/two-phase-baseline.rs +tests/ui/borrowck/two-phase-bin-ops.rs +tests/ui/borrowck/two-phase-control-flow-split-before-activation.rs +tests/ui/borrowck/two-phase-method-receivers.rs +tests/ui/borrowck/two-phase-multiple-activations.rs +tests/ui/box/alloc-unstable.rs +tests/ui/box/into-boxed-slice.rs +tests/ui/box/new-box-syntax.rs +tests/ui/box/new-box.rs +tests/ui/box/new.rs +tests/ui/box/thin_align.rs +tests/ui/box/thin_drop.rs +tests/ui/box/thin_new.rs +tests/ui/box/thin_zst.rs +tests/ui/box/unit/expr-block-generic-unique1.rs +tests/ui/box/unit/expr-block-generic-unique2.rs +tests/ui/box/unit/expr-if-unique.rs +tests/ui/box/unit/unique-assign-copy.rs +tests/ui/box/unit/unique-assign-drop.rs +tests/ui/box/unit/unique-assign-generic.rs +tests/ui/box/unit/unique-assign.rs +tests/ui/box/unit/unique-autoderef-field.rs +tests/ui/box/unit/unique-autoderef-index.rs +tests/ui/box/unit/unique-cmp.rs +tests/ui/box/unit/unique-containing-tag.rs +tests/ui/box/unit/unique-create.rs +tests/ui/box/unit/unique-decl-init-copy.rs +tests/ui/box/unit/unique-decl-init.rs +tests/ui/box/unit/unique-decl-move.rs +tests/ui/box/unit/unique-decl.rs +tests/ui/box/unit/unique-deref.rs +tests/ui/box/unit/unique-destructure.rs +tests/ui/box/unit/unique-drop-complex.rs +tests/ui/box/unit/unique-ffi-symbols.rs +tests/ui/box/unit/unique-fn-arg-move.rs +tests/ui/box/unit/unique-fn-arg-mut.rs +tests/ui/box/unit/unique-fn-arg.rs +tests/ui/box/unit/unique-fn-ret.rs +tests/ui/box/unit/unique-in-tag.rs +tests/ui/box/unit/unique-in-vec-copy.rs +tests/ui/box/unit/unique-in-vec.rs +tests/ui/box/unit/unique-init.rs +tests/ui/box/unit/unique-kinds.rs +tests/ui/box/unit/unique-log.rs +tests/ui/box/unit/unique-move-drop.rs +tests/ui/box/unit/unique-move-temp.rs +tests/ui/box/unit/unique-move.rs +tests/ui/box/unit/unique-mutable.rs +tests/ui/box/unit/unique-object-move.rs +tests/ui/box/unit/unique-pat-2.rs +tests/ui/box/unit/unique-pat-3.rs +tests/ui/box/unit/unique-pat.rs +tests/ui/box/unit/unique-rec.rs +tests/ui/box/unit/unique-send-2.rs +tests/ui/box/unit/unique-send.rs +tests/ui/box/unit/unique-swap.rs +tests/ui/box/unit/unwind-unique.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities-transitive.rs +tests/ui/builtin-superkinds/builtin-superkinds-capabilities.rs +tests/ui/cast/cast-does-fallback.rs +tests/ui/cast/cast-region-to-uint.rs +tests/ui/cast/cast-rfc0401-vtable-kinds.rs +tests/ui/cast/cast-rfc0401.rs +tests/ui/cast/cast-to-box-arr.rs +tests/ui/cast/cast-to-infer-ty.rs +tests/ui/cast/cast.rs +tests/ui/cast/codegen-object-shim.rs +tests/ui/cast/coercion-as-explicit-cast.rs +tests/ui/cast/constant-expression-cast-9942.rs +tests/ui/cast/fat-ptr-cast-rpass.rs +tests/ui/cast/owned-struct-to-trait-cast-6318.rs +tests/ui/cast/supported-cast.rs +tests/ui/cast/trait-object-cast-segfault-4333.rs +tests/ui/cast/u8-to-char-cast-9918.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs +tests/ui/cfg/cfg-false-use-item.rs +tests/ui/cfg/cfg-macros-foo.rs +tests/ui/cfg/cfg-macros-notfoo.rs +tests/ui/cfg/cfg-target-abi.rs +tests/ui/cfg/cfg-target-compact.rs +tests/ui/cfg/cfg-target-vendor.rs +tests/ui/cfg/cfgs-on-items.rs +tests/ui/cfg/conditional-compilation-struct-11085.rs +tests/ui/cfg/conditional-compile.rs +tests/ui/cfg/true-false.rs +tests/ui/closures/2229_closure_analysis/match/issue-87097.rs +tests/ui/closures/2229_closure_analysis/match/issue-87426.rs +tests/ui/closures/2229_closure_analysis/match/issue-87988.rs +tests/ui/closures/2229_closure_analysis/migrations/insignificant_drop_attr_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/issue-78720.rs +tests/ui/closures/2229_closure_analysis/migrations/no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/precise_no_migrations.rs +tests/ui/closures/2229_closure_analysis/migrations/unpin_no_migration.rs +tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs +tests/ui/closures/2229_closure_analysis/run_pass/by_value.rs +tests/ui/closures/2229_closure_analysis/run_pass/disjoint-capture-in-same-closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs +tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs +tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs +tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs +tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs +tests/ui/closures/boxed-closure-lifetime-13808.rs +tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs +tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs +tests/ui/closures/closure-mut-argument-6153.rs +tests/ui/closures/closure-type-inference-in-context-9129.rs +tests/ui/closures/closure-upvar-trait-caching.rs +tests/ui/closures/issue-10682.rs +tests/ui/closures/issue-1460.rs +tests/ui/closures/issue-22864-1.rs +tests/ui/closures/issue-22864-2.rs +tests/ui/closures/issue-42463.rs +tests/ui/closures/issue-5239-2.rs +tests/ui/closures/issue-868.rs +tests/ui/closures/no-capture-closure-call.rs +tests/ui/closures/old-closure-arg-call-as.rs +tests/ui/closures/old-closure-arg.rs +tests/ui/closures/old-closure-explicit-types.rs +tests/ui/closures/old-closure-expr-precedence.rs +tests/ui/closures/old-closure-fn-coerce.rs +tests/ui/closures/old-closure-iter-1.rs +tests/ui/closures/old-closure-iter-2.rs +tests/ui/closures/once-move-out-on-heap.rs +tests/ui/closures/semistatement-in-lambda.rs +tests/ui/closures/unused-closure-ice-16256.rs +tests/ui/codegen/assign-expr-unit-type.rs +tests/ui/codegen/cfguard-run.rs +tests/ui/codegen/dynamic-size-of-prefix-correctly-36278.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline1.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/inline2.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/segfault.rs +tests/ui/codegen/equal-pointers-unequal/as-cast/zero.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/exposed-provenance/zero.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline1.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/inline2.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/segfault.rs +tests/ui/codegen/equal-pointers-unequal/strict-provenance/zero.rs +tests/ui/codegen/i128-shift-overflow-check-76042.rs +tests/ui/codegen/init-large-type.rs +tests/ui/codegen/issue-101585-128bit-repeat.rs +tests/ui/codegen/issue-16602-1.rs +tests/ui/codegen/issue-16602-2.rs +tests/ui/codegen/issue-16602-3.rs +tests/ui/codegen/issue-27859.rs +tests/ui/codegen/issue-28950.rs +tests/ui/codegen/issue-55976.rs +tests/ui/codegen/issue-63787.rs +tests/ui/codegen/issue-82833-slice-miscompile.rs +tests/ui/codegen/issue-82859-slice-miscompile.rs +tests/ui/codegen/llvm-miscompile-metadata-invalidation-36023.rs +tests/ui/codegen/matrix-row-swap-54462.rs +tests/ui/codegen/nested-enum-match-optimization-15793.rs +tests/ui/codegen/output-slot-init-vs-noninit.rs +tests/ui/codegen/StackColoring-not-blowup-stack-issue-40883.rs +tests/ui/codegen/static-array-comparison-7012.rs +tests/ui/codegen/subtyping-impacts-selection-1.rs +tests/ui/codegen/subtyping-impacts-selection-2.rs +tests/ui/coercion/any-trait-object-debug-12744.rs +tests/ui/coercion/coerce-expect-unsized.rs +tests/ui/coercion/coerce-mut-trait-object-8248.rs +tests/ui/coercion/coerce-reborrow-imm-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-imm-vec-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-arg.rs +tests/ui/coercion/coerce-reborrow-mut-ptr-rcvr.rs +tests/ui/coercion/coerce-reborrow-mut-vec-arg.rs +tests/ui/coercion/coerce-reborrow-mut-vec-rcvr.rs +tests/ui/coercion/coerce-unify-return.rs +tests/ui/coercion/coerce-unify.rs +tests/ui/coercion/issue-14589.rs +tests/ui/coercion/issue-26905-rpass.rs +tests/ui/coercion/issue-3794.rs +tests/ui/coercion/method-return-trait-object-14399.rs +tests/ui/coercion/trait-object-arrays-11205.rs +tests/ui/coercion/trait-object-coercion-distribution-9951.rs +tests/ui/coercion/unsafe-coercion.rs +tests/ui/coherence/coherence-impl-in-fn.rs +tests/ui/coherence/coherence-rfc447-constrained.rs +tests/ui/coherence/coherence-where-clause.rs +tests/ui/collections/hashset-connected-border-12860.rs +tests/ui/collections/vecdeque-append-operation-54477.rs +tests/ui/compile-flags/run-pass/repeated-debug-opt-flags.rs +tests/ui/compiletest-self-test/test-aux-bin.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs +tests/ui/const-generics/array-wrapper-struct-ctor.rs +tests/ui/const-generics/coerce_unsized_array.rs +tests/ui/const-generics/concrete-const-as-fn-arg.rs +tests/ui/const-generics/concrete-const-impl-method.rs +tests/ui/const-generics/const-arg-in-fn.rs +tests/ui/const-generics/const-fn-with-const-param.rs +tests/ui/const-generics/const-generic-type_name.rs +tests/ui/const-generics/core-types.rs +tests/ui/const-generics/defaults/complex-unord-param.rs +tests/ui/const-generics/defaults/const-default.rs +tests/ui/const-generics/defaults/const-param-as-default-value.rs +tests/ui/const-generics/defaults/const-param-in-ty-defaults.rs +tests/ui/const-generics/defaults/rp_impl_trait.rs +tests/ui/const-generics/defaults/trait_objects.rs +tests/ui/const-generics/dyn-supertraits.rs +tests/ui/const-generics/early/const-param-hygiene.rs +tests/ui/const-generics/generic_arg_infer/array-repeat-expr.rs +tests/ui/const-generics/generic_arg_infer/dont-use-defaults.rs +tests/ui/const-generics/generic_const_exprs/associated-consts.rs +tests/ui/const-generics/generic_const_exprs/division.rs +tests/ui/const-generics/generic_const_exprs/dyn-compatibility-ok.rs +tests/ui/const-generics/generic_const_exprs/elaborate-trait-pred.rs +tests/ui/const-generics/generic_const_exprs/fn_call.rs +tests/ui/const-generics/generic_const_exprs/from-sig.rs +tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs +tests/ui/const-generics/generic_const_exprs/issue-73899.rs +tests/ui/const-generics/generic_const_exprs/less_than.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs +tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs +tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs +tests/ui/const-generics/generic_const_exprs/unop.rs +tests/ui/const-generics/impl-const-generic-struct.rs +tests/ui/const-generics/infer_arg_from_pat.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs +tests/ui/const-generics/inhabited-assoc-ty-ice-2.rs +tests/ui/const-generics/issue-102124.rs +tests/ui/const-generics/issues/issue-61432.rs +tests/ui/const-generics/issues/issue-62187-encountered-polymorphic-const.rs +tests/ui/const-generics/issues/issue-69654-run-pass.rs +tests/ui/const-generics/issues/issue-70125-1.rs +tests/ui/const-generics/issues/issue-70125-2.rs +tests/ui/const-generics/issues/issue-75299.rs +tests/ui/const-generics/min_const_generics/const_fn_in_generics.rs +tests/ui/const-generics/min_const_generics/inferred_const.rs +tests/ui/const-generics/min_const_generics/macro.rs +tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs +tests/ui/const-generics/promotion.rs +tests/ui/const-generics/slice-const-param.rs +tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs +tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs +tests/ui/const-generics/type-dependent/issue-61936.rs +tests/ui/const-generics/type-dependent/issue-63695.rs +tests/ui/const-generics/type-dependent/issue-69816.rs +tests/ui/const-generics/type-dependent/issue-70507.rs +tests/ui/const-generics/type-dependent/issue-71805.rs +tests/ui/const-generics/type-dependent/qpath.rs +tests/ui/const-generics/type-dependent/simple.rs +tests/ui/const-generics/uninferred-consts-during-codegen-1.rs +tests/ui/const-generics/uninferred-consts-during-codegen-2.rs +tests/ui/consts/assoc-const.rs +tests/ui/consts/bswap-const.rs +tests/ui/consts/cast-discriminant-zst-enum.rs +tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs +tests/ui/consts/const-adt-align-mismatch.rs +tests/ui/consts/const-autoderef.rs +tests/ui/consts/const-big-enum.rs +tests/ui/consts/const-binops.rs +tests/ui/consts/const-bitshift-rhs-inference.rs +tests/ui/consts/const-block-item-macro-codegen.rs +tests/ui/consts/const-block-item.rs +tests/ui/consts/const-block-non-item-statement-3.rs +tests/ui/consts/const-block-non-item-statement-rpass.rs +tests/ui/consts/const-block.rs +tests/ui/consts/const-blocks/const-repeat.rs +tests/ui/consts/const-blocks/run-pass.rs +tests/ui/consts/const-bound.rs +tests/ui/consts/const-byte-str-cast.rs +tests/ui/consts/const-cast-ptr-int.rs +tests/ui/consts/const-cast.rs +tests/ui/consts/const-compare-bytes.rs +tests/ui/consts/const-const.rs +tests/ui/consts/const-contents.rs +tests/ui/consts/const-deref.rs +tests/ui/consts/const-endianess.rs +tests/ui/consts/const-enum-byref-self.rs +tests/ui/consts/const-enum-byref.rs +tests/ui/consts/const-enum-cast.rs +tests/ui/consts/const-enum-ptr.rs +tests/ui/consts/const-enum-struct.rs +tests/ui/consts/const-enum-struct2.rs +tests/ui/consts/const-enum-structlike.rs +tests/ui/consts/const-enum-tuple.rs +tests/ui/consts/const-enum-tuple2.rs +tests/ui/consts/const-enum-tuplestruct.rs +tests/ui/consts/const-enum-tuplestruct2.rs +tests/ui/consts/const-enum-vec-index.rs +tests/ui/consts/const-enum-vec-ptr.rs +tests/ui/consts/const-enum-vector.rs +tests/ui/consts/const-err-rpass.rs +tests/ui/consts/const-eval/const_fn_ptr.rs +tests/ui/consts/const-eval/enum_discr.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs +tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs +tests/ui/consts/const-eval/issue-64908.rs +tests/ui/consts/const-eval/issue-64970.rs +tests/ui/consts/const-eval/nrvo.rs +tests/ui/consts/const-eval/simd/insert_extract.rs +tests/ui/consts/const-eval/strlen.rs +tests/ui/consts/const-eval/write-to-uninhabited-enum-variant.rs +tests/ui/consts/const-expr-in-fixed-length-vec.rs +tests/ui/consts/const-expr-in-vec-repeat.rs +tests/ui/consts/const-extern-fn/const-extern-fn.rs +tests/ui/consts/const-extern-function.rs +tests/ui/consts/const-fields-and-indexing.rs +tests/ui/consts/const-fn-method.rs +tests/ui/consts/const-fn-nested.rs +tests/ui/consts/const-fn-type-name-any.rs +tests/ui/consts/const-fn-type-name.rs +tests/ui/consts/const-fn-val.rs +tests/ui/consts/const-fn.rs +tests/ui/consts/const-index-feature-gate.rs +tests/ui/consts/const-int-arithmetic-overflow.rs +tests/ui/consts/const-int-arithmetic.rs +tests/ui/consts/const-int-conversion-rpass.rs +tests/ui/consts/const-int-overflowing-rpass.rs +tests/ui/consts/const-int-pow-rpass.rs +tests/ui/consts/const-int-rotate-rpass.rs +tests/ui/consts/const-int-saturating-arith.rs +tests/ui/consts/const-int-sign-rpass.rs +tests/ui/consts/const-int-wrapping-rpass.rs +tests/ui/consts/const-meth-pattern.rs +tests/ui/consts/const-needs_drop.rs +tests/ui/consts/const-negation.rs +tests/ui/consts/const-negative.rs +tests/ui/consts/const-nullary-enum.rs +tests/ui/consts/const-nullary-univariant-enum.rs +tests/ui/consts/const-pattern-variant.rs +tests/ui/consts/const-ptr-nonnull-rpass.rs +tests/ui/consts/const-ptr-unique-rpass.rs +tests/ui/consts/const-rec-and-tup.rs +tests/ui/consts/const-region-ptrs-noncopy.rs +tests/ui/consts/const-region-ptrs.rs +tests/ui/consts/const-repeated-values.rs +tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs +tests/ui/consts/const-struct.rs +tests/ui/consts/const-trait-to-trait.rs +tests/ui/consts/const-tuple-struct.rs +tests/ui/consts/const-typeid-of-rpass.rs +tests/ui/consts/const-unit-struct.rs +tests/ui/consts/const-unsafe-fn.rs +tests/ui/consts/const-variant-count.rs +tests/ui/consts/const-vec-of-fns.rs +tests/ui/consts/const-vec-syntax.rs +tests/ui/consts/const-vecs-and-slices.rs +tests/ui/consts/const.rs +tests/ui/consts/consts-in-patterns.rs +tests/ui/consts/control-flow/basics.rs +tests/ui/consts/control-flow/short-circuit-let.rs +tests/ui/consts/control-flow/short-circuit.rs +tests/ui/consts/deref_in_pattern.rs +tests/ui/consts/ice-48279.rs +tests/ui/consts/is_val_statically_known.rs +tests/ui/consts/issue-105536-const-val-roundtrip-ptr-eq.rs +tests/ui/consts/issue-13902.rs +tests/ui/consts/issue-17074.rs +tests/ui/consts/issue-17718-borrow-interior.rs +tests/ui/consts/issue-17756.rs +tests/ui/consts/issue-19244.rs +tests/ui/consts/issue-21721.rs +tests/ui/consts/issue-23833.rs +tests/ui/consts/issue-23968-const-not-overflow.rs +tests/ui/consts/issue-27890.rs +tests/ui/consts/issue-29914-2.rs +tests/ui/consts/issue-29914-3.rs +tests/ui/consts/issue-29914.rs +tests/ui/consts/issue-29927-1.rs +tests/ui/consts/issue-29927.rs +tests/ui/consts/issue-33537.rs +tests/ui/consts/issue-37222.rs +tests/ui/consts/issue-37991.rs +tests/ui/consts/issue-44255.rs +tests/ui/consts/issue-46553.rs +tests/ui/consts/issue-58435-ice-with-assoc-const.rs +tests/ui/consts/issue-64059.rs +tests/ui/consts/issue-66345.rs +tests/ui/consts/issue-67529.rs +tests/ui/consts/issue-67640.rs +tests/ui/consts/issue-67641.rs +tests/ui/consts/issue-67862.rs +tests/ui/consts/issue-69532.rs +tests/ui/consts/issue-70773-mir-typeck-lt-norm.rs +tests/ui/consts/issue-90762.rs +tests/ui/consts/issue-broken-mir.rs +tests/ui/consts/load-preserves-partial-init.rs +tests/ui/consts/locals-in-const-fn.rs +tests/ui/consts/match-const-fn-structs.rs +tests/ui/consts/min_const_fn/allow_const_fn_ptr_run_pass.rs +tests/ui/consts/miri_unleashed/slice_eq.rs +tests/ui/consts/module-const-array-size-13763.rs +tests/ui/consts/mozjs-error.rs +tests/ui/consts/mut-ptr-to-static.rs +tests/ui/consts/non-scalar-cast.rs +tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs +tests/ui/consts/packed_pattern.rs +tests/ui/consts/packed_pattern2.rs +tests/ui/consts/promote_borrowed_field.rs +tests/ui/consts/promoted_const_call4.rs +tests/ui/consts/promotion-mutable-ref.rs +tests/ui/consts/references.rs +tests/ui/consts/repeat_match.rs +tests/ui/consts/return-in-const-fn.rs +tests/ui/consts/rvalue-static-promotion.rs +tests/ui/consts/signed_enum_discr.rs +tests/ui/consts/static-mut-refs.rs +tests/ui/consts/static-raw-pointer-interning.rs +tests/ui/consts/static-raw-pointer-interning2.rs +tests/ui/consts/std/iter.rs +tests/ui/consts/trait_specialization.rs +tests/ui/consts/transmute-const.rs +tests/ui/consts/tuple-struct-constructors.rs +tests/ui/consts/write_to_mut_ref_dest.rs +tests/ui/consts/zst_no_llvm_alloc.rs +tests/ui/coroutine/addassign-yield.rs +tests/ui/coroutine/borrow-in-tail-expr.rs +tests/ui/coroutine/conditional-drop.rs +tests/ui/coroutine/control-flow.rs +tests/ui/coroutine/discriminant.rs +tests/ui/coroutine/drop-and-replace.rs +tests/ui/coroutine/drop-env.rs +tests/ui/coroutine/drop-track-addassign-yield.rs +tests/ui/coroutine/issue-44197.rs +tests/ui/coroutine/issue-52398.rs +tests/ui/coroutine/issue-57084.rs +tests/ui/coroutine/issue-58888.rs +tests/ui/coroutine/issue-69039.rs +tests/ui/coroutine/iterator-count.rs +tests/ui/coroutine/live-upvar-across-yield.rs +tests/ui/coroutine/match-bindings.rs +tests/ui/coroutine/nested_coroutine.rs +tests/ui/coroutine/niche-in-coroutine.rs +tests/ui/coroutine/non-static-is-unpin.rs +tests/ui/coroutine/overlap-locals.rs +tests/ui/coroutine/panic-drops-resume.rs +tests/ui/coroutine/panic-drops.rs +tests/ui/coroutine/panic-safe.rs +tests/ui/coroutine/pin-box-coroutine.rs +tests/ui/coroutine/resume-after-return.rs +tests/ui/coroutine/resume-arg-size.rs +tests/ui/coroutine/resume-live-across-yield.rs +tests/ui/coroutine/size-moved-locals.rs +tests/ui/coroutine/smoke-resume-args.rs +tests/ui/coroutine/static-coroutine.rs +tests/ui/coroutine/too-live-local-in-immovable-gen.rs +tests/ui/coroutine/uninhabited-field.rs +tests/ui/coroutine/yield-in-initializer.rs +tests/ui/debuginfo/impl-copy-function-debuginfo-58463.rs +tests/ui/debuginfo/issue-105386-debuginfo-ub.rs +tests/ui/delegation/explicit-paths-in-traits-pass.rs +tests/ui/delegation/explicit-paths-pass.rs +tests/ui/delegation/explicit-paths-signature-pass.rs +tests/ui/delegation/generics/free-fn-to-free-fn-pass.rs +tests/ui/delegation/generics/free-fn-to-trait-method-pass.rs +tests/ui/delegation/generics/impl-to-free-fn-pass.rs +tests/ui/delegation/generics/impl-trait-to-trait-method-pass.rs +tests/ui/delegation/generics/inherent-impl-to-trait-method-pass.rs +tests/ui/delegation/generics/trait-method-to-other-pass.rs +tests/ui/delegation/method-call-priority.rs +tests/ui/delegation/self-coercion.rs +tests/ui/delegation/target-expr-pass.rs +tests/ui/deprecation/deprecated-macro_escape-inner.rs +tests/ui/deref/dereferenceable-type-behavior-22992.rs +tests/ui/derives/derive-Debug-use-ufcs-struct.rs +tests/ui/derives/derive-Debug-use-ufcs-tuple.rs +tests/ui/derives/derive-partial-ord-discriminant-64bit.rs +tests/ui/derives/derive-partial-ord-discriminant.rs +tests/ui/derives/derive-partial-ord.rs +tests/ui/deriving/derive-partialord-correctness.rs +tests/ui/deriving/deriving-associated-types.rs +tests/ui/deriving/deriving-clone-enum.rs +tests/ui/deriving/deriving-clone-generic-enum.rs +tests/ui/deriving/deriving-clone-generic-struct.rs +tests/ui/deriving/deriving-clone-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-generic-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct-enum.rs +tests/ui/deriving/deriving-cmp-generic-struct.rs +tests/ui/deriving/deriving-cmp-generic-tuple-struct.rs +tests/ui/deriving/deriving-cmp-shortcircuit.rs +tests/ui/deriving/deriving-coerce-pointee.rs +tests/ui/deriving/deriving-copyclone.rs +tests/ui/deriving/deriving-default-box.rs +tests/ui/deriving/deriving-default-enum.rs +tests/ui/deriving/deriving-eq-ord-boxed-slice.rs +tests/ui/deriving/deriving-hash.rs +tests/ui/deriving/deriving-in-fn.rs +tests/ui/deriving/deriving-meta-multiple.rs +tests/ui/deriving/deriving-meta.rs +tests/ui/deriving/deriving-self-lifetime-totalord-totaleq.rs +tests/ui/deriving/deriving-show-2.rs +tests/ui/deriving/deriving-show.rs +tests/ui/deriving/deriving-via-extension-c-enum.rs +tests/ui/deriving/deriving-via-extension-enum.rs +tests/ui/deriving/deriving-via-extension-struct-empty.rs +tests/ui/deriving/deriving-via-extension-struct-like-enum-variant.rs +tests/ui/deriving/deriving-via-extension-struct-tuple.rs +tests/ui/deriving/deriving-via-extension-struct.rs +tests/ui/deriving/deriving-via-extension-type-params.rs +tests/ui/deriving/deriving-with-repr-packed.rs +tests/ui/deriving/issue-15689-1.rs +tests/ui/deriving/issue-19358.rs +tests/ui/deriving/issue-3935.rs +tests/ui/dest-prop/skeptic-miscompile.rs +tests/ui/destructuring-assignment/drop-order.rs +tests/ui/destructuring-assignment/let-binding-tuple-destructuring.rs +tests/ui/destructuring-assignment/nested_destructure.rs +tests/ui/destructuring-assignment/slice_destructure.rs +tests/ui/destructuring-assignment/struct_destructure.rs +tests/ui/destructuring-assignment/tuple_destructure.rs +tests/ui/destructuring-assignment/tuple_struct_destructure.rs +tests/ui/destructuring-assignment/warn-unused-duplication.rs +tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/conditional-drop-10734.rs +tests/ui/drop/destructor-run-for-expression-4734.rs +tests/ui/drop/destructor-run-for-let-ignore-6892.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs +tests/ui/drop/drop-count-assertion-16151.rs +tests/ui/drop/drop-immediate-non-box-ty-9446.rs +tests/ui/drop/drop-on-empty-block-exit.rs +tests/ui/drop/drop-on-ret.rs +tests/ui/drop/drop-once-on-move.rs +tests/ui/drop/drop-struct-as-object.rs +tests/ui/drop/drop-trait-enum.rs +tests/ui/drop/drop-trait-generic.rs +tests/ui/drop/drop-trait.rs +tests/ui/drop/drop-with-type-ascription-1.rs +tests/ui/drop/drop-with-type-ascription-2.rs +tests/ui/drop/dropck_legal_cycles.rs +tests/ui/drop/dropck-eyepatch-reorder.rs +tests/ui/drop/dropck-eyepatch.rs +tests/ui/drop/dynamic-drop.rs +tests/ui/drop/enum-drop-impl-15063.rs +tests/ui/drop/generic-drop-trait-bound-15858.rs +tests/ui/drop/issue-21486.rs +tests/ui/drop/issue-23338-ensure-param-drop-order.rs +tests/ui/drop/issue-23611-enum-swap-in-drop.rs +tests/ui/drop/issue-2734.rs +tests/ui/drop/issue-2735-2.rs +tests/ui/drop/issue-2735-3.rs +tests/ui/drop/issue-2735.rs +tests/ui/drop/issue-30018-nopanic.rs +tests/ui/drop/issue-48962.rs +tests/ui/drop/issue-90752-raw-ptr-shenanigans.rs +tests/ui/drop/issue-90752.rs +tests/ui/drop/issue-979.rs +tests/ui/drop/multiple-drop-safe-code-25549.rs +tests/ui/drop/nested-return-drop-order.rs +tests/ui/drop/no-drop-flag-size.rs +tests/ui/drop/nondrop-cycle.rs +tests/ui/drop/panic-during-drop-14875.rs +tests/ui/drop/repeat-drop.rs +tests/ui/drop/static-issue-17302.rs +tests/ui/drop/struct-field-drop-order.rs +tests/ui/drop/terminate-in-initializer.rs +tests/ui/drop/trait-object-drop-10802.rs +tests/ui/dropck/cleanup-arm-conditional.rs +tests/ui/dropck/dropck_traits.rs +tests/ui/dropck/issue-24805-dropck-itemless.rs +tests/ui/dropck/issue-28498-ugeh-with-lifetime-param.rs +tests/ui/dropck/issue-28498-ugeh-with-passed-to-fn.rs +tests/ui/dropck/issue-28498-ugeh-with-trait-bound.rs +tests/ui/dropck/issue-29844.rs +tests/ui/dropck/issue-34053.rs +tests/ui/dynamically-sized-types/dst-coerce-custom.rs +tests/ui/dynamically-sized-types/dst-coerce-rc.rs +tests/ui/dynamically-sized-types/dst-coercions.rs +tests/ui/dynamically-sized-types/dst-deref-mut.rs +tests/ui/dynamically-sized-types/dst-deref.rs +tests/ui/dynamically-sized-types/dst-field-align.rs +tests/ui/dynamically-sized-types/dst-index.rs +tests/ui/dynamically-sized-types/dst-irrefutable-bind.rs +tests/ui/dynamically-sized-types/dst-raw.rs +tests/ui/dynamically-sized-types/dst-struct-sole.rs +tests/ui/dynamically-sized-types/dst-struct.rs +tests/ui/dynamically-sized-types/dst-trait.rs +tests/ui/editions/edition-specific-identifier-shadowing-53333.rs +tests/ui/editions/never-type-fallback.rs +tests/ui/enum-discriminant/actually_not_an_enum-discriminant.rs +tests/ui/enum-discriminant/arbitrary_enum_discriminant.rs +tests/ui/enum-discriminant/discriminant_size.rs +tests/ui/enum-discriminant/discriminant_value-wrapper.rs +tests/ui/enum-discriminant/discriminant_value.rs +tests/ui/enum-discriminant/enum-discriminant-const-eval-truncation-9837.rs +tests/ui/enum-discriminant/get_discr.rs +tests/ui/enum-discriminant/issue-104519.rs +tests/ui/enum-discriminant/issue-50689.rs +tests/ui/enum-discriminant/issue-51582.rs +tests/ui/enum-discriminant/issue-61696.rs +tests/ui/enum-discriminant/issue-70509-partial_eq.rs +tests/ui/enum-discriminant/issue-90038.rs +tests/ui/enum-discriminant/niche-prefer-zero.rs +tests/ui/enum-discriminant/niche.rs +tests/ui/enum-discriminant/repr128-get-discriminant-issue-43398.rs +tests/ui/enum-discriminant/repr128.rs +tests/ui/enum/enum-with-generic-parameter-5997.rs +tests/ui/enum/enum-with-uninhabited-variant.rs +tests/ui/enum/issue-19340-2.rs +tests/ui/enum/issue-23304-1.rs +tests/ui/enum/issue-23304-2.rs +tests/ui/enum/issue-42747.rs +tests/ui/enum/match-either-enum-variants-6117.rs +tests/ui/enum/zero-variant-enum-pattern-matching-3037.rs +tests/ui/env-macro/env-env-overload.rs +tests/ui/env-macro/env-env.rs +tests/ui/env-macro/option_env-not-defined.rs +tests/ui/explicit-tail-calls/ctfe-collatz-multi-rec.rs +tests/ui/expr/block-fn.rs +tests/ui/expr/block-generic.rs +tests/ui/expr/block.rs +tests/ui/expr/compound-assignment/eval-order.rs +tests/ui/expr/copy.rs +tests/ui/expr/if-bot.rs +tests/ui/expr/if-generic.rs +tests/ui/expr/if-panic-all.rs +tests/ui/expr/if/attrs/gate-whole-expr.rs +tests/ui/expr/if/expr-if-panic-pass.rs +tests/ui/expr/if/expr-if.rs +tests/ui/expr/if/if-check.rs +tests/ui/expr/if/if-ret.rs +tests/ui/expr/scope.rs +tests/ui/expr/weird-exprs.rs +tests/ui/extern/empty-struct-extern-fn-16441.rs +tests/ui/extern/extern-1.rs +tests/ui/extern/extern-compare-with-return-type.rs +tests/ui/extern/extern-prelude-no-speculative.rs +tests/ui/extern/extern-prelude-std.rs +tests/ui/extern/extern-types-manual-sync-send.rs +tests/ui/extern/extern-types-pointer-cast.rs +tests/ui/extern/extern-types-thin-pointer.rs +tests/ui/extern/extern-types-trait-impl.rs +tests/ui/extern/issue-10025.rs +tests/ui/extern/issue-13655.rs +tests/ui/extern/issue-64655-allow-unwind-when-calling-panic-directly.rs +tests/ui/extern/issue-64655-extern-rust-must-allow-unwind.rs +tests/ui/float/classify-runtime-const.rs +tests/ui/float/conv-bits-runtime-const.rs +tests/ui/fmt/debug-single-call.rs +tests/ui/fmt/fmt_debug/full.rs +tests/ui/fmt/fmt_debug/none.rs +tests/ui/fmt/fmt_debug/shallow.rs +tests/ui/fmt/format-args-capture-macro-hygiene-pass.rs +tests/ui/fmt/format-args-capture.rs +tests/ui/fmt/issue-23781.rs +tests/ui/fmt/println-debug-different-types.rs +tests/ui/fn_traits/call-unit-struct-impl-fn-once.rs +tests/ui/fn_traits/fn-trait-explicit-call.rs +tests/ui/fn/dyn-fn-alignment.rs +tests/ui/fn/expr-fn.rs +tests/ui/fn/fun-call-variants.rs +tests/ui/fn/issue-1451.rs +tests/ui/fn/issue-3904.rs +tests/ui/fn/nested-function-names-issue-8587.rs +tests/ui/for-loop-while/auto-loop.rs +tests/ui/for-loop-while/break-value.rs +tests/ui/for-loop-while/break.rs +tests/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs +tests/ui/for-loop-while/for-destruct.rs +tests/ui/for-loop-while/for-loop-goofiness.rs +tests/ui/for-loop-while/for-loop-has-unit-body.rs +tests/ui/for-loop-while/for-loop-into-iterator.rs +tests/ui/for-loop-while/for-loop-lifetime-of-unbound-values.rs +tests/ui/for-loop-while/for-loop-macro.rs +tests/ui/for-loop-while/for-loop-mut-ref-element.rs +tests/ui/for-loop-while/for-loop-panic.rs +tests/ui/for-loop-while/for-loop-unconstrained-element-type-i32-fallback.rs +tests/ui/for-loop-while/foreach-external-iterators-break.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap-break-restart.rs +tests/ui/for-loop-while/foreach-external-iterators-hashmap.rs +tests/ui/for-loop-while/foreach-external-iterators-loop.rs +tests/ui/for-loop-while/foreach-external-iterators-nested.rs +tests/ui/for-loop-while/foreach-external-iterators.rs +tests/ui/for-loop-while/foreach-nested.rs +tests/ui/for-loop-while/foreach-put-structured.rs +tests/ui/for-loop-while/foreach-simple-outer-slot.rs +tests/ui/for-loop-while/issue-1257.rs +tests/ui/for-loop-while/issue-2216.rs +tests/ui/for-loop-while/issue-51345.rs +tests/ui/for-loop-while/issue-69841.rs +tests/ui/for-loop-while/label_break_value.rs +tests/ui/for-loop-while/labeled-break.rs +tests/ui/for-loop-while/linear-for-loop.rs +tests/ui/for-loop-while/liveness-assign-imm-local-after-loop.rs +tests/ui/for-loop-while/liveness-loop-break.rs +tests/ui/for-loop-while/long-while.rs +tests/ui/for-loop-while/loop-break-cont-1.rs +tests/ui/for-loop-while/loop-break-cont.rs +tests/ui/for-loop-while/loop-break-value.rs +tests/ui/for-loop-while/loop-diverges.rs +tests/ui/for-loop-while/loop-label-shadowing.rs +tests/ui/for-loop-while/loop-labeled-break-value.rs +tests/ui/for-loop-while/loop-no-reinit-needed-post-bot.rs +tests/ui/for-loop-while/loop-scope.rs +tests/ui/for-loop-while/nested-loop-break-unit.rs +tests/ui/for-loop-while/while-cont.rs +tests/ui/for-loop-while/while-flow-graph.rs +tests/ui/for-loop-while/while-label.rs +tests/ui/for-loop-while/while-let-2.rs +tests/ui/for-loop-while/while-let-scope.rs +tests/ui/for-loop-while/while-let.rs +tests/ui/for-loop-while/while-loop-constraints-2.rs +tests/ui/for-loop-while/while-prelude-drop.rs +tests/ui/for-loop-while/while-with-break.rs +tests/ui/for-loop-while/while.rs +tests/ui/foreign/foreign-fn-linkname.rs +tests/ui/foreign/foreign-truncated-arguments.rs +tests/ui/function-pointer/function-pointer-comparison-54696.rs +tests/ui/function-pointer/function-pointer-comparison-issue-54685.rs +tests/ui/functions-closures/bare-fn-implements-fn-mut.rs +tests/ui/functions-closures/call-closure-from-overloaded-op.rs +tests/ui/functions-closures/capture-clauses-boxed-closures.rs +tests/ui/functions-closures/capture-clauses-unboxed-closures.rs +tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs +tests/ui/functions-closures/closure-bounds-can-capture-chan.rs +tests/ui/functions-closures/closure-expected-type/issue-38714.rs +tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs +tests/ui/functions-closures/closure-expected-type/supply-nothing.rs +tests/ui/functions-closures/closure-immediate.rs +tests/ui/functions-closures/closure-inference.rs +tests/ui/functions-closures/closure-inference2.rs +tests/ui/functions-closures/closure-reform.rs +tests/ui/functions-closures/closure-returning-closure.rs +tests/ui/functions-closures/closure-to-fn-coercion.rs +tests/ui/functions-closures/copy-closure.rs +tests/ui/functions-closures/fn-bare-assign.rs +tests/ui/functions-closures/fn-bare-coerce-to-block.rs +tests/ui/functions-closures/fn-bare-item.rs +tests/ui/functions-closures/fn-bare-size.rs +tests/ui/functions-closures/fn-bare-spawn.rs +tests/ui/functions-closures/fn-coerce-field.rs +tests/ui/functions-closures/fn-item-type-cast.rs +tests/ui/functions-closures/fn-item-type-coerce.rs +tests/ui/functions-closures/fn-item-type-zero-sized.rs +tests/ui/functions-closures/fn-lval.rs +tests/ui/functions-closures/fn-type-infer.rs +tests/ui/functions-closures/implied-bounds-closure-arg-outlives.rs +tests/ui/functions-closures/nullable-pointer-opt-closures.rs +tests/ui/functions-closures/parallel-codegen-closures.rs +tests/ui/functions-closures/return-from-closure.rs +tests/ui/generic-associated-types/collections.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-1.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs +tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-3.rs +tests/ui/generic-associated-types/generic-associated-type-bounds.rs +tests/ui/generic-associated-types/issue-76826.rs +tests/ui/generic-associated-types/iterable.rs +tests/ui/generic-associated-types/streaming_iterator.rs +tests/ui/generics/autobind.rs +tests/ui/generics/generic-alias-unique.rs +tests/ui/generics/generic-associated-type-deref-target-56237.rs +tests/ui/generics/generic-default-type-params.rs +tests/ui/generics/generic-derived-type.rs +tests/ui/generics/generic-exterior-unique.rs +tests/ui/generics/generic-extern-mangle.rs +tests/ui/generics/generic-fn-infer.rs +tests/ui/generics/generic-fn-twice.rs +tests/ui/generics/generic-fn-unique.rs +tests/ui/generics/generic-fn.rs +tests/ui/generics/generic-ivec-leak.rs +tests/ui/generics/generic-newtype-struct.rs +tests/ui/generics/generic-object.rs +tests/ui/generics/generic-recursive-tag.rs +tests/ui/generics/generic-static-methods.rs +tests/ui/generics/generic-tag-corruption.rs +tests/ui/generics/generic-tag-local.rs +tests/ui/generics/generic-tag-match.rs +tests/ui/generics/generic-tag-values.rs +tests/ui/generics/generic-tag.rs +tests/ui/generics/generic-temporary.rs +tests/ui/generics/generic-tup.rs +tests/ui/generics/generic-type.rs +tests/ui/generics/generic-unique.rs +tests/ui/generics/issue-1112.rs +tests/ui/generics/issue-2936.rs +tests/ui/generics/issue-32498.rs +tests/ui/generics/issue-333.rs +tests/ui/generics/issue-94923.rs +tests/ui/generics/mid-path-type-params.rs +tests/ui/half-open-range-patterns/half-open-range-pats-semantics.rs +tests/ui/half-open-range-patterns/range_pat_interactions0.rs +tests/ui/half-open-range-patterns/slice_pattern_syntax_problem2.rs +tests/ui/hashmap/hashmap-memory.rs +tests/ui/hashmap/hashmap-path-key.rs +tests/ui/hashmap/hashset-enum-variant.rs +tests/ui/higher-ranked/higher-ranked-encoding.rs +tests/ui/higher-ranked/leak-check/leak-check-in-selection-1.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait-object.rs +tests/ui/higher-ranked/trait-bounds/hrtb-fn-like-trait.rs +tests/ui/higher-ranked/trait-bounds/hrtb-parse.rs +tests/ui/higher-ranked/trait-bounds/hrtb-resolve-lifetime.rs +tests/ui/higher-ranked/trait-bounds/hrtb-trait-object-paren-notation.rs +tests/ui/higher-ranked/trait-bounds/hrtb-unboxed-closure-trait.rs +tests/ui/higher-ranked/trait-bounds/issue-36139-normalize-closure-sig.rs +tests/ui/higher-ranked/trait-bounds/issue-39292.rs +tests/ui/hygiene/hygiene-dodging-1.rs +tests/ui/hygiene/hygiene.rs +tests/ui/hygiene/hygienic-labels-in-let.rs +tests/ui/hygiene/hygienic-labels.rs +tests/ui/hygiene/issue-15221.rs +tests/ui/hygiene/issue-29746.rs +tests/ui/hygiene/issue-40847.rs +tests/ui/hygiene/lambda-var-hygiene.rs +tests/ui/hygiene/macro-metavars-legacy.rs +tests/ui/hygiene/macro-metavars-transparent.rs +tests/ui/hygiene/specialization.rs +tests/ui/hygiene/thread-local-not-in-prelude.rs +tests/ui/impl-header-lifetime-elision/bare_type.rs +tests/ui/impl-header-lifetime-elision/explicit-and-elided-same-header.rs +tests/ui/impl-header-lifetime-elision/path-underscore.rs +tests/ui/impl-header-lifetime-elision/ref-underscore.rs +tests/ui/impl-header-lifetime-elision/trait-underscore.rs +tests/ui/impl-trait/auto-trait-leakage/auto-trait-leak-rpass.rs +tests/ui/impl-trait/basic-trait-impl.rs +tests/ui/impl-trait/closure-in-impl-trait-arg.rs +tests/ui/impl-trait/closure-in-impl-trait.rs +tests/ui/impl-trait/equality-rpass.rs +tests/ui/impl-trait/example-calendar.rs +tests/ui/impl-trait/example-st.rs +tests/ui/impl-trait/impl_fn_associativity.rs +tests/ui/impl-trait/issues/issue-36792.rs +tests/ui/impl-trait/issues/issue-49685.rs +tests/ui/impl-trait/issues/issue-51185.rs +tests/ui/impl-trait/nesting.rs +tests/ui/impl-trait/universal_hrtb_anon.rs +tests/ui/impl-trait/universal_hrtb_named.rs +tests/ui/impl-trait/universal_in_adt_in_parameters.rs +tests/ui/impl-trait/universal_in_impl_trait_in_parameters.rs +tests/ui/impl-trait/universal_in_trait_defn_parameters.rs +tests/ui/impl-trait/universal_multiple_bounds.rs +tests/ui/imports/enum-variant-import-path-15774.rs +tests/ui/imports/export-multi.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-alias.rs +tests/ui/imports/extern-crate-self/extern-crate-self-macro-self.rs +tests/ui/imports/global-path-resolution-drop.rs +tests/ui/imports/import-from.rs +tests/ui/imports/import-glob-0-rpass.rs +tests/ui/imports/import-glob-crate.rs +tests/ui/imports/import-in-block.rs +tests/ui/imports/import-prefix-macro.rs +tests/ui/imports/import-rename.rs +tests/ui/imports/import-rpass.rs +tests/ui/imports/import-trailing-comma.rs +tests/ui/imports/import2-rpass.rs +tests/ui/imports/import3-rpass.rs +tests/ui/imports/import4-rpass.rs +tests/ui/imports/import5.rs +tests/ui/imports/import6.rs +tests/ui/imports/import7.rs +tests/ui/imports/import8.rs +tests/ui/imports/issue-4865-1.rs +tests/ui/imports/issue-4865-2.rs +tests/ui/imports/issue-4865-3.rs +tests/ui/imports/reexport-star.rs +tests/ui/imports/use-declaration-no-path-segment-prefix.rs +tests/ui/imports/use-mod.rs +tests/ui/include-macros/normalization.rs +tests/ui/indexing/indexing-spans-caller-location.rs +tests/ui/inference/collection-type-copy-behavior-12909.rs +tests/ui/inference/fnonce-closure-call.rs +tests/ui/inference/generic-type-inference-10436.rs +tests/ui/inference/issue-36053.rs +tests/ui/inference/issue-3743.rs +tests/ui/inference/lambda-infer-unresolved.rs +tests/ui/inference/lub-glb-with-unbound-infer-var.rs +tests/ui/inference/matcher-lifetime-inference-14919.rs +tests/ui/inference/newlambdas-ret-infer.rs +tests/ui/inference/newlambdas-ret-infer2.rs +tests/ui/inference/range-type-infer.rs +tests/ui/inference/simple-infer.rs +tests/ui/inline-const/const-expr-basic.rs +tests/ui/inline-const/const-expr-lifetime.rs +tests/ui/inline-const/const-expr-macro.rs +tests/ui/inline-const/const-expr-reference.rs +tests/ui/intrinsics/always-gets-overridden.rs +tests/ui/intrinsics/const-eval-select.rs +tests/ui/intrinsics/intrinsic-alignment.rs +tests/ui/intrinsics/intrinsic-assume.rs +tests/ui/intrinsics/intrinsic-atomics.rs +tests/ui/intrinsics/intrinsic-fmuladd.rs +tests/ui/intrinsics/intrinsic-raw_eq-const.rs +tests/ui/intrinsics/intrinsic-unreachable.rs +tests/ui/intrinsics/intrinsic-volatile.rs +tests/ui/intrinsics/intrinsics-integer.rs +tests/ui/intrinsics/intrinsics-math.rs +tests/ui/io-checks/write-macro-error.rs +tests/ui/issues/issue-11552.rs +tests/ui/issues/issue-11677.rs +tests/ui/issues/issue-16278.rs +tests/ui/issues/issue-16530.rs +tests/ui/issues/issue-16560.rs +tests/ui/issues/issue-16648.rs +tests/ui/issues/issue-16671.rs +tests/ui/issues/issue-16739.rs +tests/ui/issues/issue-16745.rs +tests/ui/issues/issue-16774.rs +tests/ui/issues/issue-16819.rs +tests/ui/issues/issue-16922-rpass.rs +tests/ui/issues/issue-17068.rs +tests/ui/issues/issue-17216.rs +tests/ui/issues/issue-17322.rs +tests/ui/issues/issue-17351.rs +tests/ui/issues/issue-17361.rs +tests/ui/issues/issue-17503.rs +tests/ui/issues/issue-17734.rs +tests/ui/issues/issue-17771.rs +tests/ui/issues/issue-17816.rs +tests/ui/issues/issue-17877.rs +tests/ui/issues/issue-17897.rs +tests/ui/issues/issue-17905.rs +tests/ui/issues/issue-18232.rs +tests/ui/issues/issue-18353.rs +tests/ui/issues/issue-18539.rs +tests/ui/issues/issue-18767.rs +tests/ui/issues/issue-18845.rs +tests/ui/issues/issue-18859.rs +tests/ui/issues/issue-19001.rs +tests/ui/issues/issue-19127.rs +tests/ui/issues/issue-19135.rs +tests/ui/issues/issue-19367.rs +tests/ui/issues/issue-19811-escape-unicode.rs +tests/ui/issues/issue-20055-box-trait.rs +tests/ui/issues/issue-20055-box-unsized-array.rs +tests/ui/issues/issue-20174.rs +tests/ui/issues/issue-20544.rs +tests/ui/issues/issue-20575.rs +tests/ui/issues/issue-2074.rs +tests/ui/issues/issue-20803.rs +tests/ui/issues/issue-20953.rs +tests/ui/issues/issue-21033.rs +tests/ui/issues/issue-21361.rs +tests/ui/issues/issue-21384.rs +tests/ui/issues/issue-21400.rs +tests/ui/issues/issue-2190-1.rs +tests/ui/issues/issue-21922.rs +tests/ui/issues/issue-22008.rs +tests/ui/issues/issue-22036.rs +tests/ui/issues/issue-2214.rs +tests/ui/issues/issue-22258.rs +tests/ui/issues/issue-22346.rs +tests/ui/issues/issue-22577.rs +tests/ui/issues/issue-22629.rs +tests/ui/issues/issue-2288.rs +tests/ui/issues/issue-22992-2.rs +tests/ui/issues/issue-23261.rs +tests/ui/issues/issue-23311.rs +tests/ui/issues/issue-23336.rs +tests/ui/issues/issue-23433.rs +tests/ui/issues/issue-23485.rs +tests/ui/issues/issue-23491.rs +tests/ui/issues/issue-23699.rs +tests/ui/issues/issue-23891.rs +tests/ui/issues/issue-23898.rs +tests/ui/issues/issue-23958.rs +tests/ui/issues/issue-23992.rs +tests/ui/issues/issue-24086.rs +tests/ui/issues/issue-24308.rs +tests/ui/issues/issue-2445-b.rs +tests/ui/issues/issue-2445.rs +tests/ui/issues/issue-24533.rs +tests/ui/issues/issue-24589.rs +tests/ui/issues/issue-2463.rs +tests/ui/issues/issue-24947.rs +tests/ui/issues/issue-24954.rs +tests/ui/issues/issue-25089.rs +tests/ui/issues/issue-25145.rs +tests/ui/issues/issue-25279.rs +tests/ui/issues/issue-25343.rs +tests/ui/issues/issue-25497.rs +tests/ui/issues/issue-2550.rs +tests/ui/issues/issue-25515.rs +tests/ui/issues/issue-25679.rs +tests/ui/issues/issue-25693.rs +tests/ui/issues/issue-25746-bool-transmute.rs +tests/ui/issues/issue-25757.rs +tests/ui/issues/issue-25810.rs +tests/ui/issues/issue-26127.rs +tests/ui/issues/issue-26468.rs +tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs +tests/ui/issues/issue-26655.rs +tests/ui/issues/issue-26709.rs +tests/ui/issues/issue-26802.rs +tests/ui/issues/issue-26805.rs +tests/ui/issues/issue-27054-primitive-binary-ops.rs +tests/ui/issues/issue-2708.rs +tests/ui/issues/issue-27240.rs +tests/ui/issues/issue-27401-dropflag-reinit.rs +tests/ui/issues/issue-27949.rs +tests/ui/issues/issue-27997.rs +tests/ui/issues/issue-28181.rs +tests/ui/issues/issue-28498-must-work-ex1.rs +tests/ui/issues/issue-28498-must-work-ex2.rs +tests/ui/issues/issue-28498-ugeh-ex1.rs +tests/ui/issues/issue-28550.rs +tests/ui/issues/issue-28828.rs +tests/ui/issues/issue-28839.rs +tests/ui/issues/issue-2895.rs +tests/ui/issues/issue-28983.rs +tests/ui/issues/issue-29053.rs +tests/ui/issues/issue-29071-2.rs +tests/ui/issues/issue-29092.rs +tests/ui/issues/issue-29147-rpass.rs +tests/ui/issues/issue-2935.rs +tests/ui/issues/issue-29466.rs +tests/ui/issues/issue-29522.rs +tests/ui/issues/issue-29663.rs +tests/ui/issues/issue-29668.rs +tests/ui/issues/issue-2989.rs +tests/ui/issues/issue-29948.rs +tests/ui/issues/issue-30018-panic.rs +tests/ui/issues/issue-30081.rs +tests/ui/issues/issue-3026.rs +tests/ui/issues/issue-30371.rs +tests/ui/issues/issue-3052.rs +tests/ui/issues/issue-30530.rs +tests/ui/issues/issue-30615.rs +tests/ui/issues/issue-30891.rs +tests/ui/issues/issue-3121.rs +tests/ui/issues/issue-31267-additional.rs +tests/ui/issues/issue-31267.rs +tests/ui/issues/issue-31299.rs +tests/ui/issues/issue-31776.rs +tests/ui/issues/issue-32008.rs +tests/ui/issues/issue-3220.rs +tests/ui/issues/issue-32292.rs +tests/ui/issues/issue-32389.rs +tests/ui/issues/issue-33202.rs +tests/ui/issues/issue-33387.rs +tests/ui/issues/issue-33461.rs +tests/ui/issues/issue-34427.rs +tests/ui/issues/issue-3447.rs +tests/ui/issues/issue-34503.rs +tests/ui/issues/issue-34569.rs +tests/ui/issues/issue-34571.rs +tests/ui/issues/issue-35423.rs +tests/ui/issues/issue-3556.rs +tests/ui/issues/issue-3559.rs +tests/ui/issues/issue-35600.rs +tests/ui/issues/issue-3574.rs +tests/ui/issues/issue-35815.rs +tests/ui/issues/issue-36036-associated-type-layout.rs +tests/ui/issues/issue-36260.rs +tests/ui/issues/issue-36474.rs +tests/ui/issues/issue-36744-bitcast-args-if-needed.rs +tests/ui/issues/issue-36816.rs +tests/ui/issues/issue-36856.rs +tests/ui/issues/issue-36936.rs +tests/ui/issues/issue-3702.rs +tests/ui/issues/issue-37109.rs +tests/ui/issues/issue-3753.rs +tests/ui/issues/issue-38437.rs +tests/ui/issues/issue-3847.rs +tests/ui/issues/issue-38556.rs +tests/ui/issues/issue-38763.rs +tests/ui/issues/issue-38942.rs +tests/ui/issues/issue-3895.rs +tests/ui/issues/issue-39367.rs +tests/ui/issues/issue-39548.rs +tests/ui/issues/issue-39709.rs +tests/ui/issues/issue-3979.rs +tests/ui/issues/issue-39808.rs +tests/ui/issues/issue-39827.rs +tests/ui/issues/issue-40951.rs +tests/ui/issues/issue-41479.rs +tests/ui/issues/issue-41498.rs +tests/ui/issues/issue-41604.rs +tests/ui/issues/issue-41677.rs +tests/ui/issues/issue-41696.rs +tests/ui/issues/issue-41744.rs +tests/ui/issues/issue-41849-variance-req.rs +tests/ui/issues/issue-41888.rs +tests/ui/issues/issue-42148.rs +tests/ui/issues/issue-42210.rs +tests/ui/issues/issue-4228.rs +tests/ui/issues/issue-42453.rs +tests/ui/issues/issue-4252.rs +tests/ui/issues/issue-42552.rs +tests/ui/issues/issue-43291.rs +tests/ui/issues/issue-43692.rs +tests/ui/issues/issue-43853.rs +tests/ui/issues/issue-4387.rs +tests/ui/issues/issue-43910.rs +tests/ui/issues/issue-43923.rs +tests/ui/issues/issue-4541.rs +tests/ui/issues/issue-4542.rs +tests/ui/issues/issue-45510.rs +tests/ui/issues/issue-46069.rs +tests/ui/issues/issue-46855.rs +tests/ui/issues/issue-4735.rs +tests/ui/issues/issue-47364.rs +tests/ui/issues/issue-4759-1.rs +tests/ui/issues/issue-4759.rs +tests/ui/issues/issue-48006.rs +tests/ui/issues/issue-48132.rs +tests/ui/issues/issue-48159.rs +tests/ui/issues/issue-4875.rs +tests/ui/issues/issue-49632.rs +tests/ui/issues/issue-49955.rs +tests/ui/issues/issue-49973.rs +tests/ui/issues/issue-50415.rs +tests/ui/issues/issue-50811.rs +tests/ui/issues/issue-51907.rs +tests/ui/issues/issue-5192.rs +tests/ui/issues/issue-5315.rs +tests/ui/iterators/bytes-iterator-clone-12677.rs +tests/ui/iterators/for-loop-over-mut-iterator-21655.rs +tests/ui/iterators/iter-cloned-type-inference.rs +tests/ui/iterators/iter-map-fold-type-length.rs +tests/ui/iterators/iter-range.rs +tests/ui/iterators/iter-step-overflow-debug.rs +tests/ui/iterators/iter-step-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-debug.rs +tests/ui/iterators/iter-sum-overflow-ndebug.rs +tests/ui/iterators/iter-sum-overflow-overflow-checks.rs +tests/ui/iterators/iterator-type-inference-sum-15673.rs +tests/ui/keyword/raw-identifier-for-function-57198.rs +tests/ui/label/label_break_value_desugared_break.rs +tests/ui/late-bound-lifetimes/issue-36381.rs +tests/ui/layout/aggregate-lang/struct-align.rs +tests/ui/layout/aggregate-lang/struct-size.rs +tests/ui/layout/aggregate-lang/union-align.rs +tests/ui/layout/aggregate-lang/union-offsets.rs +tests/ui/layout/aggregate-lang/union-size.rs +tests/ui/layout/big-type-no-err.rs +tests/ui/layout/issue-112048-unsizing-field-order.rs +tests/ui/layout/issue-112048-unsizing-niche.rs +tests/ui/layout/issue-60431-unsized-tail-behind-projection.rs +tests/ui/layout/null-pointer-optimization-sizes.rs +tests/ui/layout/null-pointer-optimization.rs +tests/ui/let-else/const-fn.rs +tests/ui/let-else/issue-99975.rs +tests/ui/let-else/let-else-bindings.rs +tests/ui/let-else/let-else-drop-order.rs +tests/ui/let-else/let-else-non-copy.rs +tests/ui/let-else/let-else-run-pass.rs +tests/ui/let-else/let-else-source-expr-nomove-pass.rs +tests/ui/let-else/let-else-temp-borrowck.rs +tests/ui/let-else/let-else-temporary-lifetime.rs +tests/ui/let-else/let-else.rs +tests/ui/lexer/floating-point-0e10-issue-40408.rs +tests/ui/lexer/lex-bare-cr-nondoc-comment.rs +tests/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs +tests/ui/lifetimes/any-lifetime-escape-higher-rank.rs +tests/ui/lifetimes/enum-lifetime-container-10228.rs +tests/ui/lifetimes/issue-84604.rs +tests/ui/lifetimes/matcher-trait-equality-13323.rs +tests/ui/lifetimes/rvalue-cleanup-shortcircuit.rs +tests/ui/lifetimes/struct-with-lifetime-parameters-9259.rs +tests/ui/lifetimes/trait-object-constructor-14821.rs +tests/ui/linkage-attr/link-section-placement.rs +tests/ui/lint/dead-code/alias-in-pat.rs +tests/ui/lint/dead-code/associated-type.rs +tests/ui/lint/dead-code/enum-variants.rs +tests/ui/lint/dead-code/with-impl.rs +tests/ui/lint/improper-ctypes/allow-phantomdata-in-ffi.rs +tests/ui/lint/issue-20343.rs +tests/ui/lint/issue-49588-non-shorthand-field-patterns-in-pattern-macro.rs +tests/ui/lint/lint-expr-stmt-attrs-for-early-lints.rs +tests/ui/lint/overflowing-literals-valid.rs +tests/ui/lint/unused/no-unused-parens-return-block.rs +tests/ui/liveness/liveness-assign-imm-local-after-ret.rs +tests/ui/loops/issue-1974.rs +tests/ui/loops/loop-with-label-9047.rs +tests/ui/loops/unreachable-while-loop-5741.rs +tests/ui/lowering/issue-96847.rs +tests/ui/lto/all-crates.rs +tests/ui/lto/fat-lto.rs +tests/ui/lto/lto-many-codegen-units.rs +tests/ui/lto/lto-still-runs-thread-dtors.rs +tests/ui/lto/thin-lto-inlines.rs +tests/ui/lto/weak-works.rs +tests/ui/macros/assert-eq-macro-success.rs +tests/ui/macros/assert-eq-macro-unsized.rs +tests/ui/macros/assert-format-lazy.rs +tests/ui/macros/assert-ne-macro-success.rs +tests/ui/macros/assert-ne-macro-unsized.rs +tests/ui/macros/colorful-write-macros.rs +tests/ui/macros/concat-bytes.rs +tests/ui/macros/concat-rpass.rs +tests/ui/macros/conditional-debug-macro-on.rs +tests/ui/macros/die-macro.rs +tests/ui/macros/for-loop-macro-rules-hygiene.rs +tests/ui/macros/html-literals.rs +tests/ui/macros/issue-25274.rs +tests/ui/macros/issue-26322.rs +tests/ui/macros/issue-33185.rs +tests/ui/macros/issue-37175.rs +tests/ui/macros/issue-40770.rs +tests/ui/macros/issue-41803.rs +tests/ui/macros/issue-44127.rs +tests/ui/macros/issue-5060.rs +tests/ui/macros/issue-52169.rs +tests/ui/macros/issue-8709.rs +tests/ui/macros/issue-8851.rs +tests/ui/macros/log_syntax-trace_macros-macro-locations.rs +tests/ui/macros/macro-2.rs +tests/ui/macros/macro-as-fn-body.rs +tests/ui/macros/macro-at-most-once-rep-2015-rpass.rs +tests/ui/macros/macro-at-most-once-rep-2018-rpass.rs +tests/ui/macros/macro-attribute-expansion.rs +tests/ui/macros/macro-attributes.rs +tests/ui/macros/macro-block-nonterminal.rs +tests/ui/macros/macro-crate-use.rs +tests/ui/macros/macro-deep_expansion.rs +tests/ui/macros/macro-delimiter-significance.rs +tests/ui/macros/macro-doc-raw-str-hashes.rs +tests/ui/macros/macro-first-set.rs +tests/ui/macros/macro-include-items.rs +tests/ui/macros/macro-invocation-in-count-expr-fixed-array-type.rs +tests/ui/macros/macro-invocation-with-variable-in-scope-9737.rs +tests/ui/macros/macro-lifetime-used-with-bound.rs +tests/ui/macros/macro-lifetime-used-with-labels.rs +tests/ui/macros/macro-lifetime-used-with-static.rs +tests/ui/macros/macro-lifetime.rs +tests/ui/macros/macro-literal.rs +tests/ui/macros/macro-meta-items.rs +tests/ui/macros/macro-method-issue-4621.rs +tests/ui/macros/macro-multiple-items.rs +tests/ui/macros/macro-named-default.rs +tests/ui/macros/macro-nested_definition_issue-31946.rs +tests/ui/macros/macro-nested_expr.rs +tests/ui/macros/macro-nested_stmt_macros.rs +tests/ui/macros/macro-nt-list.rs +tests/ui/macros/macro-of-higher-order.rs +tests/ui/macros/macro-pat-follow-2018.rs +tests/ui/macros/macro-pat-follow.rs +tests/ui/macros/macro-pat-neg-lit.rs +tests/ui/macros/macro-pat-pattern-followed-by-or.rs +tests/ui/macros/macro-pat.rs +tests/ui/macros/macro-path.rs +tests/ui/macros/macro-self-mutability-7911.rs +tests/ui/macros/macro-seq-followed-by-seq.rs +tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs +tests/ui/macros/macro-tt-followed-by-seq.rs +tests/ui/macros/macro-variable-declaration-with-bounds-5554.rs +tests/ui/macros/macro-variable-unused-reporting-5718.rs +tests/ui/macros/macro-with-attrs1.rs +tests/ui/macros/macro-with-attrs2.rs +tests/ui/macros/macro-with-braces-in-expr-position.rs +tests/ui/macros/macros-in-extern.rs +tests/ui/macros/meta-variable-misuse.rs +tests/ui/macros/metavar-expressions/concat-allowed-operations.rs +tests/ui/macros/metavar-expressions/concat-unicode-expansion.rs +tests/ui/macros/metavar-expressions/count-and-length-are-distinct.rs +tests/ui/macros/metavar-expressions/dollar-dollar-has-correct-behavior.rs +tests/ui/macros/metavar-expressions/feature-gate-macro_metavar_expr.rs +tests/ui/macros/metavar-expressions/macro-expansion.rs +tests/ui/macros/nested-macro-expansion.rs +tests/ui/macros/pub-item-inside-macro.rs +tests/ui/macros/pub-method-inside-macro.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/assert-with-custom-errors-does-not-create-unnecessary-code.rs +tests/ui/macros/rfc-2011-nicer-assert-messages/feature-gate-generic_assert.rs +tests/ui/macros/semi-after-macro-ty.rs +tests/ui/macros/stmt_expr_attr_macro_parse.rs +tests/ui/macros/syntax-extension-cfg.rs +tests/ui/macros/syntax-extension-source-utils.rs +tests/ui/macros/try-macro.rs +tests/ui/macros/type-macros-hlist.rs +tests/ui/macros/type-macros-simple.rs +tests/ui/macros/typeck-macro-interaction-issue-8852.rs +tests/ui/marker_trait_attr/overlap-doesnt-conflict-with-specialization.rs +tests/ui/marker_trait_attr/overlap-permitted-for-annotated-marker-traits.rs +tests/ui/match/enum-and-break-in-match-issue-41213.rs +tests/ui/match/guard-pattern-ordering-14865.rs +tests/ui/match/guards.rs +tests/ui/match/issue-113012.rs +tests/ui/match/issue-114691.rs +tests/ui/match/issue-115681.rs +tests/ui/match/issue-11940.rs +tests/ui/match/issue-18060.rs +tests/ui/match/issue-26251.rs +tests/ui/match/issue-33498.rs +tests/ui/match/issue-36401.rs +tests/ui/match/issue-42679.rs +tests/ui/match/issue-46920-byte-array-patterns.rs +tests/ui/match/issue-5530.rs +tests/ui/match/issue-72680.rs +tests/ui/match/match-float.rs +tests/ui/match/match-on-negative-integer-ranges.rs +tests/ui/match/match-range-char-const.rs +tests/ui/match/match-ref-mut-stability.rs +tests/ui/match/match-ref-option-pattern.rs +tests/ui/match/match-usize-min-max-pattern.rs +tests/ui/match/multiple-refutable-patterns-13867.rs +tests/ui/match/overeager-sub-match-pruning-13027.rs +tests/ui/match/pattern-deref-miscompile.rs +tests/ui/match/postfix-match/pf-match-chain.rs +tests/ui/match/postfix-match/postfix-match.rs +tests/ui/match/struct-reference-patterns-12285.rs +tests/ui/match/tuple-usize-pattern-14393.rs +tests/ui/methods/inherent-method-resolution-on-deref-type-53843.rs +tests/ui/methods/inherent-methods-same-name.rs +tests/ui/methods/method-argument-inference-associated-type.rs +tests/ui/methods/method-early-bound-lifetimes-on-self.rs +tests/ui/methods/method-mut-self-modifies-mut-slice-lvalue.rs +tests/ui/methods/method-probe-no-guessing-dyn-trait.rs +tests/ui/methods/method-projection.rs +tests/ui/methods/method-recursive-blanket-impl.rs +tests/ui/methods/method-self-arg-trait.rs +tests/ui/methods/method-self-arg.rs +tests/ui/methods/method-two-trait-defer-resolution-1.rs +tests/ui/methods/method-two-trait-defer-resolution-2.rs +tests/ui/methods/method-two-traits-distinguished-via-where-clause.rs +tests/ui/methods/method-where-clause.rs +tests/ui/methods/trait-method-resolution-7575.rs +tests/ui/mir/alignment/addrof_alignment.rs +tests/ui/mir/alignment/borrow_aligned_field_projection.rs +tests/ui/mir/alignment/i686-pc-windows-msvc.rs +tests/ui/mir/alignment/packed.rs +tests/ui/mir/alignment/place_without_read.rs +tests/ui/mir/clone-canonicalization-miscompile-132353.rs +tests/ui/mir/debug-ref-undef.rs +tests/ui/mir/dyn_metadata_sroa.rs +tests/ui/mir/issue-29227.rs +tests/ui/mir/issue-46845.rs +tests/ui/mir/issue-66851.rs +tests/ui/mir/issue-74739.rs +tests/ui/mir/issue-76740-copy-propagation.rs +tests/ui/mir/issue-76803-branches-not-same.rs +tests/ui/mir/issue-77002.rs +tests/ui/mir/issue-77359-simplify-arm-identity.rs +tests/ui/mir/issue-78496.rs +tests/ui/mir/issue-89485.rs +tests/ui/mir/mir_adt_construction.rs +tests/ui/mir/mir_ascription_coercion.rs +tests/ui/mir/mir_assign_eval_order.rs +tests/ui/mir/mir_augmented_assignments.rs +tests/ui/mir/mir_autoderef.rs +tests/ui/mir/mir_build_match_comparisons.rs +tests/ui/mir/mir_call_with_associated_type.rs +tests/ui/mir/mir_calls_to_shims.rs +tests/ui/mir/mir_cast_fn_ret.rs +tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs +tests/ui/mir/mir_codegen_call_converging.rs +tests/ui/mir/mir_codegen_calls.rs +tests/ui/mir/mir_codegen_spike1.rs +tests/ui/mir/mir_codegen_switch.rs +tests/ui/mir/mir_codegen_switchint.rs +tests/ui/mir/mir_coercion_casts.rs +tests/ui/mir/mir_coercions.rs +tests/ui/mir/mir_const_prop_identity.rs +tests/ui/mir/mir_constval_adts.rs +tests/ui/mir/mir_drop_order.rs +tests/ui/mir/mir_early_return_scope.rs +tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs +tests/ui/mir/mir_heavy_promoted.rs +tests/ui/mir/mir_let_chains_drop_order.rs +tests/ui/mir/mir_match_arm_guard.rs +tests/ui/mir/mir_match_test.rs +tests/ui/mir/mir_misc_casts.rs +tests/ui/mir/mir_overflow_off.rs +tests/ui/mir/mir_raw_fat_ptr.rs +tests/ui/mir/mir_small_agg_arg.rs +tests/ui/mir/mir_static_subtype.rs +tests/ui/mir/mir_struct_with_assoc_ty.rs +tests/ui/mir/mir_temp_promotions.rs +tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs +tests/ui/mir/simplify-branch-same.rs +tests/ui/mir/validate/needs-reveal-all.rs +tests/ui/modules/impl-cross-module.rs +tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs +tests/ui/modules/mod_dir_path.rs +tests/ui/modules/mod_dir_path2.rs +tests/ui/modules/mod_dir_path3.rs +tests/ui/modules/mod_dir_recursive.rs +tests/ui/modules/mod_dir_simple.rs +tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs +tests/ui/modules/module-use-nested-groups.rs +tests/ui/modules/use-keyword-reexport-type-alias.rs +tests/ui/modules/use-statement-duplicate-check-7663.rs +tests/ui/moves/array-copy-move.rs +tests/ui/moves/issue-22536-copy-mustnt-zero.rs +tests/ui/moves/match-move-same-binding-15571.rs +tests/ui/moves/move-1-unique.rs +tests/ui/moves/move-2-unique.rs +tests/ui/moves/move-2.rs +tests/ui/moves/move-3-unique.rs +tests/ui/moves/move-4-unique.rs +tests/ui/moves/move-4.rs +tests/ui/moves/move-arg-2-unique.rs +tests/ui/moves/move-arg-2.rs +tests/ui/moves/move-arg.rs +tests/ui/moves/move-nullary-fn.rs +tests/ui/moves/move-out-of-field.rs +tests/ui/moves/move-scalar.rs +tests/ui/moves/moves-based-on-type-capture-clause.rs +tests/ui/mut/no-mut-lint-for-desugared-mut.rs +tests/ui/never_type/impl-for-never.rs +tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs +tests/ui/nll/borrow-use-issue-46875.rs +tests/ui/nll/borrowck-thread-local-static-mut-borrow-outlives-fn.rs +tests/ui/nll/issue-24535-allow-mutable-borrow-in-match-guard.rs +tests/ui/nll/issue-45696-long-live-borrows-in-boxes.rs +tests/ui/nll/issue-45696-no-variant-box-recur.rs +tests/ui/nll/issue-47589.rs +tests/ui/nll/issue-48070.rs +tests/ui/nll/issue-50343.rs +tests/ui/nll/issue-50461-used-mut-from-moves.rs +tests/ui/nll/issue-53123-raw-pointer-cast.rs +tests/ui/nll/issue-57960.rs +tests/ui/nll/mutating_references.rs +tests/ui/nll/process_or_insert_default.rs +tests/ui/nll/rc-loop.rs +tests/ui/non_modrs_mods/non_modrs_mods.rs +tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs +tests/ui/numbers-arithmetic/arith-unsigned.rs +tests/ui/numbers-arithmetic/bitwise-ops-platform.rs +tests/ui/numbers-arithmetic/div-mod.rs +tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/f32-literal-rounding-32805.rs +tests/ui/numbers-arithmetic/float_math.rs +tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs +tests/ui/numbers-arithmetic/float-literal-inference.rs +tests/ui/numbers-arithmetic/float-nan.rs +tests/ui/numbers-arithmetic/float-signature.rs +tests/ui/numbers-arithmetic/float.rs +tests/ui/numbers-arithmetic/float2.rs +tests/ui/numbers-arithmetic/floatlits.rs +tests/ui/numbers-arithmetic/i128-min-literal-parses.rs +tests/ui/numbers-arithmetic/i128.rs +tests/ui/numbers-arithmetic/i32-sub.rs +tests/ui/numbers-arithmetic/i8-incr.rs +tests/ui/numbers-arithmetic/int-abs-overflow.rs +tests/ui/numbers-arithmetic/integer-literal-radix.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-2.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference-3.rs +tests/ui/numbers-arithmetic/integer-literal-suffix-inference.rs +tests/ui/numbers-arithmetic/issue-8460.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-debug.rs +tests/ui/numbers-arithmetic/next-power-of-two-overflow-ndebug.rs +tests/ui/numbers-arithmetic/num-wrapping.rs +tests/ui/numbers-arithmetic/numeric-method-autoexport.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-1.rs +tests/ui/numbers-arithmetic/overflow-attribute-works-2.rs +tests/ui/numbers-arithmetic/saturating-float-casts-wasm.rs +tests/ui/numbers-arithmetic/saturating-float-casts.rs +tests/ui/numbers-arithmetic/shift-near-oflo.rs +tests/ui/numbers-arithmetic/shift-various-types.rs +tests/ui/numbers-arithmetic/shift.rs +tests/ui/numbers-arithmetic/signed-shift-const-eval.rs +tests/ui/numbers-arithmetic/u128-as-f32.rs +tests/ui/numbers-arithmetic/u128.rs +tests/ui/numbers-arithmetic/u32-decr.rs +tests/ui/numbers-arithmetic/u8-incr-decr.rs +tests/ui/numbers-arithmetic/u8-incr.rs +tests/ui/numbers-arithmetic/unary-minus-suffix-inference.rs +tests/ui/numeric/ref-int.rs +tests/ui/numeric/type-limit-comparisons-6130.rs +tests/ui/object-lifetime/object-lifetime-default-default-to-static.rs +tests/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs +tests/ui/object-lifetime/object-lifetime-default-from-rptr.rs +tests/ui/object-lifetime/object-lifetime-default-inferred.rs +tests/ui/offset-of/offset-of-slice-normalized.rs +tests/ui/offset-of/offset-of-slice.rs +tests/ui/offset-of/offset-of-tuple-nested.rs +tests/ui/or-patterns/basic-switch.rs +tests/ui/or-patterns/basic-switchint.rs +tests/ui/or-patterns/bindings-runpass-1.rs +tests/ui/or-patterns/bindings-runpass-2.rs +tests/ui/or-patterns/box-patterns.rs +tests/ui/or-patterns/for-loop.rs +tests/ui/or-patterns/if-let-while-let.rs +tests/ui/or-patterns/issue-70413-no-unreachable-pat-and-guard.rs +tests/ui/or-patterns/let-pattern.rs +tests/ui/or-patterns/mix-with-wild.rs +tests/ui/or-patterns/search-via-bindings.rs +tests/ui/or-patterns/simplification_subtleties.rs +tests/ui/or-patterns/slice-patterns.rs +tests/ui/or-patterns/struct-like.rs +tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs +tests/ui/overloaded/overloaded-autoderef-count.rs +tests/ui/overloaded/overloaded-autoderef-indexing.rs +tests/ui/overloaded/overloaded-autoderef-order.rs +tests/ui/overloaded/overloaded-autoderef-vtable.rs +tests/ui/overloaded/overloaded-autoderef.rs +tests/ui/overloaded/overloaded-calls-object-one-arg.rs +tests/ui/overloaded/overloaded-calls-object-two-args.rs +tests/ui/overloaded/overloaded-calls-object-zero-args.rs +tests/ui/overloaded/overloaded-calls-param-vtables.rs +tests/ui/overloaded/overloaded-calls-simple.rs +tests/ui/overloaded/overloaded-calls-zero-args.rs +tests/ui/overloaded/overloaded-deref-count.rs +tests/ui/overloaded/overloaded-deref.rs +tests/ui/overloaded/overloaded-index-assoc-list.rs +tests/ui/overloaded/overloaded-index-autoderef.rs +tests/ui/overloaded/overloaded-index-in-field.rs +tests/ui/overloaded/overloaded-index.rs +tests/ui/packed/dyn-trait.rs +tests/ui/packed/issue-118537-field-offset-ice.rs +tests/ui/packed/issue-118537-field-offset.rs +tests/ui/packed/issue-46152.rs +tests/ui/packed/misaligned-reference-drop-field-99838.rs +tests/ui/packed/packed-struct-address-of-element.rs +tests/ui/packed/packed-struct-drop-aligned.rs +tests/ui/packed/packed-struct-generic-layout.rs +tests/ui/packed/packed-struct-generic-size.rs +tests/ui/packed/packed-struct-layout.rs +tests/ui/packed/packed-struct-match.rs +tests/ui/packed/packed-struct-optimized-enum.rs +tests/ui/packed/packed-struct-size.rs +tests/ui/packed/packed-struct-vec.rs +tests/ui/packed/packed-tuple-struct-layout.rs +tests/ui/packed/packed-tuple-struct-size.rs +tests/ui/packed/packed-with-inference-vars-issue-61402.rs +tests/ui/panic-handler/catch-unwind-during-unwind-68696.rs +tests/ui/panic-runtime/link-to-unwind.rs +tests/ui/panics/nested_panic_caught.rs +tests/ui/panics/panic-during-display-formatting.rs +tests/ui/panics/panic-handler-chain-update-hook.rs +tests/ui/panics/panic-handler-chain.rs +tests/ui/panics/panic-handler-flail-wildly.rs +tests/ui/panics/panic-handler-set-twice.rs +tests/ui/panics/panic-in-dtor-drops-fields.rs +tests/ui/panics/panic-recover-propagate.rs +tests/ui/panics/rvalue-cleanup-during-box-panic.rs +tests/ui/panics/unwind-force-no-unwind-tables.rs +tests/ui/parallel-rustc/hello_world.rs +tests/ui/parallel-rustc/read-stolen-value-issue-111520.rs +tests/ui/parser/doc-comment-parsing.rs +tests/ui/parser/generics-rangle-eq-15043.rs +tests/ui/parser/issues/issue-17718-parse-const.rs +tests/ui/parser/issues/issue-21475.rs +tests/ui/parser/issues/issue-48508.rs +tests/ui/parser/issues/issue-65846-rollback-gating-failing-matcher.rs +tests/ui/parser/issues/issue-7222.rs +tests/ui/parser/macro/statement-boundaries.rs +tests/ui/parser/operator-associativity.rs +tests/ui/parser/parser-unicode-whitespace.rs +tests/ui/parser/pattern-matching-with-double-references-61475.rs +tests/ui/parser/ranges-precedence.rs +tests/ui/parser/slowparse-bstring.rs +tests/ui/parser/slowparse-string.rs +tests/ui/parser/syntactic-trailing-commas.rs +tests/ui/parser/unicode-escape-sequences.rs +tests/ui/parser/utf8_idents-rpass.rs +tests/ui/pattern/bindings-after-at/bind-by-copy.rs +tests/ui/pattern/bindings-after-at/box-patterns.rs +tests/ui/pattern/bindings-after-at/nested-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-box-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns-slice-patterns.rs +tests/ui/pattern/bindings-after-at/or-patterns.rs +tests/ui/pattern/bindings-after-at/slice-patterns.rs +tests/ui/pattern/const-pattern-str-match-lifetime.rs +tests/ui/pattern/deref-patterns/basic.rs +tests/ui/pattern/deref-patterns/closure_capture.rs +tests/ui/pattern/ignore-all-the-things.rs +tests/ui/pattern/inc-range-pat.rs +tests/ui/pattern/integer-range-binding.rs +tests/ui/pattern/issue-10392.rs +tests/ui/pattern/issue-110508.rs +tests/ui/pattern/issue-11577.rs +tests/ui/pattern/issue-12582.rs +tests/ui/pattern/issue-15080.rs +tests/ui/pattern/issue-22546.rs +tests/ui/pattern/issue-27320.rs +tests/ui/pattern/issue-6449.rs +tests/ui/pattern/issue-8351-1.rs +tests/ui/pattern/issue-8351-2.rs +tests/ui/pattern/move-ref-patterns/move-ref-patterns-dynamic-semantics.rs +tests/ui/pattern/pattern-match-arc-move.rs +tests/ui/pattern/premature-match-scrutinee-temporary-drop-10683.rs +tests/ui/pattern/size-and-align.rs +tests/ui/pattern/slice-pattern-recursion-15104.rs +tests/ui/pattern/struct-wildcard-pattern-14308.rs +tests/ui/pattern/tuple-enum-match-15129.rs +tests/ui/pattern/unit-pattern-matching-in-function-argument-7519.rs +tests/ui/pattern/usefulness/integer-ranges/regression-switchint-sorting-with-ranges.rs +tests/ui/pattern/usefulness/irrefutable-let-patterns.rs +tests/ui/pattern/usefulness/irrefutable-unit.rs +tests/ui/pattern/usefulness/issue-30240-rpass.rs +tests/ui/pattern/usefulness/nested-exhaustive-match.rs +tests/ui/precondition-checks/cfg-ub-checks-default.rs +tests/ui/precondition-checks/cfg-ub-checks-no.rs +tests/ui/precondition-checks/cfg-ub-checks-yes.rs +tests/ui/precondition-checks/zero-size-null.rs +tests/ui/privacy/privacy-ns.rs +tests/ui/privacy/private-class-field.rs +tests/ui/privacy/private-method-rpass.rs +tests/ui/privacy/pub-extern-privacy.rs +tests/ui/process-termination/process-termination-blocking-io.rs +tests/ui/process-termination/process-termination-simple.rs +tests/ui/process/env-vars.rs +tests/ui/process/exec-env.rs +tests/ui/process/process-sigpipe.rs +tests/ui/ptr_ops/issue-80309-safe.rs +tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr_ops/ptr-swap-overlapping-regions.rs +tests/ui/range/range_inclusive.rs +tests/ui/raw-ref-op/raw-ref-op.rs +tests/ui/reachable/boolean-negation-in-unreachable-code-7344.rs +tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs +tests/ui/regions/init-res-into-things.rs +tests/ui/regions/issue-5243.rs +tests/ui/regions/issue-6157.rs +tests/ui/regions/owned-implies-static.rs +tests/ui/regions/rcvr-borrowed-to-region.rs +tests/ui/regions/regions-addr-of-interior-of-unique-box.rs +tests/ui/regions/regions-addr-of-ret.rs +tests/ui/regions/regions-borrow-at.rs +tests/ui/regions/regions-borrow-evec-fixed.rs +tests/ui/regions/regions-borrow-evec-uniq.rs +tests/ui/regions/regions-borrow-uniq.rs +tests/ui/regions/regions-bot.rs +tests/ui/regions/regions-close-over-type-parameter-successfully.rs +tests/ui/regions/regions-copy-closure.rs +tests/ui/regions/regions-creating-enums2.rs +tests/ui/regions/regions-creating-enums5.rs +tests/ui/regions/regions-dependent-addr-of.rs +tests/ui/regions/regions-dependent-autofn.rs +tests/ui/regions/regions-dependent-autoslice.rs +tests/ui/regions/regions-dependent-let-ref.rs +tests/ui/regions/regions-early-bound-trait-param.rs +tests/ui/regions/regions-early-bound-used-in-bound-method.rs +tests/ui/regions/regions-early-bound-used-in-bound.rs +tests/ui/regions/regions-early-bound-used-in-type-param.rs +tests/ui/regions/regions-escape-into-other-fn.rs +tests/ui/regions/regions-fn-subtyping-2.rs +tests/ui/regions/regions-fn-subtyping.rs +tests/ui/regions/regions-infer-borrow-scope-addr-of.rs +tests/ui/regions/regions-infer-borrow-scope-view.rs +tests/ui/regions/regions-infer-borrow-scope-within-loop-ok.rs +tests/ui/regions/regions-infer-borrow-scope.rs +tests/ui/regions/regions-infer-call-2.rs +tests/ui/regions/regions-infer-call.rs +tests/ui/regions/regions-infer-contravariance-due-to-ret.rs +tests/ui/regions/regions-infer-reborrow-ref-mut-recurse.rs +tests/ui/regions/regions-infer-static-from-proc.rs +tests/ui/regions/regions-lifetime-nonfree-late-bound.rs +tests/ui/regions/regions-lifetime-static-items-enclosing-scopes.rs +tests/ui/regions/regions-mock-codegen.rs +tests/ui/regions/regions-params.rs +tests/ui/regions/regions-reassign-let-bound-pointer.rs +tests/ui/regions/regions-reassign-match-bound-pointer.rs +tests/ui/regions/regions-refcell.rs +tests/ui/regions/regions-relate-bound-regions-on-closures-to-inference-variables.rs +tests/ui/regions/regions-return-interior-of-option.rs +tests/ui/regions/regions-self-impls.rs +tests/ui/regions/regions-self-in-enums.rs +tests/ui/regions/regions-simple.rs +tests/ui/regions/regions-static-bound-rpass.rs +tests/ui/regions/regions-static-closure.rs +tests/ui/regions/regions-trait-object-1.rs +tests/ui/repeat-expr/repeat-expr-in-static.rs +tests/ui/repr/align-with-extern-c-fn.rs +tests/ui/repr/aligned_enum_cast.rs +tests/ui/repr/packed-struct-with-enum-53728.rs +tests/ui/repr/repr_c_int_align.rs +tests/ui/resolve/blind-item-local-shadow.rs +tests/ui/resolve/blind-item-mixed-use-item.rs +tests/ui/resolve/no-std-1.rs +tests/ui/resolve/no-std-2.rs +tests/ui/resolve/no-std-3.rs +tests/ui/resolve/primitive-usage.rs +tests/ui/resolve/reference-clone-nonclone-11820.rs +tests/ui/resolve/resolve-issue-2428.rs +tests/ui/resolve/resolve-pseudo-shadowing.rs +tests/ui/resolve/struct-function-same-name.rs +tests/ui/resolve/type-param-local-var-shadowing.rs +tests/ui/return/early-return-with-unreachable-code-24353.rs +tests/ui/return/ret-bang.rs +tests/ui/return/return-nil.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/bind-by-move-no-guards.rs +tests/ui/rfcs/rfc-0107-bind-by-move-pattern-guards/rfc-basic-examples.rs +tests/ui/rfcs/rfc-1014-stdout-existential-crisis/rfc-1014-2.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/allow-use-behind-cousin-variant.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-empty-array-allowed-without-eq-issue-62336.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/phantom-data-is-structurally-matchable.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match-on-ty-in-macro.rs +tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/rfc1445/eq-allows-match.rs +tests/ui/rfcs/rfc-1623-static/rfc1623.rs +tests/ui/rfcs/rfc-1717-dllimport/1717-dllimport/library-override.rs +tests/ui/rfcs/rfc-1789-as-cell/from-mut.rs +tests/ui/rfcs/rfc-1857-stabilize-drop-order/drop-order.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-box-dyn-error-ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-exitcode.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-impl-termination.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result-box-error_ok.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-result.rs +tests/ui/rfcs/rfc-1937-termination-trait/termination-trait-for-str-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/box.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/constref.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/enum-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/for-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/general.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/lit-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/range.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/ref-region.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/reset-mode.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/slice-ok.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple-struct.rs +tests/ui/rfcs/rfc-2005-default-binding-mode/tuple.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/enum_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/structs_same_crate.rs +tests/ui/rfcs/rfc-2008-non-exhaustive/variants_same_crate.rs +tests/ui/rfcs/rfc-2091-track-caller/call-chain.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs +tests/ui/rfcs/rfc-2091-track-caller/caller-location-intrinsic.rs +tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs +tests/ui/rfcs/rfc-2091-track-caller/intrinsic-wrapper.rs +tests/ui/rfcs/rfc-2091-track-caller/mir-inlined-macro.rs +tests/ui/rfcs/rfc-2091-track-caller/pass.rs +tests/ui/rfcs/rfc-2091-track-caller/std-panic-locations.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-attribute.rs +tests/ui/rfcs/rfc-2091-track-caller/track-caller-ffi.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-closure.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr-with-arg.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-fn-ptr.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-impls.rs +tests/ui/rfcs/rfc-2091-track-caller/tracked-trait-obj.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/attr.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/basic.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/items.rs +tests/ui/rfcs/rfc-2151-raw-identifiers/macros.rs +tests/ui/rfcs/rfc-2175-or-if-while-let/basic.rs +tests/ui/rfcs/rfc-2294-if-let-guard/drop-order.rs +tests/ui/rfcs/rfc-2294-if-let-guard/run-pass.rs +tests/ui/rfcs/rfc-2294-if-let-guard/scope.rs +tests/ui/rfcs/rfc-2302-self-struct-ctor/rfc-2302-self-struct-ctor.rs +tests/ui/rfcs/rfc-2361-dbg-macro/dbg-macro-expected-behavior.rs +tests/ui/rfcs/rfc-2421-unreserve-pure-offsetof-sizeof-alignof/offsetof-alignof-sizeof-pure-can-be-used-as-idents.rs +tests/ui/rfcs/rfc-2497-if-let-chains/ast-lowering-does-not-wrap-let-chains.rs +tests/ui/rfcs/rfc-2497-if-let-chains/protect-precedences.rs +tests/ui/rfcs/rfc-2497-if-let-chains/then-else-blocks.rs +tests/ui/runtime/deep_recursion.rs +tests/ui/self/arbitrary_self_types_nested.rs +tests/ui/self/arbitrary_self_types_pointers_and_wrappers.rs +tests/ui/self/arbitrary_self_types_raw_pointer_struct.rs +tests/ui/self/arbitrary_self_types_raw_pointer_trait.rs +tests/ui/self/arbitrary_self_types_silly.rs +tests/ui/self/arbitrary_self_types_stdlib_pointers.rs +tests/ui/self/arbitrary_self_types_struct.rs +tests/ui/self/arbitrary_self_types_trait.rs +tests/ui/self/arbitrary_self_types_unsized_struct.rs +tests/ui/self/builtin-superkinds-self-type.rs +tests/ui/self/by-value-self-in-mut-slot.rs +tests/ui/self/dyn-compatibility-sized-self-by-value-self.rs +tests/ui/self/dyn-compatibility-sized-self-generic-method.rs +tests/ui/self/dyn-compatibility-sized-self-return-Self.rs +tests/ui/self/explicit-self-generic.rs +tests/ui/self/explicit-self-objects-uniq.rs +tests/ui/self/explicit-self.rs +tests/ui/self/move-self.rs +tests/ui/self/objects-owned-object-owned-method.rs +tests/ui/self/self-impl-2.rs +tests/ui/self/self-in-mut-slot-default-method.rs +tests/ui/self/self-in-mut-slot-immediate-value.rs +tests/ui/self/self-re-assign.rs +tests/ui/self/self-shadowing-import.rs +tests/ui/self/string-self-append.rs +tests/ui/self/ufcs-explicit-self.rs +tests/ui/self/uniq-self-in-mut-slot.rs +tests/ui/self/where-for-self.rs +tests/ui/sepcomp/sepcomp-fns-backwards.rs +tests/ui/sepcomp/sepcomp-fns.rs +tests/ui/sepcomp/sepcomp-statics.rs +tests/ui/sepcomp/sepcomp-unwind.rs +tests/ui/shadowed/use-shadows-reexport.rs +tests/ui/simd/array-type.rs +tests/ui/simd/generics.rs +tests/ui/simd/intrinsic/float-math-pass.rs +tests/ui/simd/intrinsic/float-minmax-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-pass.rs +tests/ui/simd/intrinsic/generic-arithmetic-saturating-pass.rs +tests/ui/simd/intrinsic/generic-as.rs +tests/ui/simd/intrinsic/generic-bitmask-pass.rs +tests/ui/simd/intrinsic/generic-bswap-byte.rs +tests/ui/simd/intrinsic/generic-cast-pass.rs +tests/ui/simd/intrinsic/generic-cast-pointer-width.rs +tests/ui/simd/intrinsic/generic-comparison-pass.rs +tests/ui/simd/intrinsic/generic-elements-pass.rs +tests/ui/simd/intrinsic/generic-gather-scatter-pass.rs +tests/ui/simd/intrinsic/generic-reduction-pass.rs +tests/ui/simd/intrinsic/generic-select-pass.rs +tests/ui/simd/intrinsic/inlining-issue67557-ice.rs +tests/ui/simd/intrinsic/inlining-issue67557.rs +tests/ui/simd/intrinsic/ptr-cast.rs +tests/ui/simd/issue-105439.rs +tests/ui/simd/issue-17170.rs +tests/ui/simd/issue-32947.rs +tests/ui/simd/issue-39720.rs +tests/ui/simd/issue-85915-simd-ptrs.rs +tests/ui/simd/issue-89193.rs +tests/ui/simd/libm_std_can_float.rs +tests/ui/simd/masked-load-store.rs +tests/ui/simd/repr_packed.rs +tests/ui/simd/shuffle.rs +tests/ui/simd/simd-bitmask-notpow2.rs +tests/ui/simd/simd-bitmask.rs +tests/ui/simd/size-align.rs +tests/ui/simd/type-generic-monomorphisation-extern-nonnull-ptr.rs +tests/ui/simd/type-generic-monomorphisation-power-of-two.rs +tests/ui/sized/coinductive-2.rs +tests/ui/specialization/defaultimpl/projection.rs +tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented-rpass.rs +tests/ui/specialization/issue-50452.rs +tests/ui/specialization/soundness/partial_eq_range_inclusive.rs +tests/ui/specialization/soundness/partial_ord_slice.rs +tests/ui/specialization/specialization-assoc-fns.rs +tests/ui/specialization/specialization-basics.rs +tests/ui/specialization/specialization-default-methods.rs +tests/ui/specialization/specialization-projection-alias.rs +tests/ui/specialization/specialization-projection.rs +tests/ui/specialization/specialization-translate-projections-with-lifetimes.rs +tests/ui/specialization/specialization-translate-projections-with-params.rs +tests/ui/specialization/specialization-translate-projections.rs +tests/ui/specialization/trait-specialization-default-methods-55380.rs +tests/ui/specialization/transmute-specialization.rs +tests/ui/static/issue-1660.rs +tests/ui/static/refer-to-other-statics-by-value.rs +tests/ui/static/static-list-initialization-5917.rs +tests/ui/static/static-struct-initialization-5688.rs +tests/ui/statics/conditional-static-declaration-16010.rs +tests/ui/statics/const_generics.rs +tests/ui/statics/issue-17233.rs +tests/ui/statics/issue-17718-static-unsafe-interior.rs +tests/ui/statics/static-function-pointer.rs +tests/ui/statics/static-impl.rs +tests/ui/statics/static-method-in-trait-with-tps-intracrate.rs +tests/ui/statics/static-methods-in-traits.rs +tests/ui/statics/static-methods-in-traits2.rs +tests/ui/statics/static-promotion.rs +tests/ui/statics/static-recursive.rs +tests/ui/std/channel-stack-overflow-issue-102246.rs +tests/ui/std/fs-nul-byte-paths.rs +tests/ui/std/issue-3563-3.rs +tests/ui/std/park-timeout-wakeup-59020.rs +tests/ui/std/stdio-from.rs +tests/ui/std/thread-sleep-ms.rs +tests/ui/stdlib-unit-tests/matches2021.rs +tests/ui/stdlib-unit-tests/raw-fat-ptr.rs +tests/ui/str/debug-print-basic-tuple.rs +tests/ui/str/nul-char-equivalence.rs +tests/ui/str/str-static-literal.rs +tests/ui/structs-enums/align-enum.rs +tests/ui/structs-enums/align-struct.rs +tests/ui/structs-enums/borrow-tuple-fields.rs +tests/ui/structs-enums/class-cast-to-trait-multiple-types.rs +tests/ui/structs-enums/class-cast-to-trait.rs +tests/ui/structs-enums/class-exports.rs +tests/ui/structs-enums/class-impl-very-parameterized-trait.rs +tests/ui/structs-enums/class-implement-traits.rs +tests/ui/structs-enums/class-methods.rs +tests/ui/structs-enums/class-poly-methods.rs +tests/ui/structs-enums/class-separate-impl.rs +tests/ui/structs-enums/class-str-field.rs +tests/ui/structs-enums/class-typarams.rs +tests/ui/structs-enums/classes-simple-method.rs +tests/ui/structs-enums/classes-simple.rs +tests/ui/structs-enums/classes.rs +tests/ui/structs-enums/codegen-tag-static-padding.rs +tests/ui/structs-enums/compare-generic-enums.rs +tests/ui/structs-enums/discrim-explicit-23030.rs +tests/ui/structs-enums/empty-tag.rs +tests/ui/structs-enums/enum-alignment.rs +tests/ui/structs-enums/enum-clike-ffi-as-int.rs +tests/ui/structs-enums/enum-discr.rs +tests/ui/structs-enums/enum-discrim-autosizing.rs +tests/ui/structs-enums/enum-discrim-manual-sizing.rs +tests/ui/structs-enums/enum-discrim-width-stuff.rs +tests/ui/structs-enums/enum-disr-val-pretty.rs +tests/ui/structs-enums/enum-export-inheritance.rs +tests/ui/structs-enums/enum-layout-optimization.rs +tests/ui/structs-enums/enum-non-c-like-repr-c-and-int.rs +tests/ui/structs-enums/enum-non-c-like-repr-c.rs +tests/ui/structs-enums/enum-non-c-like-repr-int.rs +tests/ui/structs-enums/enum-null-pointer-opt.rs +tests/ui/structs-enums/enum-nullable-const-null-with-fields.rs +tests/ui/structs-enums/enum-nullable-simplifycfg-misopt.rs +tests/ui/structs-enums/enum-univariant-repr.rs +tests/ui/structs-enums/enum-variants.rs +tests/ui/structs-enums/enum-vec-initializer.rs +tests/ui/structs-enums/export-abstract-tag.rs +tests/ui/structs-enums/export-tag-variant.rs +tests/ui/structs-enums/expr-if-struct.rs +tests/ui/structs-enums/expr-match-struct.rs +tests/ui/structs-enums/field-destruction-order.rs +tests/ui/structs-enums/functional-struct-upd.rs +tests/ui/structs-enums/issue-1701.rs +tests/ui/structs-enums/issue-38002.rs +tests/ui/structs-enums/issue-50731.rs +tests/ui/structs-enums/ivec-tag.rs +tests/ui/structs-enums/module-qualified-struct-destructure.rs +tests/ui/structs-enums/multiple-reprs.rs +tests/ui/structs-enums/newtype-struct-drop-run.rs +tests/ui/structs-enums/newtype-struct-with-dtor.rs +tests/ui/structs-enums/nonzero-enum.rs +tests/ui/structs-enums/numeric-fields.rs +tests/ui/structs-enums/rec-align-u32.rs +tests/ui/structs-enums/rec-align-u64.rs +tests/ui/structs-enums/rec-auto.rs +tests/ui/structs-enums/rec-extend.rs +tests/ui/structs-enums/rec-tup.rs +tests/ui/structs-enums/rec.rs +tests/ui/structs-enums/record-pat.rs +tests/ui/structs-enums/resource-in-struct.rs +tests/ui/structs-enums/simple-match-generic-tag.rs +tests/ui/structs-enums/small-enum-range-edge.rs +tests/ui/structs-enums/small-enums-with-fields.rs +tests/ui/structs-enums/struct-aliases.rs +tests/ui/structs-enums/struct-field-shorthand.rs +tests/ui/structs-enums/struct-like-variant-construct.rs +tests/ui/structs-enums/struct-like-variant-match.rs +tests/ui/structs-enums/struct-lit-functional-no-fields.rs +tests/ui/structs-enums/struct-literal-dtor.rs +tests/ui/structs-enums/struct-new-as-field-name.rs +tests/ui/structs-enums/struct-order-of-eval-1.rs +tests/ui/structs-enums/struct-order-of-eval-2.rs +tests/ui/structs-enums/struct-order-of-eval-3.rs +tests/ui/structs-enums/struct-order-of-eval-4.rs +tests/ui/structs-enums/struct-partial-move-1.rs +tests/ui/structs-enums/struct-partial-move-2.rs +tests/ui/structs-enums/struct-path-associated-type.rs +tests/ui/structs-enums/struct-path-self.rs +tests/ui/structs-enums/struct-pattern-matching.rs +tests/ui/structs-enums/tag-align-dyn-u64.rs +tests/ui/structs-enums/tag-align-dyn-variants.rs +tests/ui/structs-enums/tag-align-shape.rs +tests/ui/structs-enums/tag-align-u64.rs +tests/ui/structs-enums/tag-disr-val-shape.rs +tests/ui/structs-enums/tag-exports.rs +tests/ui/structs-enums/tag-variant-disr-val.rs +tests/ui/structs-enums/tag.rs +tests/ui/structs-enums/tuple-struct-construct.rs +tests/ui/structs-enums/tuple-struct-constructor-pointer.rs +tests/ui/structs-enums/tuple-struct-destructuring.rs +tests/ui/structs-enums/tuple-struct-matching.rs +tests/ui/structs-enums/tuple-struct-trivial.rs +tests/ui/structs-enums/type-sizes.rs +tests/ui/structs-enums/unit-like-struct-drop-run.rs +tests/ui/structs-enums/unit-like-struct.rs +tests/ui/structs/destructuring-struct-type-inference-8783.rs +tests/ui/structs/destructuring-struct-with-dtor-6344.rs +tests/ui/structs/large-records.rs +tests/ui/structs/mutable-unit-struct-borrow-11267.rs +tests/ui/structs/trie-node-structure-usage-3389.rs +tests/ui/symbol-names/struct-constructor-mangling.rs +tests/ui/test-attrs/test-main-not-dead.rs +tests/ui/test-attrs/test-panic-while-printing.rs +tests/ui/test-attrs/test-runner-hides-main.rs +tests/ui/thread-local/thread-local-static-reference-70673.rs +tests/ui/thread-local/thread-local-with-attributes-30756.rs +tests/ui/thread-local/tls.rs +tests/ui/threads-sendsync/child-outlives-parent.rs +tests/ui/threads-sendsync/clone-with-exterior.rs +tests/ui/threads-sendsync/comm.rs +tests/ui/threads-sendsync/issue-29488.rs +tests/ui/threads-sendsync/issue-4446.rs +tests/ui/threads-sendsync/issue-4448.rs +tests/ui/threads-sendsync/issue-8827.rs +tests/ui/threads-sendsync/issue-9396.rs +tests/ui/threads-sendsync/send_str_hashmap.rs +tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs +tests/ui/threads-sendsync/sendable-class.rs +tests/ui/threads-sendsync/sendfn-is-a-block.rs +tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs +tests/ui/threads-sendsync/spawn-fn.rs +tests/ui/threads-sendsync/spawn-types.rs +tests/ui/threads-sendsync/spawn.rs +tests/ui/threads-sendsync/spawn2.rs +tests/ui/threads-sendsync/spawning-with-debug.rs +tests/ui/threads-sendsync/std-sync-right-kind-impls.rs +tests/ui/threads-sendsync/sync-send-in-std.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcollections.rs +tests/ui/threads-sendsync/sync-send-iterators-in-libcore.rs +tests/ui/threads-sendsync/task-comm-0.rs +tests/ui/threads-sendsync/task-comm-1.rs +tests/ui/threads-sendsync/task-comm-10.rs +tests/ui/threads-sendsync/task-comm-11.rs +tests/ui/threads-sendsync/task-comm-12.rs +tests/ui/threads-sendsync/task-comm-13.rs +tests/ui/threads-sendsync/task-comm-14.rs +tests/ui/threads-sendsync/task-comm-15.rs +tests/ui/threads-sendsync/task-comm-16.rs +tests/ui/threads-sendsync/task-comm-17.rs +tests/ui/threads-sendsync/task-comm-3.rs +tests/ui/threads-sendsync/task-comm-4.rs +tests/ui/threads-sendsync/task-comm-5.rs +tests/ui/threads-sendsync/task-comm-6.rs +tests/ui/threads-sendsync/task-comm-7.rs +tests/ui/threads-sendsync/task-comm-9.rs +tests/ui/threads-sendsync/task-comm-chan-nil.rs +tests/ui/threads-sendsync/task-life-0.rs +tests/ui/threads-sendsync/task-spawn-move-and-copy.rs +tests/ui/threads-sendsync/task-stderr.rs +tests/ui/threads-sendsync/threads.rs +tests/ui/threads-sendsync/tls-dtors-are-run-in-a-static-binary.rs +tests/ui/threads-sendsync/tls-init-on-init.rs +tests/ui/threads-sendsync/tls-try-with.rs +tests/ui/threads-sendsync/trivial-message.rs +tests/ui/threads-sendsync/unwind-resource.rs +tests/ui/threads-sendsync/yield.rs +tests/ui/threads-sendsync/yield1.rs +tests/ui/threads-sendsync/yield2.rs +tests/ui/traits/alias/bounds.rs +tests/ui/traits/alias/import.rs +tests/ui/traits/alias/object.rs +tests/ui/traits/alignment-gep-tup-like-1.rs +tests/ui/traits/anon-static-method.rs +tests/ui/traits/assignability-trait.rs +tests/ui/traits/assoc-type-in-supertrait.rs +tests/ui/traits/associated_type_bound/check-trait-object-bounds-2-ok.rs +tests/ui/traits/bound/generic_trait.rs +tests/ui/traits/bound/in-arc.rs +tests/ui/traits/bound/multiple.rs +tests/ui/traits/bug-7183-generics.rs +tests/ui/traits/bug-7295.rs +tests/ui/traits/clone-unwind-rc-cleanup.rs +tests/ui/traits/coercion-generic.rs +tests/ui/traits/coercion.rs +tests/ui/traits/conditional-dispatch.rs +tests/ui/traits/const-traits/const-drop.rs +tests/ui/traits/const-traits/specialization/const-default-const-specialized.rs +tests/ui/traits/const-traits/specialization/non-const-default-const-specialized.rs +tests/ui/traits/const-traits/trait-where-clause-run.rs +tests/ui/traits/default_method_simple.rs +tests/ui/traits/default-method-lifetime-params-13204.rs +tests/ui/traits/default-method/bound-subst.rs +tests/ui/traits/default-method/bound-subst2.rs +tests/ui/traits/default-method/bound-subst3.rs +tests/ui/traits/default-method/bound-subst4.rs +tests/ui/traits/default-method/bound.rs +tests/ui/traits/default-method/macro.rs +tests/ui/traits/default-method/self.rs +tests/ui/traits/default-method/supervtable.rs +tests/ui/traits/default-method/trivial.rs +tests/ui/traits/dyn-any-prefer-vtable.rs +tests/ui/traits/dyn-drop-principal.rs +tests/ui/traits/dyn-trait.rs +tests/ui/traits/dynamic-dispatch-trait-objects-5666.rs +tests/ui/traits/early-vtbl-resolution.rs +tests/ui/traits/elaborate-type-region.rs +tests/ui/traits/encoder-trait-bounds-regression.rs +tests/ui/traits/error-trait-object-from-string.rs +tests/ui/traits/false-ambiguity-where-clause-builtin-bound.rs +tests/ui/traits/fn-type-trait-impl-15444.rs +tests/ui/traits/fnonce-repro-trait-impl-13434.rs +tests/ui/traits/generic.rs +tests/ui/traits/ice-with-dyn-pointee.rs +tests/ui/traits/impl-implicit-trait.rs +tests/ui/traits/impl-inherent-prefer-over-trait.rs +tests/ui/traits/impl-object-overlap-issue-23853.rs +tests/ui/traits/impl-trait-chain-14229.rs +tests/ui/traits/index-trait-multiple-impls-15734.rs +tests/ui/traits/inherent-method-order.rs +tests/ui/traits/inheritance/auto.rs +tests/ui/traits/inheritance/basic.rs +tests/ui/traits/inheritance/call-bound-inherited.rs +tests/ui/traits/inheritance/call-bound-inherited2.rs +tests/ui/traits/inheritance/cast-without-call-to-supertrait.rs +tests/ui/traits/inheritance/cast.rs +tests/ui/traits/inheritance/cross-trait-call.rs +tests/ui/traits/inheritance/diamond.rs +tests/ui/traits/inheritance/multiple-inheritors.rs +tests/ui/traits/inheritance/multiple-params.rs +tests/ui/traits/inheritance/num2.rs +tests/ui/traits/inheritance/num3.rs +tests/ui/traits/inheritance/num5.rs +tests/ui/traits/inheritance/overloading-simple.rs +tests/ui/traits/inheritance/overloading.rs +tests/ui/traits/inheritance/repeated-supertrait.rs +tests/ui/traits/inheritance/self-in-supertype.rs +tests/ui/traits/inheritance/self.rs +tests/ui/traits/inheritance/simple.rs +tests/ui/traits/inheritance/static.rs +tests/ui/traits/inheritance/static2.rs +tests/ui/traits/inheritance/subst.rs +tests/ui/traits/inheritance/subst2.rs +tests/ui/traits/inheritance/visibility.rs +tests/ui/traits/issue-15155.rs +tests/ui/traits/issue-18412.rs +tests/ui/traits/issue-22110.rs +tests/ui/traits/issue-22655.rs +tests/ui/traits/issue-23825.rs +tests/ui/traits/issue-24010.rs +tests/ui/traits/issue-26339.rs +tests/ui/traits/issue-33096.rs +tests/ui/traits/issue-3683.rs +tests/ui/traits/issue-38033.rs +tests/ui/traits/issue-3979-generics.rs +tests/ui/traits/issue-40085.rs +tests/ui/traits/issue-4107.rs +tests/ui/traits/issue-43132.rs +tests/ui/traits/issue-5008-borrowed-traitobject-method-call.rs +tests/ui/traits/issue-6128.rs +tests/ui/traits/issue-6334.rs +tests/ui/traits/issue-9394-inherited-calls.rs +tests/ui/traits/item-inside-macro.rs +tests/ui/traits/kindck-owned-contains-1.rs +tests/ui/traits/monad.rs +tests/ui/traits/monomorphized-callees-with-ty-params-3314.rs +tests/ui/traits/multidispatch-conditional-impl-not-considered.rs +tests/ui/traits/multidispatch-infer-convert-target.rs +tests/ui/traits/multidispatch1.rs +tests/ui/traits/multidispatch2.rs +tests/ui/traits/mut-trait-in-struct-8249.rs +tests/ui/traits/negative-impls/negated-auto-traits-rpass.rs +tests/ui/traits/next-solver/alias-bound-preference.rs +tests/ui/traits/next-solver/dyn-any-dont-prefer-impl.rs +tests/ui/traits/object-one-type-two-traits.rs +tests/ui/traits/object/auto-dedup.rs +tests/ui/traits/object/exclusion.rs +tests/ui/traits/object/generics.rs +tests/ui/traits/object/lifetime-first.rs +tests/ui/traits/object/trait-object-lifetime-conversion.rs +tests/ui/traits/object/with-lifetime-bound.rs +tests/ui/traits/objects-owned-object-borrowed-method-headerless.rs +tests/ui/traits/overlap-permitted-for-marker-traits.rs +tests/ui/traits/pointee-deduction.rs +tests/ui/traits/principal-less-objects.rs +tests/ui/traits/region-pointer-simple.rs +tests/ui/traits/reservation-impl/ok.rs +tests/ui/traits/safety-ok.rs +tests/ui/traits/static-method-overwriting.rs +tests/ui/traits/static-outlives-a-where-clause.rs +tests/ui/traits/superdefault-generics.rs +tests/ui/traits/to-str.rs +tests/ui/traits/trait-implementation-for-primitive-type-5280.rs +tests/ui/traits/trait-implementation-for-usize-5321.rs +tests/ui/traits/trait-implementation-restriction-5988.rs +tests/ui/traits/trait-object-lifetime-bounds-7563.rs +tests/ui/traits/trait-object-mut-to-shared-coercion.rs +tests/ui/traits/trait-upcasting/basic.rs +tests/ui/traits/trait-upcasting/correct-supertrait-substitution.rs +tests/ui/traits/trait-upcasting/diamond.rs +tests/ui/traits/trait-upcasting/issue-11515-upcast-fn_mut-fn.rs +tests/ui/traits/trait-upcasting/lifetime.rs +tests/ui/traits/trait-upcasting/replace-vptr.rs +tests/ui/traits/trait-upcasting/struct.rs +tests/ui/traits/typeclasses-eq-example-static.rs +tests/ui/traits/typeclasses-eq-example.rs +tests/ui/traits/ufcs-object.rs +tests/ui/traits/upcast_reorder.rs +tests/ui/traits/where-clause-vs-impl.rs +tests/ui/traits/with-bounds-default.rs +tests/ui/transmute/transmute-zst-generics.rs +tests/ui/try-block/issue-45124.rs +tests/ui/try-block/try-block-in-match.rs +tests/ui/try-block/try-block-in-return.rs +tests/ui/try-block/try-block.rs +tests/ui/try-block/try-is-identifier-edition2015.rs +tests/ui/try-trait/try-as-monad.rs +tests/ui/try-trait/try-operator-custom.rs +tests/ui/try-trait/try-operator-various-contexts.rs +tests/ui/try-trait/yeet-for-option.rs +tests/ui/try-trait/yeet-for-result.rs +tests/ui/tuple/nested-index.rs +tests/ui/tuple/one-tuple.rs +tests/ui/tuple/tup.rs +tests/ui/tuple/tuple-index-fat-types.rs +tests/ui/tuple/tuple-index.rs +tests/ui/type-alias-enum-variants/enum-variant-generic-args-pass.rs +tests/ui/type-alias-enum-variants/type-alias-enum-variants-pass.rs +tests/ui/type-alias-impl-trait/type-alias-nested-impl-trait.rs +tests/ui/type-alias/static-method-type-alias-11047.rs +tests/ui/type-inference/float-type-inference-unification-14382.rs +tests/ui/type-inference/issue-113283-alllocator-trait-eq.rs +tests/ui/type/issue-94187-verbose-type-name.rs +tests/ui/type/type-ascription.rs +tests/ui/typeck/issue-18937-1.rs +tests/ui/typeck/issue-2063.rs +tests/ui/typeck/osstring-str-equality.rs +tests/ui/typeck/type-name-intrinsic-usage-61894.rs +tests/ui/typeck/typeck_type_placeholder_1.rs +tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs +tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs +tests/ui/typeck/ufcs-type-params.rs +tests/ui/typeck/unify-return-ty.rs +tests/ui/ufcs/ufcs-polymorphic-paths.rs +tests/ui/unboxed-closures/fn-traits-overloading-arity-18952.rs +tests/ui/unboxed-closures/issue-18652.rs +tests/ui/unboxed-closures/issue-18661.rs +tests/ui/unboxed-closures/self-param-space-conflict-in-unboxed-closure-18685.rs +tests/ui/unboxed-closures/type-id-higher-rank.rs +tests/ui/unboxed-closures/unboxed-closures-all-traits.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn-mut.rs +tests/ui/unboxed-closures/unboxed-closures-blanket-fn.rs +tests/ui/unboxed-closures/unboxed-closures-boxed.rs +tests/ui/unboxed-closures/unboxed-closures-by-ref.rs +tests/ui/unboxed-closures/unboxed-closures-call-fn-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object-autoderef.rs +tests/ui/unboxed-closures/unboxed-closures-call-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-counter-not-moved.rs +tests/ui/unboxed-closures/unboxed-closures-direct-sugary-call.rs +tests/ui/unboxed-closures/unboxed-closures-drop.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn-hr.rs +tests/ui/unboxed-closures/unboxed-closures-extern-fn.rs +tests/ui/unboxed-closures/unboxed-closures-fn-as-fnmut-and-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-fnmut-as-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-generic.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-from-expected-object-type.rs +tests/ui/unboxed-closures/unboxed-closures-infer-arg-types-w-bound-regs-from-expected-bound.rs +tests/ui/unboxed-closures/unboxed-closures-infer-explicit-call-early.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-calling-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnmut.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce-move.rs +tests/ui/unboxed-closures/unboxed-closures-infer-fnonce.rs +tests/ui/unboxed-closures/unboxed-closures-infer-kind.rs +tests/ui/unboxed-closures/unboxed-closures-infer-recursive-fn.rs +tests/ui/unboxed-closures/unboxed-closures-infer-upvar.rs +tests/ui/unboxed-closures/unboxed-closures-manual-impl.rs +tests/ui/unboxed-closures/unboxed-closures-monomorphization.rs +tests/ui/unboxed-closures/unboxed-closures-move-from-projection-issue-30046.rs +tests/ui/unboxed-closures/unboxed-closures-move-mutable.rs +tests/ui/unboxed-closures/unboxed-closures-move-some-upvars-in-by-ref-closure.rs +tests/ui/unboxed-closures/unboxed-closures-prelude.rs +tests/ui/unboxed-closures/unboxed-closures-simple.rs +tests/ui/unboxed-closures/unboxed-closures-single-word-env.rs +tests/ui/unboxed-closures/unboxed-closures-static-call-fn-once.rs +tests/ui/unboxed-closures/unboxed-closures-sugar-object.rs +tests/ui/unboxed-closures/unboxed-closures-unique-type-id.rs +tests/ui/unboxed-closures/unboxed-closures-zero-args.rs +tests/ui/underscore-lifetime/basic-underscore-lifetime-elision.rs +tests/ui/union/union-align.rs +tests/ui/union/union-backcomp.rs +tests/ui/union/union-const-codegen.rs +tests/ui/union/union-const-eval-field.rs +tests/ui/union/union-derive-rpass.rs +tests/ui/union/union-drop-assign.rs +tests/ui/union/union-drop.rs +tests/ui/union/union-generic-rpass.rs +tests/ui/union/union-inherent-method.rs +tests/ui/union/union-macro.rs +tests/ui/union/union-manuallydrop-rpass.rs +tests/ui/union/union-nodrop.rs +tests/ui/union/union-nonzero.rs +tests/ui/union/union-overwrite.rs +tests/ui/union/union-packed.rs +tests/ui/union/union-pat-refutability.rs +tests/ui/union/union-trait-impl.rs +tests/ui/union/union-transmute.rs +tests/ui/unsafe/new-unsafe-pointers.rs +tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs +tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs +tests/ui/unsafe/unsafe-pointer-assignability.rs +tests/ui/unsized-locals/box-fnonce.rs +tests/ui/unsized-locals/unsized-exprs-rpass.rs +tests/ui/unsized-locals/unsized-index.rs +tests/ui/unsized-locals/unsized-parameters.rs +tests/ui/unsized/issue-23649-1.rs +tests/ui/unsized/issue-23649-2.rs +tests/ui/unsized/unchanged-param.rs +tests/ui/unsized/unsized.rs +tests/ui/unsized/unsized2.rs +tests/ui/unsized/unsized3-rpass.rs +tests/ui/variance/variance-intersection-of-ref-and-opt-ref.rs +tests/ui/where-clauses/issue-50825.rs +tests/ui/where-clauses/where-clause-early-bound-lifetimes.rs +tests/ui/where-clauses/where-clause-method-substituion-rpass.rs +tests/ui/where-clauses/where-clause-region-outlives.rs +tests/ui/where-clauses/where-clauses-lifetimes.rs +tests/ui/where-clauses/where-clauses-method.rs +tests/ui/where-clauses/where-clauses-unboxed-closures.rs +tests/ui/where-clauses/where-clauses.rs +tests/ui/zero-sized/zero-size-type-destructors.rs +tests/ui/zero-sized/zero-sized-binary-heap-push.rs +tests/ui/zero-sized/zero-sized-btreemap-insert.rs +tests/ui/zero-sized/zero-sized-linkedlist-push.rs +tests/ui/zero-sized/zero-sized-tuple-struct.rs diff --git a/tests/ui/parse_test_directives.awk b/tests/ui/parse_test_directives.awk new file mode 100644 index 00000000..430e172b --- /dev/null +++ b/tests/ui/parse_test_directives.awk @@ -0,0 +1,145 @@ +# parse_test_directives.awk: extract rustc UI test directives from a .rs file. +# +# Scans for //@ directives and decides whether the test should be skipped on +# the current host, and extracts compile-flags/edition/rustc-env for passing +# to the compiler. +# +# Input variables (pass via -v): +# host_os - "linux", "macos", "windows", etc. +# host_arch - "aarch64", "x86_64", etc. +# host_bits - "32" or "64" +# universal - if non-empty, only apply platform-independent skips +# (needs-sanitizer, needs-subprocess, extern crate libc). +# Use this when generating lists that must be correct on +# any host; platform-specific filtering happens at runtime. +# +# Output (printed to stdout): +# If the test should be skipped: SKIPreason +# Otherwise: FLAGSflags-string +# +# The FLAGS line may have an empty flags string if no compile-flags were found. + +BEGIN { + skip = "" + flags = "" + + # Map host_os to the set of OS names this host satisfies. + # "unix" covers linux, macos, freebsd, etc. "apple" covers macos. + is_unix = (host_os == "linux" || host_os == "macos" || host_os == "freebsd" || host_os == "openbsd" || host_os == "netbsd" || host_os == "dragonfly" || host_os == "solaris" || host_os == "illumos" || host_os == "android") + is_apple = (host_os == "macos") +} + +# Tests that use `extern crate libc` fail with E0464 (multiple candidates) +# because our sysroot ships both .rmeta and .rlib for libc. This is an +# environment limitation of running rustc directly outside cargo. +/extern[[:space:]]+crate[[:space:]]+libc/ { skip = "extern-crate-libc" } + +# Only process //@ directive lines. +/^[[:space:]]*\/\/@[[:space:]]/ { + # Strip leading whitespace and the //@ prefix to get the directive. + dir = $0 + sub(/^[[:space:]]*\/\/@[[:space:]]*/, "", dir) + + # Detect and strip optional [revision] prefix (e.g., "[x64]only-x86_64"). + has_revision = 0 + if (match(dir, /^\[.*\]/)) { + has_revision = 1 + sub(/^\[.*\]/, "", dir) + } + + # --- Skip directives --- + # Each of these sets skip="reason" if the test shouldn't run here. + # Platform-specific skips are only evaluated when universal is not set; + # in universal mode, run_ui_tests.sh handles these at runtime. + + if (!universal) { + # only-: skip unless we match + if (match(dir, /^only-linux/)) { if (host_os != "linux") skip = "only-linux" } + if (match(dir, /^only-windows/)) { if (host_os != "windows") skip = "only-windows" } + if (match(dir, /^only-macos/)) { if (host_os != "macos") skip = "only-macos" } + if (match(dir, /^only-unix/)) { if (!is_unix) skip = "only-unix" } + if (match(dir, /^only-apple/)) { if (!is_apple) skip = "only-apple" } + if (match(dir, /^only-msvc/)) { if (host_os != "windows") skip = "only-msvc" } + + # only-: skip unless we match + if (match(dir, /^only-x86_64/)) { if (host_arch != "x86_64") skip = "only-x86_64" } + if (match(dir, /^only-x86$/) || match(dir, /^only-x86[^_]/)) { if (host_arch != "x86_64" && host_arch != "i686") skip = "only-x86" } + if (match(dir, /^only-aarch64/)) { if (host_arch != "aarch64") skip = "only-aarch64" } + + # only-: skip unless we match + if (match(dir, /^only-32bit/)) { if (host_bits != "32") skip = "only-32bit" } + if (match(dir, /^only-64bit/)) { if (host_bits != "64") skip = "only-64bit" } + + # ignore-: skip if we match + if (match(dir, /^ignore-linux/)) { if (host_os == "linux") skip = "ignore-linux" } + if (match(dir, /^ignore-windows/)) { if (host_os == "windows") skip = "ignore-windows" } + if (match(dir, /^ignore-macos/)) { if (host_os == "macos") skip = "ignore-macos" } + if (match(dir, /^ignore-apple/)) { if (is_apple) skip = "ignore-apple" } + if (match(dir, /^ignore-unix/)) { if (is_unix) skip = "ignore-unix" } + + # ignore-: skip if we match + if (match(dir, /^ignore-x86_64/)) { if (host_arch == "x86_64") skip = "ignore-x86_64" } + if (match(dir, /^ignore-aarch64/)) { if (host_arch == "aarch64") skip = "ignore-aarch64" } + } + + # needs-sanitizer-*: we don't have sanitizer support in our test setup + if (match(dir, /^needs-sanitizer/)) { skip = "needs-sanitizer" } + + # needs-subprocess: test forks/execs the compiled binary; we run with + # -Zno-codegen so there is no binary to execute. + if (match(dir, /^needs-subprocess/)) { skip = "needs-subprocess" } + + # --- Flag extraction directives --- + # Only extract flags from non-revision-gated directives. Revision-gated + # flags (e.g., [x32]compile-flags: -Ctarget-feature=+sse2) are for a + # specific revision; applying all of them at once produces conflicts + # (e.g., --edition 2018 and --edition 2021 simultaneously). + if (!has_revision) { + # compile-flags: append everything after the colon + if (match(dir, /^compile-flags:[[:space:]]*/)) { + val = dir + sub(/^compile-flags:[[:space:]]*/, "", val) + flags = flags " " val + } + + # edition: append --edition + # Range syntax (e.g., "2015..2021") is a compiletest feature that + # runs the test once per edition in the range. We use the earliest + # edition, since every test in the range must compile with it and + # later editions may reject deprecated syntax the test exercises. + if (match(dir, /^edition:[[:space:]]*/)) { + val = dir + sub(/^edition:[[:space:]]*/, "", val) + # Take first word only + sub(/[[:space:]].*/, "", val) + # Range edition: "2015..2021" or "2015..=2021"; extract the start + if (match(val, /\.\./)) { + val = substr(val, 1, RSTART - 1) + } + # Validate: edition must be a 4-digit year or "future" + if (val == "" || (!match(val, /^[0-9][0-9][0-9][0-9]$/) && val != "future")) { + printf "WARNING: unrecognized edition value \"%s\" from directive: %s (in %s)\n", val, dir, FILENAME > "/dev/stderr" + } else { + flags = flags " --edition " val + } + } + + # rustc-env: append --env-set -Zunstable-options + if (match(dir, /^rustc-env:[[:space:]]*/)) { + val = dir + sub(/^rustc-env:[[:space:]]*/, "", val) + sub(/[[:space:]].*/, "", val) + if (val != "") flags = flags " --env-set " val " -Zunstable-options" + } + } +} + +END { + if (skip != "") { + print "SKIP\t" skip + } else { + # Trim leading space from flags + sub(/^[[:space:]]+/, "", flags) + print "FLAGS\t" flags + } +} diff --git a/tests/ui/passing.tsv b/tests/ui/passing.tsv index d802f401..3a2e42a1 100644 --- a/tests/ui/passing.tsv +++ b/tests/ui/passing.tsv @@ -8,14 +8,14 @@ tests/ui/abi/extern/extern-call-deep2.rs tests/ui/abi/extern/extern-call-direct.rs tests/ui/abi/extern/extern-call-indirect.rs tests/ui/abi/extern/extern-call-scrub.rs +tests/ui/abi/extern/extern-pass-char.rs +tests/ui/abi/extern/extern-pass-double.rs +tests/ui/abi/extern/extern-pass-empty.rs tests/ui/abi/extern/extern-pass-FiveU16s.rs tests/ui/abi/extern/extern-pass-TwoU16s.rs tests/ui/abi/extern/extern-pass-TwoU32s.rs tests/ui/abi/extern/extern-pass-TwoU64s.rs tests/ui/abi/extern/extern-pass-TwoU8s.rs -tests/ui/abi/extern/extern-pass-char.rs -tests/ui/abi/extern/extern-pass-double.rs -tests/ui/abi/extern/extern-pass-empty.rs tests/ui/abi/extern/extern-pass-u32.rs tests/ui/abi/extern/extern-pass-u64.rs tests/ui/abi/extern/extern-return-FiveU16s.rs @@ -70,11 +70,11 @@ tests/ui/array-slice-vec/new-style-fixed-length-vec.rs tests/ui/array-slice-vec/rcvr-borrowed-to-slice.rs tests/ui/array-slice-vec/repeated-vector-syntax.rs tests/ui/array-slice-vec/show-boxed-slice.rs +tests/ui/array-slice-vec/slice_binary_search.rs tests/ui/array-slice-vec/slice-of-zero-size-elements.rs tests/ui/array-slice-vec/slice-panic-1.rs tests/ui/array-slice-vec/slice-panic-2.rs tests/ui/array-slice-vec/slice.rs -tests/ui/array-slice-vec/slice_binary_search.rs tests/ui/array-slice-vec/subslice-patterns-const-eval-match.rs tests/ui/array-slice-vec/subslice-patterns-const-eval.rs tests/ui/array-slice-vec/variance-vec-covariant.rs @@ -413,13 +413,13 @@ tests/ui/cast/codegen-object-shim.rs tests/ui/cast/fat-ptr-cast-rpass.rs tests/ui/cast/supported-cast.rs tests/ui/catch-unwind-bang.rs +tests/ui/cfg/cfg_attr.rs +tests/ui/cfg/cfg_stmt_expr.rs tests/ui/cfg/cfg-macros-foo.rs tests/ui/cfg/cfg-macros-notfoo.rs tests/ui/cfg/cfg-target-abi.rs tests/ui/cfg/cfg-target-compact.rs tests/ui/cfg/cfg-target-vendor.rs -tests/ui/cfg/cfg_attr.rs -tests/ui/cfg/cfg_stmt_expr.rs tests/ui/cfg/cfgs-on-items.rs tests/ui/cfg/conditional-compile.rs tests/ui/cfg/true-false.rs @@ -445,8 +445,8 @@ tests/ui/closures/2229_closure_analysis/run_pass/fru_syntax.rs tests/ui/closures/2229_closure_analysis/run_pass/issue-88372.rs tests/ui/closures/2229_closure_analysis/run_pass/move_closure.rs tests/ui/closures/2229_closure_analysis/run_pass/multilevel-path-3.rs -tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs tests/ui/closures/2229_closure_analysis/run_pass/mut_ref_struct_mem.rs +tests/ui/closures/2229_closure_analysis/run_pass/mut_ref.rs tests/ui/closures/2229_closure_analysis/run_pass/unsafe_ptr.rs tests/ui/closures/closure_no_cap_coerce_many_run_pass.rs tests/ui/closures/closure_no_cap_coerce_many_unsafe_1.rs @@ -529,6 +529,12 @@ tests/ui/command/command-uid-gid.rs tests/ui/command/issue-10626.rs tests/ui/compiletest-self-test/test-aux-bin.rs tests/ui/complex.rs +tests/ui/const_prop/apfloat-f64-roundtrip.rs +tests/ui/const_prop/apfloat-remainder-regression.rs +tests/ui/const_prop/const-prop-ice3.rs +tests/ui/const_prop/dont-propagate-generic-instance-2.rs +tests/ui/const_prop/dont-propagate-generic-instance.rs +tests/ui/const_prop/overwrite_with_const_with_params.rs tests/ui/const-generics/array-wrapper-struct-ctor.rs tests/ui/const-generics/coerce_unsized_array.rs tests/ui/const-generics/concrete-const-as-fn-arg.rs @@ -556,10 +562,10 @@ tests/ui/const-generics/generic_const_exprs/from-sig.rs tests/ui/const-generics/generic_const_exprs/infer-too-generic.rs tests/ui/const-generics/generic_const_exprs/issue-73899.rs tests/ui/const-generics/generic_const_exprs/less_than.rs -tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs -tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-1.rs tests/ui/const-generics/generic_const_exprs/nested_uneval_unification-2.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-1.rs +tests/ui/const-generics/generic_const_exprs/nested-abstract-consts-2.rs tests/ui/const-generics/generic_const_exprs/subexprs_are_const_evalutable.rs tests/ui/const-generics/generic_const_exprs/unop.rs tests/ui/const-generics/impl-const-generic-struct.rs @@ -580,6 +586,7 @@ tests/ui/const-generics/min_const_generics/type_and_const_defaults.rs tests/ui/const-generics/promotion.rs tests/ui/const-generics/slice-const-param.rs tests/ui/const-generics/transmute.rs +tests/ui/const-generics/type_of_anon_const.rs tests/ui/const-generics/type-dependent/const-arg-in-const-arg.rs tests/ui/const-generics/type-dependent/issue-61936.rs tests/ui/const-generics/type-dependent/issue-63695.rs @@ -588,19 +595,26 @@ tests/ui/const-generics/type-dependent/issue-70507.rs tests/ui/const-generics/type-dependent/issue-71805.rs tests/ui/const-generics/type-dependent/qpath.rs tests/ui/const-generics/type-dependent/simple.rs -tests/ui/const-generics/type_of_anon_const.rs tests/ui/const-generics/uninferred-consts-during-codegen-1.rs tests/ui/const-generics/uninferred-consts-during-codegen-2.rs -tests/ui/const_prop/apfloat-f64-roundtrip.rs -tests/ui/const_prop/apfloat-remainder-regression.rs -tests/ui/const_prop/const-prop-ice3.rs -tests/ui/const_prop/dont-propagate-generic-instance-2.rs -tests/ui/const_prop/dont-propagate-generic-instance.rs -tests/ui/const_prop/overwrite_with_const_with_params.rs tests/ui/consts/assoc-const.rs tests/ui/consts/bswap-const.rs tests/ui/consts/cast-discriminant-zst-enum.rs tests/ui/consts/check_const-feature-gated.rs +tests/ui/consts/const_constructor/const_constructor_qpath.rs +tests/ui/consts/const_constructor/const-construct-call.rs +tests/ui/consts/const_discriminant.rs +tests/ui/consts/const_fn_unsize.rs +tests/ui/consts/const_in_pattern/accept_structural.rs +tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs +tests/ui/consts/const_in_pattern/issue-62614.rs +tests/ui/consts/const_in_pattern/issue-73431.rs +tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs +tests/ui/consts/const_let_eq_float.rs +tests/ui/consts/const_let_eq.rs +tests/ui/consts/const_let_promote.rs +tests/ui/consts/const_refs_to_static.rs +tests/ui/consts/const_unsafe_unreachable.rs tests/ui/consts/const-adt-align-mismatch.rs tests/ui/consts/const-autoderef.rs tests/ui/consts/const-big-enum.rs @@ -643,8 +657,8 @@ tests/ui/consts/const-eval/float_methods.rs tests/ui/consts/const-eval/heap/alloc_intrinsic_nontransient.rs tests/ui/consts/const-eval/heap/alloc_intrinsic_transient.rs tests/ui/consts/const-eval/heap/alloc_intrinsic_zero_sized.rs -tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs tests/ui/consts/const-eval/heap/dealloc_intrinsic_zero_sized.rs +tests/ui/consts/const-eval/heap/dealloc_intrinsic.rs tests/ui/consts/const-eval/issue-64908.rs tests/ui/consts/const-eval/issue-64970.rs tests/ui/consts/const-eval/nrvo.rs @@ -685,8 +699,8 @@ tests/ui/consts/const-rec-and-tup.rs tests/ui/consts/const-region-ptrs-noncopy.rs tests/ui/consts/const-region-ptrs.rs tests/ui/consts/const-repeated-values.rs -tests/ui/consts/const-size_of-align_of.rs tests/ui/consts/const-size_of_val-align_of_val.rs +tests/ui/consts/const-size_of-align_of.rs tests/ui/consts/const-struct.rs tests/ui/consts/const-trait-to-trait.rs tests/ui/consts/const-tuple-struct.rs @@ -698,20 +712,6 @@ tests/ui/consts/const-vec-of-fns.rs tests/ui/consts/const-vec-syntax.rs tests/ui/consts/const-vecs-and-slices.rs tests/ui/consts/const.rs -tests/ui/consts/const_constructor/const-construct-call.rs -tests/ui/consts/const_constructor/const_constructor_qpath.rs -tests/ui/consts/const_discriminant.rs -tests/ui/consts/const_fn_unsize.rs -tests/ui/consts/const_in_pattern/accept_structural.rs -tests/ui/consts/const_in_pattern/custom-eq-branch-pass.rs -tests/ui/consts/const_in_pattern/issue-62614.rs -tests/ui/consts/const_in_pattern/issue-73431.rs -tests/ui/consts/const_in_pattern/null-raw-ptr-issue-119270.rs -tests/ui/consts/const_let_eq.rs -tests/ui/consts/const_let_eq_float.rs -tests/ui/consts/const_let_promote.rs -tests/ui/consts/const_refs_to_static.rs -tests/ui/consts/const_unsafe_unreachable.rs tests/ui/consts/consts-in-patterns.rs tests/ui/consts/control-flow/basics.rs tests/ui/consts/control-flow/short-circuit-let.rs @@ -758,8 +758,8 @@ tests/ui/consts/miri_unleashed/slice_eq.rs tests/ui/consts/mozjs-error.rs tests/ui/consts/mut-ptr-to-static.rs tests/ui/consts/non-scalar-cast.rs -tests/ui/consts/offset.rs tests/ui/consts/offset_from.rs +tests/ui/consts/offset.rs tests/ui/consts/packed_pattern.rs tests/ui/consts/packed_pattern2.rs tests/ui/consts/promote_borrowed_field.rs @@ -882,6 +882,8 @@ tests/ui/destructuring-assignment/warn-unused-duplication.rs tests/ui/diverging-fallback-method-chain.rs tests/ui/diverging-fallback-option.rs tests/ui/drop-bounds/drop-bounds-impl-drop.rs +tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/drop_order.rs tests/ui/drop/drop-on-empty-block-exit.rs tests/ui/drop/drop-on-ret.rs tests/ui/drop/drop-struct-as-object.rs @@ -890,11 +892,9 @@ tests/ui/drop/drop-trait-generic.rs tests/ui/drop/drop-trait.rs tests/ui/drop/drop-with-type-ascription-1.rs tests/ui/drop/drop-with-type-ascription-2.rs -tests/ui/drop/drop_order.rs -tests/ui/drop/drop_order_if_let_rescope.rs +tests/ui/drop/dropck_legal_cycles.rs tests/ui/drop/dropck-eyepatch-reorder.rs tests/ui/drop/dropck-eyepatch.rs -tests/ui/drop/dropck_legal_cycles.rs tests/ui/drop/dynamic-drop.rs tests/ui/drop/issue-21486.rs tests/ui/drop/issue-23338-ensure-param-drop-order.rs @@ -1079,6 +1079,7 @@ tests/ui/functions-closures/call-closure-from-overloaded-op.rs tests/ui/functions-closures/capture-clauses-boxed-closures.rs tests/ui/functions-closures/capture-clauses-unboxed-closures.rs tests/ui/functions-closures/clone-closure.rs +tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs tests/ui/functions-closures/closure-bounds-can-capture-chan.rs tests/ui/functions-closures/closure-expected-type/issue-38714.rs tests/ui/functions-closures/closure-expected-type/supply-just-return-type.rs @@ -1089,7 +1090,6 @@ tests/ui/functions-closures/closure-inference2.rs tests/ui/functions-closures/closure-reform.rs tests/ui/functions-closures/closure-returning-closure.rs tests/ui/functions-closures/closure-to-fn-coercion.rs -tests/ui/functions-closures/closure_to_fn_coercion-expected-types.rs tests/ui/functions-closures/copy-closure.rs tests/ui/functions-closures/fn-bare-assign.rs tests/ui/functions-closures/fn-bare-coerce-to-block.rs @@ -1432,6 +1432,7 @@ tests/ui/issues/issue-26127.rs tests/ui/issues/issue-2642.rs tests/ui/issues/issue-26468.rs tests/ui/issues/issue-26484.rs +tests/ui/issues/issue-26641.rs tests/ui/issues/issue-26655.rs tests/ui/issues/issue-26709.rs tests/ui/issues/issue-26802.rs @@ -1777,8 +1778,8 @@ tests/ui/macros/macro-pat-pattern-followed-by-or.rs tests/ui/macros/macro-pat.rs tests/ui/macros/macro-path.rs tests/ui/macros/macro-seq-followed-by-seq.rs -tests/ui/macros/macro-stmt.rs tests/ui/macros/macro-stmt_macro_in_expr_macro.rs +tests/ui/macros/macro-stmt.rs tests/ui/macros/macro-tt-followed-by-seq.rs tests/ui/macros/macro-with-attrs1.rs tests/ui/macros/macro-with-attrs2.rs @@ -1855,15 +1856,6 @@ tests/ui/mir/issue-77002.rs tests/ui/mir/issue-77359-simplify-arm-identity.rs tests/ui/mir/issue-78496.rs tests/ui/mir/issue-89485.rs -tests/ui/mir/mir-inlining/ice-issue-45493.rs -tests/ui/mir/mir-inlining/ice-issue-45885.rs -tests/ui/mir/mir-inlining/ice-issue-68347.rs -tests/ui/mir/mir-inlining/ice-issue-77306-1.rs -tests/ui/mir/mir-inlining/ice-issue-77306-2.rs -tests/ui/mir/mir-inlining/ice-issue-77564.rs -tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs -tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs -tests/ui/mir/mir-typeck-normalize-fn-sig.rs tests/ui/mir/mir_adt_construction.rs tests/ui/mir/mir_ascription_coercion.rs tests/ui/mir/mir_assign_eval_order.rs @@ -1873,8 +1865,8 @@ tests/ui/mir/mir_build_match_comparisons.rs tests/ui/mir/mir_call_with_associated_type.rs tests/ui/mir/mir_calls_to_shims.rs tests/ui/mir/mir_cast_fn_ret.rs -tests/ui/mir/mir_codegen_array.rs tests/ui/mir/mir_codegen_array_2.rs +tests/ui/mir/mir_codegen_array.rs tests/ui/mir/mir_codegen_call_converging.rs tests/ui/mir/mir_codegen_calls.rs tests/ui/mir/mir_codegen_spike1.rs @@ -1886,8 +1878,8 @@ tests/ui/mir/mir_const_prop_identity.rs tests/ui/mir/mir_constval_adts.rs tests/ui/mir/mir_drop_order.rs tests/ui/mir/mir_early_return_scope.rs -tests/ui/mir/mir_fat_ptr.rs tests/ui/mir/mir_fat_ptr_drop.rs +tests/ui/mir/mir_fat_ptr.rs tests/ui/mir/mir_heavy_promoted.rs tests/ui/mir/mir_let_chains_drop_order.rs tests/ui/mir/mir_match_arm_guard.rs @@ -1899,21 +1891,30 @@ tests/ui/mir/mir_small_agg_arg.rs tests/ui/mir/mir_static_subtype.rs tests/ui/mir/mir_struct_with_assoc_ty.rs tests/ui/mir/mir_temp_promotions.rs -tests/ui/mir/mir_void_return.rs tests/ui/mir/mir_void_return_2.rs +tests/ui/mir/mir_void_return.rs +tests/ui/mir/mir-inlining/ice-issue-45493.rs +tests/ui/mir/mir-inlining/ice-issue-45885.rs +tests/ui/mir/mir-inlining/ice-issue-68347.rs +tests/ui/mir/mir-inlining/ice-issue-77306-1.rs +tests/ui/mir/mir-inlining/ice-issue-77306-2.rs +tests/ui/mir/mir-inlining/ice-issue-77564.rs +tests/ui/mir/mir-inlining/no-trait-method-issue-40473.rs +tests/ui/mir/mir-inlining/var-debuginfo-issue-67586.rs +tests/ui/mir/mir-typeck-normalize-fn-sig.rs tests/ui/mir/simplify-branch-same.rs tests/ui/mir/validate/needs-reveal-all.rs -tests/ui/modules/mod-inside-fn.rs -tests/ui/modules/mod-view-items.rs tests/ui/modules/mod_dir_implicit.rs +tests/ui/modules/mod_dir_path_multi.rs tests/ui/modules/mod_dir_path.rs tests/ui/modules/mod_dir_path2.rs tests/ui/modules/mod_dir_path3.rs -tests/ui/modules/mod_dir_path_multi.rs tests/ui/modules/mod_dir_recursive.rs tests/ui/modules/mod_dir_simple.rs -tests/ui/modules/mod_file.rs tests/ui/modules/mod_file_with_path_attr.rs +tests/ui/modules/mod_file.rs +tests/ui/modules/mod-inside-fn.rs +tests/ui/modules/mod-view-items.rs tests/ui/monomorphize-abi-alignment.rs tests/ui/moves/issue-22536-copy-mustnt-zero.rs tests/ui/moves/move-1-unique.rs @@ -1937,8 +1938,8 @@ tests/ui/myriad-closures.rs tests/ui/nested-block-comment.rs tests/ui/nested-class.rs tests/ui/never_type/impl-for-never.rs -tests/ui/never_type/never-result.rs tests/ui/never_type/never_coercions.rs +tests/ui/never_type/never-result.rs tests/ui/never_type/try_from.rs tests/ui/new-impl-syntax.rs tests/ui/new-import-syntax.rs @@ -1970,13 +1971,13 @@ tests/ui/numbers-arithmetic/apfloat-modulo-wrong.rs tests/ui/numbers-arithmetic/arith-unsigned.rs tests/ui/numbers-arithmetic/div-mod.rs tests/ui/numbers-arithmetic/f16-f128-lit.rs +tests/ui/numbers-arithmetic/float_math.rs tests/ui/numbers-arithmetic/float-int-invalid-const-cast.rs tests/ui/numbers-arithmetic/float-literal-inference.rs tests/ui/numbers-arithmetic/float-nan.rs tests/ui/numbers-arithmetic/float-signature.rs tests/ui/numbers-arithmetic/float.rs tests/ui/numbers-arithmetic/float2.rs -tests/ui/numbers-arithmetic/float_math.rs tests/ui/numbers-arithmetic/floatlits.rs tests/ui/numbers-arithmetic/i128.rs tests/ui/numbers-arithmetic/i32-sub.rs @@ -2039,6 +2040,8 @@ tests/ui/out-pointer-aliasing.rs tests/ui/output-slot-variants.rs tests/ui/over-constrained-vregs.rs tests/ui/overloaded/issue-14958.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs +tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs tests/ui/overloaded/overloaded-autoderef-count.rs tests/ui/overloaded/overloaded-autoderef-indexing.rs tests/ui/overloaded/overloaded-autoderef-order.rs @@ -2056,8 +2059,6 @@ tests/ui/overloaded/overloaded-index-assoc-list.rs tests/ui/overloaded/overloaded-index-autoderef.rs tests/ui/overloaded/overloaded-index-in-field.rs tests/ui/overloaded/overloaded-index.rs -tests/ui/overloaded/overloaded_deref_with_ref_pattern.rs -tests/ui/overloaded/overloaded_deref_with_ref_pattern_issue15609.rs tests/ui/packed/dyn-trait.rs tests/ui/packed/issue-118537-field-offset-ice.rs tests/ui/packed/issue-118537-field-offset.rs @@ -2175,15 +2176,15 @@ tests/ui/process/signal-exit-status.rs tests/ui/process/sigpipe-should-be-ignored.rs tests/ui/process/try-wait.rs tests/ui/project-cache-issue-31849.rs -tests/ui/ptr-coercion-rpass.rs tests/ui/ptr_ops/issue-80309-safe.rs tests/ui/ptr_ops/issue-80309.rs +tests/ui/ptr-coercion-rpass.rs tests/ui/range/range_inclusive.rs tests/ui/raw-ref-op/raw-ref-op.rs tests/ui/raw-str.rs tests/ui/realloc-16687.rs -tests/ui/recursion/instantiable.rs tests/ui/recursion_limit/issue-40003.rs +tests/ui/recursion/instantiable.rs tests/ui/regions/init-res-into-things.rs tests/ui/regions/issue-5243.rs tests/ui/regions/issue-6157.rs @@ -2557,10 +2558,10 @@ tests/ui/threads-sendsync/issue-4446.rs tests/ui/threads-sendsync/issue-4448.rs tests/ui/threads-sendsync/issue-8827.rs tests/ui/threads-sendsync/issue-9396.rs -tests/ui/threads-sendsync/send-is-not-static-par-for.rs -tests/ui/threads-sendsync/send-resource.rs tests/ui/threads-sendsync/send_str_hashmap.rs tests/ui/threads-sendsync/send_str_treemap.rs +tests/ui/threads-sendsync/send-is-not-static-par-for.rs +tests/ui/threads-sendsync/send-resource.rs tests/ui/threads-sendsync/sendable-class.rs tests/ui/threads-sendsync/sendfn-is-a-block.rs tests/ui/threads-sendsync/sendfn-spawn-with-fn-arg.rs @@ -2763,9 +2764,9 @@ tests/ui/type/issue-94187-verbose-type-name.rs tests/ui/type/type-ascription.rs tests/ui/typeck/issue-18937-1.rs tests/ui/typeck/issue-2063.rs +tests/ui/typeck/typeck_type_placeholder_1.rs tests/ui/typeck/typeck-closure-to-unsafe-fn-ptr.rs tests/ui/typeck/typeck-fn-to-unsafe-fn-ptr.rs -tests/ui/typeck/typeck_type_placeholder_1.rs tests/ui/typeck/ufcs-type-params.rs tests/ui/typeck/unify-return-ty.rs tests/ui/typestate-multi-decl.rs @@ -2838,8 +2839,8 @@ tests/ui/unit.rs tests/ui/unnamed_argument_mode.rs tests/ui/unreachable-code-1.rs tests/ui/unsafe/new-unsafe-pointers.rs -tests/ui/unsafe/union-modification.rs tests/ui/unsafe/union_destructure.rs +tests/ui/unsafe/union-modification.rs tests/ui/unsafe/unsafe-fn-called-from-unsafe-blk.rs tests/ui/unsafe/unsafe-fn-called-from-unsafe-fn.rs tests/ui/unsafe/unsafe-pointer-assignability.rs diff --git a/tests/ui/remake_ui_tests.sh b/tests/ui/remake_ui_tests.sh index 22a6d86b..1770448a 100755 --- a/tests/ui/remake_ui_tests.sh +++ b/tests/ui/remake_ui_tests.sh @@ -24,6 +24,9 @@ UI_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) # Ensure the rust checkout is at the expected commit (handles bare repos) source "$UI_DIR/ensure_rustc_commit.sh" +# Shared directive parser (skip detection + flag extraction) +AWK_SCRIPT="${UI_DIR}/parse_test_directives.awk" + UI_SOURCES="${UI_DIR}/ui_sources.txt" FAILING_TSV="${UI_DIR}/failing.tsv" PASSING_TSV="${UI_DIR}/passing.tsv" @@ -39,41 +42,34 @@ if [ -n "${KEEP_OUTPUT}" ]; then mkdir -p "$FAILING_DIR" "$PASSING_DIR" fi -# Extract //@ compile-flags: and //@ edition: directives from a test file. -# Prints space-separated flags to stdout. -extract_test_flags() { - local file="$1" - local flags="" - - # Extract //@ compile-flags: directives (everything after "compile-flags:") - local compile_flags - compile_flags=$(grep -s '^[[:space:]]*//@[[:space:]]*compile-flags:' "$file" \ - | sed 's/^.*compile-flags:[[:space:]]*//' || true) - if [ -n "$compile_flags" ]; then - flags="$compile_flags" - fi - - # Extract //@ edition: directive (e.g., "//@ edition: 2021") - local edition - edition=$(grep -s '^[[:space:]]*//@[[:space:]]*edition:' "$file" \ - | sed 's/^.*edition:[[:space:]]*//' | head -1 || true) - if [ -n "$edition" ]; then - flags="$flags --edition $edition" - fi - - # Extract //@ rustc-env: directives (e.g., "//@ rustc-env:MY_VAR=value") - # These set environment variables for the rustc process via --env-set. - local rustc_envs - rustc_envs=$(grep -s '^[[:space:]]*//@[[:space:]]*rustc-env:' "$file" \ - | sed 's/^.*rustc-env:[[:space:]]*//' || true) - if [ -n "$rustc_envs" ]; then - while IFS= read -r env_pair; do - flags="$flags --env-set $env_pair -Zunstable-options" - done <<< "$rustc_envs" - fi - - echo "$flags" -} +# ------------------------- +# Host detection (mirrors run_ui_tests.sh) +# ------------------------- +HOST_UNAME_ARCH="$(uname -m)" +case "$HOST_UNAME_ARCH" in + arm64) HOST_ARCH="aarch64" ;; + *) HOST_ARCH="$HOST_UNAME_ARCH" ;; +esac + +HOST_UNAME_OS="$(uname -s)" +case "$HOST_UNAME_OS" in + Linux) HOST_OS="linux" ;; + Darwin) HOST_OS="macos" ;; + MINGW*|MSYS*|CYGWIN*) HOST_OS="windows" ;; + FreeBSD) HOST_OS="freebsd" ;; + *) HOST_OS="$(echo "$HOST_UNAME_OS" | tr '[:upper:]' '[:lower:]')" ;; +esac + +HOST_BITS="$(getconf LONG_BIT 2>/dev/null || echo 64)" + +# Path-based arch filter (mirrors run_ui_tests.sh) +FOREIGN_ARCH_RE="" +case "$HOST_ARCH" in + aarch64) FOREIGN_ARCH_RE='/(x86_64|x86|i686|i386|s390x|powerpc|mips|riscv|loongarch|sparc|hexagon|bpf|avr|msp430|nvptx)/' ;; + x86_64) FOREIGN_ARCH_RE='/(aarch64|arm|s390x|powerpc|mips|riscv|loongarch|sparc|hexagon|bpf|avr|msp430|nvptx)/' ;; +esac + +skipped=0 echo "Running UI tests..." while read -r test; do @@ -84,8 +80,30 @@ while read -r test; do exit 3 # The test files should always be there fi + # --- Skip check (same logic as run_ui_tests.sh) --- + if [[ -n "$FOREIGN_ARCH_RE" ]] && grep -qE "$FOREIGN_ARCH_RE" <<<"$test"; then + (( ++skipped )) + echo "SKIPPED (arch path): $test" + continue + fi + + directive_result=$(awk -v host_os="$HOST_OS" \ + -v host_arch="$HOST_ARCH" \ + -v host_bits="$HOST_BITS" \ + -f "$AWK_SCRIPT" "$full_path" 2>/dev/null || echo "FLAGS ") + + directive_kind="${directive_result%% *}" + directive_value="${directive_result#* }" + + if [[ "$directive_kind" == "SKIP" ]]; then + (( ++skipped )) + echo "SKIPPED ($directive_value): $test" + continue + fi + + test_flags="$directive_value" + echo "Running test: $test" - test_flags=$(extract_test_flags "$full_path") # shellcheck disable=SC2086 # intentional word-splitting of test_flags cargo run -- -Zno-codegen ${test_flags} "$full_path" > tmp.stdout 2> tmp.stderr status=$? @@ -120,4 +138,5 @@ echo "Sorting TSV files..." [ -s "$FAILING_TSV" ] && LC_ALL=C sort "$FAILING_TSV" -o "$FAILING_TSV" [ -s "$PASSING_TSV" ] && LC_ALL=C sort "$PASSING_TSV" -o "$PASSING_TSV" +echo "Skipped: $skipped" echo "UI tests remade." diff --git a/tests/ui/run_ui_tests.sh b/tests/ui/run_ui_tests.sh index f3aa1658..c0bb41f0 100755 --- a/tests/ui/run_ui_tests.sh +++ b/tests/ui/run_ui_tests.sh @@ -28,46 +28,6 @@ log() { printf '%s\n' "$*" } -# ------------------------- -# Extract test directives -# ------------------------- - -# Extract //@ compile-flags:, //@ edition:, and //@ rustc-env: directives -# from a test file. Prints space-separated flags to stdout. -extract_test_flags() { - local file="$1" - local flags="" - - # Extract //@ compile-flags: directives (everything after "compile-flags:") - local compile_flags - compile_flags=$(grep -s '^[[:space:]]*//@[[:space:]]*compile-flags:' "$file" \ - | sed 's/^.*compile-flags:[[:space:]]*//' || true) - if [ -n "$compile_flags" ]; then - flags="$compile_flags" - fi - - # Extract //@ edition: directive (e.g., "//@ edition: 2021") - local edition - edition=$(grep -s '^[[:space:]]*//@[[:space:]]*edition:' "$file" \ - | sed 's/^.*edition:[[:space:]]*//' | head -1 || true) - if [ -n "$edition" ]; then - flags="$flags --edition $edition" - fi - - # Extract //@ rustc-env: directives (e.g., "//@ rustc-env:MY_VAR=value") - # These set environment variables for the rustc process via --env-set. - local rustc_envs - rustc_envs=$(grep -s '^[[:space:]]*//@[[:space:]]*rustc-env:' "$file" \ - | sed 's/^.*rustc-env:[[:space:]]*//' || true) - if [ -n "$rustc_envs" ]; then - while IFS= read -r env_pair; do - flags="$flags --env-set $env_pair -Zunstable-options" - done <<< "$rustc_envs" - fi - - echo "$flags" -} - # ------------------------- # Arg parsing # ------------------------- @@ -116,9 +76,33 @@ done # ------------------------- UI_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +# parse_test_directives.awk handles both skip-detection and flag extraction +# in a single pass over each test file. It prints one line: +# SKIPreason if the test should not run on this host +# FLAGSflags if the test should run (flags may be empty) +AWK_SCRIPT="${UI_DIR}/parse_test_directives.awk" + # Ensure the rust checkout is at the expected commit (handles bare repos) source "$UI_DIR/ensure_rustc_commit.sh" -PASSING_TSV="${UI_DIR}/passing.tsv" +# Determine the active nightly and use per-nightly effective lists if available. +# The nightly channel name (e.g., nightly-2025-03-01) is derived from the +# active toolchain; override directories are generated by diff_test_lists.sh. +ACTIVE_NIGHTLY=$(rustup show active-toolchain 2>/dev/null \ + | grep -oE 'nightly-[0-9]{4}-[0-9]{2}-[0-9]{2}' || true) +OVERRIDE_DIR="${UI_DIR}/overrides/${ACTIVE_NIGHTLY}" + +if [[ -n "$ACTIVE_NIGHTLY" && -f "${OVERRIDE_DIR}/passing.tsv" ]]; then + PASSING_TSV="${OVERRIDE_DIR}/passing.tsv" + if [[ ! -s "$PASSING_TSV" ]]; then + die "Override passing.tsv for ${ACTIVE_NIGHTLY} is empty; regenerate with: bash tests/ui/diff_test_lists.sh --emit RUST_DIR ${ACTIVE_NIGHTLY}" + fi + log "Using effective test list for ${ACTIVE_NIGHTLY}" +elif [[ -n "$ACTIVE_NIGHTLY" ]]; then + log "WARNING: no UI test override for ${ACTIVE_NIGHTLY}; falling back to base list (results may be unreliable)" + PASSING_TSV="${UI_DIR}/passing.tsv" +else + PASSING_TSV="${UI_DIR}/passing.tsv" +fi [[ -f "$PASSING_TSV" ]] || die "Missing TSV file: $PASSING_TSV" DEBUG_DIR="${UI_DIR}/debug" @@ -127,6 +111,10 @@ if (( SAVE_DEBUG_OUTPUT )); then mkdir -p "$DEBUG_DIR" fi +# Collect failed test paths for easy re-investigation. +FAILED_FILE=$(mktemp /tmp/ui_failed.XXXXXX) +trap 'rm -f "$FAILED_FILE"' EXIT + # ------------------------- # Runner setup # ------------------------- @@ -154,30 +142,48 @@ else [[ -n "${RUN_SMIR_CMD[0]:-}" ]] || die "RUN_SMIR is set but empty" [[ -x "${RUN_SMIR_CMD[0]}" ]] || die "RUN_SMIR binary is not executable: ${RUN_SMIR_CMD[0]}" RUN_SMIR_CMD+=( -Zno-codegen ) + + # The binary needs rustc's dylibs on the library path. + SYSROOT_LIB="$(rustc --print sysroot)/lib" + DYLD_LIBRARY_PATH="${SYSROOT_LIB}${DYLD_LIBRARY_PATH:+:$DYLD_LIBRARY_PATH}" + LD_LIBRARY_PATH="${SYSROOT_LIB}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" + export DYLD_LIBRARY_PATH LD_LIBRARY_PATH fi # ------------------------- -# Arch filtering +# Host detection # ------------------------- -HOST_ARCH="$(uname -m)" -case "$HOST_ARCH" in - arm64|aarch64) - SKIP_ARCH_RE='/(x86_64|x86|i686|i386|s390x|powerpc|mips|riscv|loongarch|sparc|hexagon|bpf|avr|msp430|nvptx)/' - HOST_ONLY_RE='^//@ (\[.*\])?only-(aarch64|arm)' - ;; - x86_64) - SKIP_ARCH_RE='/(aarch64|arm|s390x|powerpc|mips|riscv|loongarch|sparc|hexagon|bpf|avr|msp430|nvptx)/' - HOST_ONLY_RE='^//@ (\[.*\])?only-(x86_64|x86)' - ;; - *) - SKIP_ARCH_RE='^$' # no filtering on unknown arch - HOST_ONLY_RE='' # no directive filtering either - ;; + +# Normalize host arch: uname -m reports "arm64" on macOS, but rustc +# test directives use "aarch64". +HOST_UNAME_ARCH="$(uname -m)" +case "$HOST_UNAME_ARCH" in + arm64) HOST_ARCH="aarch64" ;; + *) HOST_ARCH="$HOST_UNAME_ARCH" ;; esac -ANY_ARCH_ONLY_RE='^//@ (\[.*\])?only-(x86_64|x86|i686|aarch64|arm|s390x|riscv|mips|powerpc|loongarch|sparc)' +# Normalize host OS to match rustc directive conventions. +HOST_UNAME_OS="$(uname -s)" +case "$HOST_UNAME_OS" in + Linux) HOST_OS="linux" ;; + Darwin) HOST_OS="macos" ;; + MINGW*|MSYS*|CYGWIN*) HOST_OS="windows" ;; + FreeBSD) HOST_OS="freebsd" ;; + *) HOST_OS="$(echo "$HOST_UNAME_OS" | tr '[:upper:]' '[:lower:]')" ;; +esac + +# Pointer width for only-32bit / only-64bit directives. +HOST_BITS="$(getconf LONG_BIT 2>/dev/null || echo 64)" + +# Path-based arch filter: skip tests whose path contains a foreign arch +# directory (e.g., tests/ui/asm/x86_64/ on aarch64). +FOREIGN_ARCH_RE="" +case "$HOST_ARCH" in + aarch64) FOREIGN_ARCH_RE='/(x86_64|x86|i686|i386|s390x|powerpc|mips|riscv|loongarch|sparc|hexagon|bpf|avr|msp430|nvptx)/' ;; + x86_64) FOREIGN_ARCH_RE='/(aarch64|arm|s390x|powerpc|mips|riscv|loongarch|sparc|hexagon|bpf|avr|msp430|nvptx)/' ;; +esac -log "Running regression tests for passing UI cases (host: $HOST_ARCH)..." +log "Running regression tests for passing UI cases (host: $HOST_ARCH, os: $HOST_OS)..." start_time=$SECONDS failed=0 @@ -194,28 +200,32 @@ while IFS= read -r test; do (( ++total )) - # Skip tests gated on a different architecture. - # Check 1: path contains a foreign-arch directory name. - # Check 2: file contains a rustc `//@ only-` directive for a different arch. - skip_test=0 - if grep -qE "$SKIP_ARCH_RE" <<<"$test"; then - skip_test=1 - elif [[ -f "$test_path" ]] && grep -qE "$ANY_ARCH_ONLY_RE" "$test_path"; then - if [[ -n "${HOST_ONLY_RE:-}" ]] && ! grep -qE "$HOST_ONLY_RE" "$test_path"; then - skip_test=1 - fi + # --- Skip check and flag extraction --- + # Fast path: skip tests whose path contains a foreign-arch directory name + # (avoids reading the file at all). + if [[ -n "$FOREIGN_ARCH_RE" ]] && grep -qE "$FOREIGN_ARCH_RE" <<<"$test"; then + (( ++skipped )) + (( VERBOSE )) && log "SKIPPED (arch path): $test_path" + continue fi - if (( skip_test )); then + # Parse //@ directives: determines whether to skip (and why) and + # extracts compile-flags/edition/rustc-env in one pass. + directive_result=$(awk -v host_os="$HOST_OS" \ + -v host_arch="$HOST_ARCH" \ + -v host_bits="$HOST_BITS" \ + -f "$AWK_SCRIPT" "$test_path" 2>/dev/null || echo "FLAGS ") + + directive_kind="${directive_result%% *}" + directive_value="${directive_result#* }" + + if [[ "$directive_kind" == "SKIP" ]]; then (( ++skipped )) - if (( VERBOSE )); then - log "⏭️ SKIPPED (arch): $test_path" - fi + (( VERBOSE )) && log "SKIPPED ($directive_value): $test_path" continue fi - # Extract //@ compile-flags:, //@ edition:, and //@ rustc-env: directives. - test_flags=$(extract_test_flags "$test_path") + test_flags="$directive_value" # shellcheck disable=SC2086 # intentional word-splitting of $test_flags if (( SAVE_DEBUG_OUTPUT )); then @@ -232,6 +242,7 @@ while IFS= read -r test; do fi else log "❌ FAILED: $test_path (exit $rc)" + printf '%s\t%d\n' "$test" "$rc" >> "$FAILED_FILE" if (( SAVE_DEBUG_OUTPUT )) && [[ -s "$test_stderr" ]]; then tail -4 "$test_stderr" | sed 's/^/ /' cp -- "$test_stderr" "${DEBUG_DIR}/${test_name}.stderr" @@ -261,6 +272,13 @@ if (( run > 0 )); then printf '\nPassing ratio : %s\nFailing ratio : %s\n' "$ratio_passed" "$ratio_failed" fi +if (( failed > 0 )); then + printf '\nFailed tests:\n' + while IFS=$'\t' read -r fpath frc; do + printf ' %s (exit %s)\n' "$fpath" "$frc" + done < "$FAILED_FILE" +fi + if (( SAVE_DEBUG_OUTPUT && failed > 0 )); then printf '\nDebug output saved to: %s\n' "$DEBUG_DIR" fi diff --git a/tests/ui/test_directives_test.sh b/tests/ui/test_directives_test.sh new file mode 100644 index 00000000..a649eecf --- /dev/null +++ b/tests/ui/test_directives_test.sh @@ -0,0 +1,420 @@ +#!/usr/bin/env bash +# test_directives_test.sh: unit tests for parse_test_directives.awk +# +# Each test creates a tiny synthetic .rs file with //@ directives, runs +# the awk script against it, and checks the output. +# +# Tests that exercise non-obvious boundary behavior are annotated with +# notes explaining the design decision. These notes are collected and +# printed in a "Boundary notes" report after the pass/fail summary, so +# someone reading the output can understand (and challenge) the choices. +# +# Usage: bash tests/ui/test_directives_test.sh + +set -euo pipefail + +SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)" +AWK="$SCRIPT_DIR/parse_test_directives.awk" +TMPFILE=$(mktemp /tmp/directive_test.XXXXXX.rs) +trap 'rm -f "$TMPFILE"' EXIT + +passed=0 +failed=0 +boundary_notes=() + +# run_awk +# Prints the awk output line. +run_awk() { + local os="$1" arch="$2" bits="$3" + shift 3 + printf '%s\n' "$@" > "$TMPFILE" + awk -v host_os="$os" -v host_arch="$arch" -v host_bits="$bits" \ + -f "$AWK" "$TMPFILE" +} + +# assert_output +assert_output() { + local name="$1" expected="$2" actual="$3" + if [[ "$actual" == "$expected" ]]; then + (( ++passed )) + else + printf 'FAIL: %s\n expected: %s\n actual: %s\n' "$name" "$expected" "$actual" + (( ++failed )) + fi +} + +# Shorthand: assert that running awk produces the expected output. +# check +check() { + local name="$1" os="$2" arch="$3" bits="$4" expected="$5" + shift 5 + local actual + actual=$(run_awk "$os" "$arch" "$bits" "$@") + assert_output "$name" "$expected" "$actual" +} + +# run_awk_universal +# Runs with universal=1 (no platform-specific skips). +run_awk_universal() { + printf '%s\n' "$@" > "$TMPFILE" + awk -v universal=1 -f "$AWK" "$TMPFILE" +} + +# check_universal +check_universal() { + local name="$1" expected="$2" + shift 2 + local actual + actual=$(run_awk_universal "$@") + assert_output "$name" "$expected" "$actual" +} + +# Register a boundary note. These are printed in a report section after +# the pass/fail summary to document non-obvious design decisions. +# boundary +boundary() { + boundary_notes+=("$(printf ' %-52s %s' "$1:" "$2")") +} + +# ========================================================================= +# Skip directives: only- +# ========================================================================= + +check "only-linux skips on macos" \ + macos aarch64 64 "SKIP only-linux" \ + "//@ only-linux" + +check "only-linux passes on linux" \ + linux x86_64 64 "FLAGS " \ + "//@ only-linux" + +check "only-windows skips on linux" \ + linux x86_64 64 "SKIP only-windows" \ + "//@ only-windows" + +check "only-macos passes on macos" \ + macos aarch64 64 "FLAGS " \ + "//@ only-macos" + +check "only-macos skips on linux" \ + linux x86_64 64 "SKIP only-macos" \ + "//@ only-macos" + +check "only-unix passes on linux" \ + linux x86_64 64 "FLAGS " \ + "//@ only-unix" + +check "only-unix passes on macos" \ + macos aarch64 64 "FLAGS " \ + "//@ only-unix" +boundary "only-unix passes on macos" \ + "macos is unix (unix = linux|macos|freebsd|openbsd|netbsd|dragonfly|solaris|illumos|android)" + +check "only-unix skips on windows" \ + windows x86_64 64 "SKIP only-unix" \ + "//@ only-unix" + +check "only-apple passes on macos" \ + macos aarch64 64 "FLAGS " \ + "//@ only-apple" +boundary "only-apple passes on macos" \ + "apple currently = macos only; if iOS/tvOS targets arise, expand is_apple in the awk script" + +check "only-apple skips on linux" \ + linux x86_64 64 "SKIP only-apple" \ + "//@ only-apple" + +check "only-msvc skips on linux" \ + linux x86_64 64 "SKIP only-msvc" \ + "//@ only-msvc" +boundary "only-msvc skips on linux" \ + "only-msvc is treated as only-windows (we don't distinguish MSVC vs GNU toolchains)" + +# ========================================================================= +# Skip directives: only- +# ========================================================================= + +check "only-x86_64 passes on x86_64" \ + linux x86_64 64 "FLAGS " \ + "//@ only-x86_64" + +check "only-x86_64 skips on aarch64" \ + linux aarch64 64 "SKIP only-x86_64" \ + "//@ only-x86_64" + +check "only-aarch64 passes on aarch64" \ + macos aarch64 64 "FLAGS " \ + "//@ only-aarch64" + +check "only-aarch64 skips on x86_64" \ + linux x86_64 64 "SKIP only-aarch64" \ + "//@ only-aarch64" + +check "only-x86 (bare) skips on aarch64" \ + linux aarch64 64 "SKIP only-x86" \ + "//@ only-x86" + +check "only-x86 (bare) passes on x86_64" \ + linux x86_64 64 "FLAGS " \ + "//@ only-x86" +boundary "only-x86 (bare) passes on x86_64" \ + "only-x86 is a family match: covers both x86_64 and i686 (rustc convention)" + +# ========================================================================= +# Skip directives: only- +# ========================================================================= + +check "only-32bit skips on 64-bit" \ + linux x86_64 64 "SKIP only-32bit" \ + "//@ only-32bit" + +check "only-32bit passes on 32-bit" \ + linux i686 32 "FLAGS " \ + "//@ only-32bit" + +check "only-64bit passes on 64-bit" \ + linux x86_64 64 "FLAGS " \ + "//@ only-64bit" + +check "only-64bit skips on 32-bit" \ + linux i686 32 "SKIP only-64bit" \ + "//@ only-64bit" + +# ========================================================================= +# Skip directives: ignore- +# ========================================================================= + +check "ignore-linux skips on linux" \ + linux x86_64 64 "SKIP ignore-linux" \ + "//@ ignore-linux" + +check "ignore-linux passes on macos" \ + macos aarch64 64 "FLAGS " \ + "//@ ignore-linux" + +check "ignore-macos skips on macos" \ + macos aarch64 64 "SKIP ignore-macos" \ + "//@ ignore-macos" + +check "ignore-apple skips on macos" \ + macos aarch64 64 "SKIP ignore-apple" \ + "//@ ignore-apple" + +check "ignore-apple passes on linux" \ + linux x86_64 64 "FLAGS " \ + "//@ ignore-apple" + +check "ignore-windows passes on linux" \ + linux x86_64 64 "FLAGS " \ + "//@ ignore-windows" + +check "ignore-unix skips on linux" \ + linux x86_64 64 "SKIP ignore-unix" \ + "//@ ignore-unix" + +check "ignore-unix skips on macos" \ + macos aarch64 64 "SKIP ignore-unix" \ + "//@ ignore-unix" +boundary "ignore-unix skips on macos" \ + "mirrors only-unix: macos is unix, so ignore-unix skips on macos" + +# ========================================================================= +# Skip directives: ignore- +# ========================================================================= + +check "ignore-aarch64 skips on aarch64" \ + macos aarch64 64 "SKIP ignore-aarch64" \ + "//@ ignore-aarch64" + +check "ignore-aarch64 passes on x86_64" \ + linux x86_64 64 "FLAGS " \ + "//@ ignore-aarch64" + +check "ignore-x86_64 skips on x86_64" \ + linux x86_64 64 "SKIP ignore-x86_64" \ + "//@ ignore-x86_64" + +# ========================================================================= +# Skip directives: needs-sanitizer +# ========================================================================= + +check "needs-sanitizer-cfi skips everywhere" \ + linux x86_64 64 "SKIP needs-sanitizer" \ + "//@ needs-sanitizer-cfi" + +check "needs-sanitizer-address skips everywhere" \ + macos aarch64 64 "SKIP needs-sanitizer" \ + "//@ needs-sanitizer-address" +boundary "needs-sanitizer-address skips everywhere" \ + "all needs-sanitizer-* skip unconditionally; our test harness has no sanitizer support" + +# Skip directives: needs-subprocess + +check "needs-subprocess skips (no binary with -Zno-codegen)" \ + linux x86_64 64 "SKIP needs-subprocess" \ + "//@ run-pass" \ + "//@ needs-subprocess" +boundary "needs-subprocess skips (no binary with -Zno-codegen)" \ + "we run with -Zno-codegen so there is no binary to fork/exec" + +# ========================================================================= +# Revision-gated skip directives +# ========================================================================= + +check "revision-gated skips on aarch64 (last reason wins)" \ + macos aarch64 64 "SKIP only-x86" \ + "//@ revisions: x64 x32" \ + "//@ [x64]only-x86_64" \ + "//@ [x32]only-x86" +boundary "revision-gated skips on aarch64 (last reason wins)" \ + "both [x64] and [x32] trigger skip on aarch64; last processed reason overwrites (here: only-x86)" + +check "revision-gated passes on x86_64" \ + linux x86_64 64 "FLAGS " \ + "//@ revisions: x64 x32" \ + "//@ [x64]only-x86_64" \ + "//@ [x32]only-x86" +boundary "revision-gated passes on x86_64" \ + "conservative: revision-gated skip directives are stripped and applied globally; x86_64 satisfies both only-x86_64 and only-x86" + +# ========================================================================= +# Flag extraction: compile-flags +# ========================================================================= + +check "compile-flags extracted" \ + linux x86_64 64 "FLAGS -C opt-level=3 -Zvalidate-mir" \ + "//@ compile-flags: -C opt-level=3 -Zvalidate-mir" + +check "multiple compile-flags lines concatenated" \ + linux x86_64 64 "FLAGS -C opt-level=3 -Zvalidate-mir" \ + "//@ compile-flags: -C opt-level=3" \ + "//@ compile-flags: -Zvalidate-mir" + +# ========================================================================= +# Flag extraction: edition +# ========================================================================= + +check "edition extracted" \ + linux x86_64 64 "FLAGS --edition 2021" \ + "//@ edition: 2021" + +check "compile-flags and edition combined" \ + linux x86_64 64 "FLAGS -C opt-level=3 --edition 2021" \ + "//@ compile-flags: -C opt-level=3" \ + "//@ edition: 2021" + +check "range edition uses earliest (dotdot)" \ + linux x86_64 64 "FLAGS --edition 2015" \ + "//@ edition:2015..2021" + +check "range edition uses earliest (dotdoteq)" \ + linux x86_64 64 "FLAGS --edition 2021" \ + "//@ edition:2021..=2024" + +# ========================================================================= +# Flag extraction: rustc-env +# ========================================================================= + +check "rustc-env extracted" \ + linux x86_64 64 "FLAGS --env-set MY_VAR=hello -Zunstable-options" \ + "//@ rustc-env:MY_VAR=hello" + +# ========================================================================= +# Revision-gated flags: must NOT be extracted +# ========================================================================= + +check "revision-gated compile-flags not extracted" \ + linux x86_64 64 "FLAGS " \ + "//@ revisions: a b" \ + "//@ [a]compile-flags: --edition 2018" \ + "//@ [b]compile-flags: --edition 2021" +boundary "revision-gated compile-flags not extracted" \ + "applying both --edition 2018 and --edition 2021 would conflict; all revision-gated flags are dropped" + +check "revision-gated edition not extracted" \ + linux x86_64 64 "FLAGS " \ + "//@ [a]edition: 2018" +boundary "revision-gated edition not extracted" \ + "same rationale: we don't know which revision to run, so gated flags are unsafe to extract" + +check "mixed: non-gated flags kept, gated flags dropped" \ + linux x86_64 64 "FLAGS -C opt-level=3" \ + "//@ compile-flags: -C opt-level=3" \ + "//@ [x32]compile-flags: -Ctarget-feature=+sse2" +boundary "mixed: non-gated flags kept, gated flags dropped" \ + "non-gated -C opt-level=3 is safe to extract; gated -Ctarget-feature=+sse2 is dropped" + +# ========================================================================= +# No directives at all +# ========================================================================= + +check "no directives: empty flags" \ + linux x86_64 64 "FLAGS " \ + "fn main() {}" + +# ========================================================================= +# Skip takes precedence over flags +# ========================================================================= + +check "skip takes precedence over extracted flags" \ + macos aarch64 64 "SKIP only-linux" \ + "//@ only-linux" \ + "//@ compile-flags: -C opt-level=3" +boundary "skip takes precedence over extracted flags" \ + "flags are still parsed but never emitted; the SKIP line is output instead of FLAGS" + +# ========================================================================= +# Universal mode: platform-independent skips only +# ========================================================================= + +check_universal "universal: needs-sanitizer still skips" \ + "SKIP needs-sanitizer" \ + "//@ needs-sanitizer-cfi" + +check_universal "universal: needs-subprocess still skips" \ + "SKIP needs-subprocess" \ + "//@ needs-subprocess" + +check_universal "universal: extern crate libc still skips" \ + "SKIP extern-crate-libc" \ + "extern crate libc;" + +check_universal "universal: only-linux does NOT skip" \ + "FLAGS " \ + "//@ only-linux" +boundary "universal: only-linux does NOT skip" \ + "in universal mode, platform-specific directives are deferred to runtime" + +check_universal "universal: ignore-aarch64 does NOT skip" \ + "FLAGS " \ + "//@ ignore-aarch64" + +check_universal "universal: flags still extracted" \ + "FLAGS --edition 2021" \ + "//@ edition: 2021" + +# ========================================================================= +# Summary +# ========================================================================= + +total=$(( passed + failed )) +printf '\n—— Directive parser tests ——\n' +printf 'Passed: %d / %d\n' "$passed" "$total" +if (( failed > 0 )); then + printf 'FAILED: %d\n' "$failed" +fi + +if (( ${#boundary_notes[@]} > 0 )); then + printf '\n—— Boundary notes (%d) ——\n' "${#boundary_notes[@]}" + printf 'Tests below exercise non-obvious behavior. If a test fails, check\n' + printf 'whether the expectation or the awk script needs updating.\n\n' + for note in "${boundary_notes[@]}"; do + printf '%s\n' "$note" + done +fi + +if (( failed > 0 )); then + exit 1 +else + printf '\nAll tests passed.\n' +fi