Mercurial > hg > CbC > CbC_gcc
comparison gcc/ada/par-ch4.adb @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children | 1830386684a0 |
comparison
equal
deleted
inserted
replaced
111:04ced10e8804 | 131:84e7813d76e9 |
---|---|
4 -- -- | 4 -- -- |
5 -- P A R . C H 4 -- | 5 -- P A R . C H 4 -- |
6 -- -- | 6 -- -- |
7 -- B o d y -- | 7 -- B o d y -- |
8 -- -- | 8 -- -- |
9 -- Copyright (C) 1992-2017, Free Software Foundation, Inc. -- | 9 -- Copyright (C) 1992-2018, Free Software Foundation, Inc. -- |
10 -- -- | 10 -- -- |
11 -- GNAT is free software; you can redistribute it and/or modify it under -- | 11 -- GNAT is free software; you can redistribute it and/or modify it under -- |
12 -- terms of the GNU General Public License as published by the Free Soft- -- | 12 -- terms of the GNU General Public License as published by the Free Soft- -- |
13 -- ware Foundation; either version 3, or (at your option) any later ver- -- | 13 -- ware Foundation; either version 3, or (at your option) any later ver- -- |
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- | 14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- |
1429 if Token = Tok_Delta then | 1429 if Token = Tok_Delta then |
1430 Scan; -- past DELTA | 1430 Scan; -- past DELTA |
1431 Aggregate_Node := New_Node (N_Delta_Aggregate, Lparen_Sloc); | 1431 Aggregate_Node := New_Node (N_Delta_Aggregate, Lparen_Sloc); |
1432 Set_Expression (Aggregate_Node, Expr_Node); | 1432 Set_Expression (Aggregate_Node, Expr_Node); |
1433 Expr_Node := Empty; | 1433 Expr_Node := Empty; |
1434 | |
1434 goto Aggregate; | 1435 goto Aggregate; |
1435 | 1436 |
1436 else | 1437 else |
1437 Aggregate_Node := New_Node (N_Extension_Aggregate, Lparen_Sloc); | 1438 Aggregate_Node := New_Node (N_Extension_Aggregate, Lparen_Sloc); |
1438 Set_Ancestor_Part (Aggregate_Node, Expr_Node); | 1439 Set_Ancestor_Part (Aggregate_Node, Expr_Node); |
1663 | 1664 |
1664 function P_Record_Or_Array_Component_Association return Node_Id is | 1665 function P_Record_Or_Array_Component_Association return Node_Id is |
1665 Assoc_Node : Node_Id; | 1666 Assoc_Node : Node_Id; |
1666 | 1667 |
1667 begin | 1668 begin |
1669 -- A loop indicates an iterated_component_association | |
1670 | |
1668 if Token = Tok_For then | 1671 if Token = Tok_For then |
1669 return P_Iterated_Component_Association; | 1672 return P_Iterated_Component_Association; |
1670 end if; | 1673 end if; |
1671 | 1674 |
1672 Assoc_Node := New_Node (N_Component_Association, Token_Ptr); | 1675 Assoc_Node := New_Node (N_Component_Association, Token_Ptr); |
3306 -- for DEFINING_IDENTIFIER in DISCRETE_CHOICE_LIST => EXPRESSION | 3309 -- for DEFINING_IDENTIFIER in DISCRETE_CHOICE_LIST => EXPRESSION |
3307 | 3310 |
3308 function P_Iterated_Component_Association return Node_Id is | 3311 function P_Iterated_Component_Association return Node_Id is |
3309 Assoc_Node : Node_Id; | 3312 Assoc_Node : Node_Id; |
3310 | 3313 |
3314 -- Start of processing for P_Iterated_Component_Association | |
3315 | |
3311 begin | 3316 begin |
3312 Scan; -- past FOR | 3317 Scan; -- past FOR |
3313 Assoc_Node := | 3318 Assoc_Node := |
3314 New_Node (N_Iterated_Component_Association, Prev_Token_Ptr); | 3319 New_Node (N_Iterated_Component_Association, Prev_Token_Ptr); |
3320 | |
3315 Set_Defining_Identifier (Assoc_Node, P_Defining_Identifier); | 3321 Set_Defining_Identifier (Assoc_Node, P_Defining_Identifier); |
3316 T_In; | 3322 T_In; |
3317 Set_Discrete_Choices (Assoc_Node, P_Discrete_Choice_List); | 3323 Set_Discrete_Choices (Assoc_Node, P_Discrete_Choice_List); |
3318 TF_Arrow; | 3324 TF_Arrow; |
3319 Set_Expression (Assoc_Node, P_Expression); | 3325 Set_Expression (Assoc_Node, P_Expression); |