aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/par-ch4.adb
diff options
context:
space:
mode:
authorPiotr Trojanek <trojanek@adacore.com>2020-11-25 12:27:23 +0100
committerPierre-Marie de Rodat <derodat@adacore.com>2020-12-15 06:41:55 -0500
commit320be7e2b4bcf78028c78b0c46f6757ee0597a6f (patch)
tree13d2eab030d5e5011d7dbef0e1a36839b49e3683 /gcc/ada/par-ch4.adb
parent338e513351c03cf66197e8316a69d5459e52f9ed (diff)
downloadgcc-320be7e2b4bcf78028c78b0c46f6757ee0597a6f.zip
gcc-320be7e2b4bcf78028c78b0c46f6757ee0597a6f.tar.gz
gcc-320be7e2b4bcf78028c78b0c46f6757ee0597a6f.tar.bz2
[Ada] Reuse Append_New in parsing aggregates
gcc/ada/ * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Simplify with Append_New.
Diffstat (limited to 'gcc/ada/par-ch4.adb')
-rw-r--r--gcc/ada/par-ch4.adb36
1 files changed, 6 insertions, 30 deletions
diff --git a/gcc/ada/par-ch4.adb b/gcc/ada/par-ch4.adb
index a146902..b4eebfe 100644
--- a/gcc/ada/par-ch4.adb
+++ b/gcc/ada/par-ch4.adb
@@ -1580,11 +1580,7 @@ package body Ch4 is
-- Deal with others association first. This is a named association
if No (Expr_Node) then
- if No (Assoc_List) then
- Assoc_List := New_List;
- end if;
-
- Append (P_Record_Or_Array_Component_Association, Assoc_List);
+ Append_New (P_Record_Or_Array_Component_Association, Assoc_List);
-- Improper use of WITH
@@ -1612,11 +1608,7 @@ package body Ch4 is
elsif Nkind (Expr_Node) in
N_Iterated_Component_Association | N_Iterated_Element_Association
then
- if No (Assoc_List) then
- Assoc_List := New_List (Expr_Node);
- else
- Append_To (Assoc_List, Expr_Node);
- end if;
+ Append_New (Expr_Node, Assoc_List);
elsif Token = Tok_Comma
or else Token = Tok_Right_Paren
@@ -1630,11 +1622,7 @@ package body Ch4 is
& "named association)");
end if;
- if No (Expr_List) then
- Expr_List := New_List;
- end if;
-
- Append (Expr_Node, Expr_List);
+ Append_New (Expr_Node, Expr_List);
-- Check for aggregate followed by left parent, maybe missing comma
@@ -1643,18 +1631,10 @@ package body Ch4 is
then
T_Comma;
- if No (Expr_List) then
- Expr_List := New_List;
- end if;
-
- Append (Expr_Node, Expr_List);
+ Append_New (Expr_Node, Expr_List);
elsif Token = Tok_Right_Bracket then
- if No (Expr_List) then
- Expr_List := New_List;
- end if;
-
- Append (Expr_Node, Expr_List);
+ Append_New (Expr_Node, Expr_List);
exit;
-- Anything else is assumed to be a named association
@@ -1662,11 +1642,7 @@ package body Ch4 is
else
Restore_Scan_State (Scan_State); -- to start of expression
- if No (Assoc_List) then
- Assoc_List := New_List;
- end if;
-
- Append (P_Record_Or_Array_Component_Association, Assoc_List);
+ Append_New (P_Record_Or_Array_Component_Association, Assoc_List);
end if;
exit when not Comma_Present;