-- the floating-point representation to be used.
-- Formal_Proof_On (Flag254)
--- Present in subprogram entities. Set for subprograms whose body
--- contains an Annotate pragma which forces formal proof on this body.
+-- Present in subprogram and generic subprogram entities. Set on for
+-- subprograms whose body contains an Annotate pragma which forces formal
+-- proof on this body.
-- Freeze_Node (Node7)
-- Present in all entities. If there is an associated freeze node for
-- Delay_Cleanups (Flag114)
-- Delay_Subprogram_Descriptors (Flag50)
-- Discard_Names (Flag88)
+ -- Formal_Proof_On (Flag254)
-- Has_Completion (Flag26)
-- Has_Controlling_Result (Flag98)
-- Has_Invariants (Flag232)
-- Is_Primitive (Flag218)
-- Is_Thunk (Flag225)
-- Default_Expressions_Processed (Flag108)
+ -- Formal_Proof_On (Flag254)
-- Aren't there more flags and fields? seems like this list should be
-- more similar to the E_Function list, which is much longer ???
-- Delay_Cleanups (Flag114)
-- Delay_Subprogram_Descriptors (Flag50)
-- Discard_Names (Flag88)
+ -- Formal_Proof_On (Flag254)
-- Has_Completion (Flag26)
-- Has_Invariants (Flag232)
-- Has_Master_Entity (Flag21)
if Chars (Prim) = Name_Op_Eq
and then Etype (First_Formal (Prim)) =
- Etype (Next_Formal (First_Formal (Prim)))
+ Etype (Next_Formal (First_Formal (Prim)))
and then Etype (Prim) = Standard_Boolean
then
if Is_Abstract_Subprogram (Prim) then
else
return
Make_Function_Call (Loc,
- Name => New_Reference_To (Prim, Loc),
+ Name => New_Reference_To (Prim, Loc),
Parameter_Associations => New_List (Lhs, Rhs));
end if;
end if;
if Is_Elementary_Type (Component_Type (Full_Type))
and then not Is_Floating_Point_Type (Component_Type (Full_Type))
then
- return Make_Op_Eq (Loc, Left_Opnd => Lhs, Right_Opnd => Rhs);
+ return Make_Op_Eq (Loc, Left_Opnd => Lhs, Right_Opnd => Rhs);
-- For composite component types, and floating-point types, use the
-- expansion. This deals with tagged component types (where we use
begin
return
Make_Function_Call (Loc,
- Name => New_Reference_To (Eq_Op, Loc),
- Parameter_Associations =>
- New_List (OK_Convert_To (T, Lhs),
- OK_Convert_To (T, Rhs)));
+ Name => New_Reference_To (Eq_Op, Loc),
+ Parameter_Associations => New_List (
+ OK_Convert_To (T, Lhs),
+ OK_Convert_To (T, Rhs)));
end;
else
then
Lhs_Discr_Val :=
Make_Selected_Component (Loc,
- Prefix => Prefix (Lhs),
+ Prefix => Prefix (Lhs),
Selector_Name =>
- New_Copy (
- Get_Discriminant_Value (
- First_Discriminant (Lhs_Type),
- Lhs_Type,
- Stored_Constraint (Lhs_Type))));
+ New_Copy
+ (Get_Discriminant_Value
+ (First_Discriminant (Lhs_Type),
+ Lhs_Type,
+ Stored_Constraint (Lhs_Type))));
else
- Lhs_Discr_Val := New_Copy (
- Get_Discriminant_Value (
- First_Discriminant (Lhs_Type),
- Lhs_Type,
- Stored_Constraint (Lhs_Type)));
+ Lhs_Discr_Val :=
+ New_Copy
+ (Get_Discriminant_Value
+ (First_Discriminant (Lhs_Type),
+ Lhs_Type,
+ Stored_Constraint (Lhs_Type)));
end if;
else
if Is_Constrained (Rhs_Type) then
if Nkind (Rhs) = N_Selected_Component
- and then Has_Per_Object_Constraint (
- Entity (Selector_Name (Rhs)))
+ and then Has_Per_Object_Constraint
+ (Entity (Selector_Name (Rhs)))
then
Rhs_Discr_Val :=
Make_Selected_Component (Loc,
- Prefix => Prefix (Rhs),
+ Prefix => Prefix (Rhs),
Selector_Name =>
- New_Copy (
- Get_Discriminant_Value (
- First_Discriminant (Rhs_Type),
- Rhs_Type,
- Stored_Constraint (Rhs_Type))));
+ New_Copy
+ (Get_Discriminant_Value
+ (First_Discriminant (Rhs_Type),
+ Rhs_Type,
+ Stored_Constraint (Rhs_Type))));
else
- Rhs_Discr_Val := New_Copy (
- Get_Discriminant_Value (
- First_Discriminant (Rhs_Type),
- Rhs_Type,
- Stored_Constraint (Rhs_Type)));
+ Rhs_Discr_Val :=
+ New_Copy
+ (Get_Discriminant_Value
+ (First_Discriminant (Rhs_Type),
+ Rhs_Type,
+ Stored_Constraint (Rhs_Type)));
end if;
else
if J = N and then Result_May_Be_Null then
Last_Opnd_High_Bound :=
Convert_To (Ityp,
- Make_Integer_Literal (Loc,
- Intval => Expr_Value (Hi)));
+ Make_Integer_Literal (Loc, Expr_Value (Hi)));
end if;
-- Exclude null length case unless last operand
Is_Fixed_Length (NN) := True;
Fixed_Length (NN) := Len;
- Opnd_Low_Bound (NN) := To_Ityp (
- Make_Integer_Literal (Loc,
- Intval => Expr_Value (Lo)));
-
+ Opnd_Low_Bound (NN) :=
+ To_Ityp
+ (Make_Integer_Literal (Loc, Expr_Value (Lo)));
Set := True;
end;
end if;
Make_Object_Declaration (Loc,
Defining_Identifier => Var_Length (NN),
Constant_Present => True,
-
- Object_Definition =>
- New_Occurrence_Of (Artyp, Loc),
-
+ Object_Definition => New_Occurrence_Of (Artyp, Loc),
Expression =>
Make_Attribute_Reference (Loc,
Prefix =>
if NN = 1 then
if Is_Fixed_Length (1) then
- Aggr_Length (1) :=
- Make_Integer_Literal (Loc,
- Intval => Fixed_Length (1));
+ Aggr_Length (1) := Make_Integer_Literal (Loc, Fixed_Length (1));
else
- Aggr_Length (1) :=
- New_Reference_To (Var_Length (1), Loc);
+ Aggr_Length (1) := New_Reference_To (Var_Length (1), Loc);
end if;
-- If entry is fixed length and only fixed lengths so far, make
Make_Object_Declaration (Loc,
Defining_Identifier => Ent,
Constant_Present => True,
-
- Object_Definition =>
- New_Occurrence_Of (Artyp, Loc),
-
+ Object_Definition => New_Occurrence_Of (Artyp, Loc),
Expression =>
Make_Op_Add (Loc,
Left_Opnd => New_Copy (Aggr_Length (NN - 1)),
Assign :=
Make_Implicit_If_Statement (Cnode,
- Condition =>
+ Condition =>
Make_Op_Ne (Loc,
- Left_Opnd =>
+ Left_Opnd =>
New_Occurrence_Of (Var_Length (J), Loc),
Right_Opnd => Make_Integer_Literal (Loc, 0)),
- Then_Statements =>
- New_List (Assign));
+ Then_Statements => New_List (Assign));
end if;
Insert_Action (Cnode, Assign, Suppress => All_Checks);