From 388f22b92fe2218427e1b5ab5d29f51d037f2969 Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Sat, 17 Jun 2023 23:19:19 +0200 Subject: [PATCH] ada: Make the identification of case expressions more robust gcc/ada/ * gcc-interface/trans.cc (Case_Statement_to_gnu): Rename boolean constant and use From_Conditional_Expression flag for its value. --- gcc/ada/gcc-interface/trans.cc | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gcc/ada/gcc-interface/trans.cc b/gcc/ada/gcc-interface/trans.cc index ddc7b6dde1e9..b74bb0683bf5 100644 --- a/gcc/ada/gcc-interface/trans.cc +++ b/gcc/ada/gcc-interface/trans.cc @@ -2700,11 +2700,9 @@ Case_Statement_to_gnu (Node_Id gnat_node) never been problematic, but not for case expressions in Ada 2012. */ if (choices_added_p) { - const bool is_case_expression - = (Nkind (Parent (gnat_node)) == N_Expression_With_Actions); - tree group - = build_stmt_group (Statements (gnat_when), !is_case_expression); - bool group_may_fallthru = block_may_fallthru (group); + const bool case_expr_p = From_Conditional_Expression (gnat_node); + tree group = build_stmt_group (Statements (gnat_when), !case_expr_p); + const bool group_may_fallthru = block_may_fallthru (group); add_stmt (group); if (group_may_fallthru) { -- 2.39.5