about summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
authorMatthias Krüger <476013+matthiaskrgr@users.noreply.github.com>2025-05-21 11:28:47 +0200
committerGitHub <noreply@github.com>2025-05-21 11:28:47 +0200
commit5b150e312202cdceb6e0f6cb7ef58b3ac9780aea (patch)
tree2b836335dfd46af2703cc0758f24c342ae22b1ad /tests
parentaaa684fd1d8678132e0a409b674b5cc0d43b895f (diff)
parent1cc0e38fdc4d2ec8c9c130d7ffc9c30d100885a2 (diff)
downloadrust-5b150e312202cdceb6e0f6cb7ef58b3ac9780aea.tar.gz
rust-5b150e312202cdceb6e0f6cb7ef58b3ac9780aea.zip
Rollup merge of #141318 - nnethercote:fix-140884, r=compiler-errors
Avoid creating an empty identifer in `Symbol::to_ident_string`.

Because that causes an assertion failure in debug builds.

Fixes #140884.

r? `@oli-obk`
Diffstat (limited to 'tests')
-rw-r--r--tests/crashes/140884.rs6
-rw-r--r--tests/ui/extern/extern-empty-string-issue-140884.rs3
-rw-r--r--tests/ui/extern/extern-empty-string-issue-140884.stderr15
3 files changed, 18 insertions, 6 deletions
diff --git a/tests/crashes/140884.rs b/tests/crashes/140884.rs
deleted file mode 100644
index 6840760933a..00000000000
--- a/tests/crashes/140884.rs
+++ /dev/null
@@ -1,6 +0,0 @@
-//@ known-bug: #140884
-//@ needs-rustc-debug-assertions
-
-fn a() {
-    extern "" {}
-}
diff --git a/tests/ui/extern/extern-empty-string-issue-140884.rs b/tests/ui/extern/extern-empty-string-issue-140884.rs
new file mode 100644
index 00000000000..10291513d34
--- /dev/null
+++ b/tests/ui/extern/extern-empty-string-issue-140884.rs
@@ -0,0 +1,3 @@
+extern "" {} //~ ERROR invalid ABI: found ``
+
+fn main() {}
diff --git a/tests/ui/extern/extern-empty-string-issue-140884.stderr b/tests/ui/extern/extern-empty-string-issue-140884.stderr
new file mode 100644
index 00000000000..accae0c0f7c
--- /dev/null
+++ b/tests/ui/extern/extern-empty-string-issue-140884.stderr
@@ -0,0 +1,15 @@
+error[E0703]: invalid ABI: found ``
+  --> $DIR/extern-empty-string-issue-140884.rs:1:8
+   |
+LL | extern "" {}
+   |        ^^ invalid ABI
+   |
+   = note: invoke `rustc --print=calling-conventions` for a full list of supported calling conventions
+help: there's a similarly named valid ABI `C`
+   |
+LL | extern "C" {}
+   |         +
+
+error: aborting due to 1 previous error
+
+For more information about this error, try `rustc --explain E0703`.