diff options
Diffstat (limited to 'gcc/ada/exp_ch5.adb')
-rw-r--r-- | gcc/ada/exp_ch5.adb | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/ada/exp_ch5.adb b/gcc/ada/exp_ch5.adb index 70866a8..0070706 100644 --- a/gcc/ada/exp_ch5.adb +++ b/gcc/ada/exp_ch5.adb @@ -4176,6 +4176,23 @@ package body Exp_Ch5 is Analyze (N); end Expand_Formal_Container_Element_Loop; + ---------------------------------- + -- Expand_N_Goto_When_Statement -- + ---------------------------------- + + procedure Expand_N_Goto_When_Statement (N : Node_Id) is + Loc : constant Source_Ptr := Sloc (N); + begin + Rewrite (N, + Make_If_Statement (Loc, + Condition => Condition (N), + Then_Statements => New_List ( + Make_Goto_Statement (Loc, + Name => Name (N))))); + + Analyze (N); + end Expand_N_Goto_When_Statement; + --------------------------- -- Expand_N_If_Statement -- --------------------------- |