about summary refs log tree commit diff
diff options
context:
space:
mode:
authorIris Shi <0.0@owo.li>2025-09-22 17:32:50 +0800
committerIris Shi <0.0@owo.li>2025-09-22 17:39:31 +0800
commite37f0fed052701f38c9b61541f565b834106ad32 (patch)
tree83892a5dfeb34582f07069aca2f08890da7c9f2c
parentb441b801fa72dac0886b98dc68b02993dc07649e (diff)
downloadrust-e37f0fed052701f38c9b61541f565b834106ad32.tar.gz
rust-e37f0fed052701f38c9b61541f565b834106ad32.zip
Add regression test
-rw-r--r--tests/run-make/rustdoc-merge-no-input-finalize/rmake.rs22
-rw-r--r--tests/run-make/rustdoc-merge-no-input-finalize/sierra.rs1
2 files changed, 23 insertions, 0 deletions
diff --git a/tests/run-make/rustdoc-merge-no-input-finalize/rmake.rs b/tests/run-make/rustdoc-merge-no-input-finalize/rmake.rs
new file mode 100644
index 00000000000..6df9e95829d
--- /dev/null
+++ b/tests/run-make/rustdoc-merge-no-input-finalize/rmake.rs
@@ -0,0 +1,22 @@
+// Running --merge=finalize without an input crate root should not trigger ICE.
+// Issue: https://github.com/rust-lang/rust/issues/146646
+
+//@ needs-target-std
+
+use run_make_support::rustdoc;
+
+fn main() {
+    rustdoc()
+        .input("sierra.rs")
+        .arg("-Zunstable-options")
+        .arg("--parts-out-dir=parts")
+        .arg("--merge=none")
+        .run();
+
+    rustdoc()
+        .arg("-Zunstable-options")
+        .arg("--include-parts-dir=parts")
+        .arg("--merge=finalize")
+        .out_dir("out")
+        .run();
+}
diff --git a/tests/run-make/rustdoc-merge-no-input-finalize/sierra.rs b/tests/run-make/rustdoc-merge-no-input-finalize/sierra.rs
new file mode 100644
index 00000000000..f8fc48341ed
--- /dev/null
+++ b/tests/run-make/rustdoc-merge-no-input-finalize/sierra.rs
@@ -0,0 +1 @@
+pub struct Sierra;