diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
commit | 218caa410aa38c29984be31a5229b9fa717560ee (patch) | |
tree | c54bd55eeb6e4c508940a30e94c0032fbd45d677 /src/test/ui/try-block/try-block-unreachable-code-lint.rs | |
parent | Releasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff) | |
download | rustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip |
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/try-block/try-block-unreachable-code-lint.rs')
-rw-r--r-- | src/test/ui/try-block/try-block-unreachable-code-lint.rs | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/src/test/ui/try-block/try-block-unreachable-code-lint.rs b/src/test/ui/try-block/try-block-unreachable-code-lint.rs deleted file mode 100644 index e1d82ea36..000000000 --- a/src/test/ui/try-block/try-block-unreachable-code-lint.rs +++ /dev/null @@ -1,76 +0,0 @@ -// Test unreachable_code lint for `try {}` block ok-wrapping. See issues #54165, #63324. - -// compile-flags: --edition 2018 -// check-pass -#![feature(try_blocks)] -#![warn(unreachable_code)] - -fn err() -> Result<u32, ()> { - Err(()) -} - -// In the following cases unreachable code is autogenerated and should not be reported. - -fn test_ok_wrapped_divergent_expr_1() { - let res: Result<u32, ()> = try { - loop { - err()?; - } - }; - println!("res: {:?}", res); -} - -fn test_ok_wrapped_divergent_expr_2() { - let _: Result<u32, ()> = try { - return - }; -} - -fn test_autogenerated_unit_after_divergent_expr() { - let _: Result<(), ()> = try { - return; - }; -} - -// In the following cases unreachable code should be reported. - -fn test_try_block_after_divergent_stmt() { - let _: Result<u32, ()> = { - return; - - try { - loop { - err()?; - } - } - //~^^^^^ WARNING unreachable expression - }; -} - -fn test_wrapped_divergent_expr() { - let _: Result<u32, ()> = { - Err(return) - //~^ WARNING unreachable call - }; -} - -fn test_expr_after_divergent_stmt_in_try_block() { - let res: Result<u32, ()> = try { - loop { - err()?; - } - - 42 - //~^ WARNING unreachable expression - }; - println!("res: {:?}", res); -} - -fn main() { - test_ok_wrapped_divergent_expr_1(); - test_ok_wrapped_divergent_expr_2(); - test_autogenerated_unit_after_divergent_expr(); - test_try_block_after_divergent_stmt(); - test_wrapped_divergent_expr(); - test_expr_after_divergent_stmt_in_try_block(); -} |