rewrite forced-unwind-terminate-pof to rmake · rust-lang/rust@2eab81a (original) (raw)
File tree
3 files changed
lines changed
- tests/run-make/forced-unwind-terminate-pof
3 files changed
lines changed
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -51,7 +51,6 @@ run-make/extern-multiple-copies/Makefile | ||
51 | 51 | run-make/extern-multiple-copies2/Makefile |
52 | 52 | run-make/extra-filename-with-temp-outputs/Makefile |
53 | 53 | run-make/fmt-write-bloat/Makefile |
54 | -run-make/forced-unwind-terminate-pof/Makefile | |
55 | 54 | run-make/foreign-double-unwind/Makefile |
56 | 55 | run-make/foreign-exceptions/Makefile |
57 | 56 | run-make/foreign-rust-exceptions/Makefile |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
1 | +// During a forced unwind, crossing the non-Plain Old Frame | |
2 | +// would define the forced unwind as undefined behaviour, and | |
3 | +// immediately abort the unwinding process. This test checks | |
4 | +// that the forced unwinding takes precedence. | |
5 | +// See https://github.com/rust-lang/rust/issues/101469 | |
6 | + | |
7 | +//@ ignore-cross-compile | |
8 | +//@ ignore-windows | |
9 | +//Reason: pthread (POSIX threads) is not available on Windows | |
10 | + | |
11 | +use run_make_support::{run, rustc}; | |
12 | + | |
13 | +fn main() { | |
14 | +rustc().input("foo.rs").run(); | |
15 | +run("foo").assert_stdout_not_contains("cannot unwind"); | |
16 | +} |