+2014-07-31 Robert Dewar <dewar@adacore.com>
+
+ * inline.adb, gnat1drv.adb, exp_ch6.adb, s-fileio.adb: Minor
+ reformatting.
+
2014-07-31 Eric Botcazou <ebotcazou@adacore.com>
* gcc-interface/utils2.c ((build_binary_op): Don't set TREE_THIS_NOTRAP
-- Back end inlining: let the back end handle it
- if Back_End_Inlining
- and then Is_Inlined (Subp)
- then
+ if Back_End_Inlining and then Is_Inlined (Subp) then
Add_Inlined_Body (Subp);
Register_Backend_Call (Call_Node);
end if;
end if;
- -- No backend inlining for AAMP, VM. Turn off inlining under GNATprove
- -- mode which would confuse formal verification output. Turn off backend
- -- inlining if the frontend inlining is enabled.
+ -- Set back end inlining indication
Back_End_Inlining :=
+
+ -- No back end inlining available for VM targets
+
VM_Target = No_VM
- and then not AAMP_On_Target
- and then not GNATprove_Mode
- and then not Front_End_Inlining
- and then Debug_Flag_Dot_Z;
+
+ -- No back end inlining available on AAMP
+
+ and then not AAMP_On_Target
+
+ -- No back end inlining in GNATprove mode, since it just confuses
+ -- the formal verification process.
+
+ and then not GNATprove_Mode
+
+ -- No back end inlining if front end inlining explicitly enabled?
+
+ and then not Front_End_Inlining
+
+ -- For now, we only enable back end inlining if debug flag .z is set
+
+ and then Debug_Flag_Dot_Z;
-- Output warning if -gnateE specified and cannot be supported
-- If the backend takes care of inlining the call then we must
-- ensure that it has available the body of the subprogram.
- elsif Level = Inline_Call
- and then Back_End_Inlining
- then
+ elsif Level = Inline_Call and then Back_End_Inlining then
Inlined_Bodies.Increment_Last;
Inlined_Bodies.Table (Inlined_Bodies.Last) := Pack;
end if;
Encoding : CRTL.Filename_Encoding;
-- Filename encoding specified into the form parameter
- ------------------
- -- Record_AFCB --
- ------------------
+ -----------------
+ -- Record_AFCB --
+ -----------------
procedure Record_AFCB is
begin
File_Ptr := AFCB_Allocate (Dummy_FCB);
+ -- Note that we cannot use an aggregate here as File_Ptr is a
+ -- class-wide access to a limited type (Root_Stream_Type).
+
File_Ptr.Is_Regular_File :=
(is_regular_file (fileno (Stream)) /= 0);
File_Ptr.Is_System_File := False;
Append_Set (File_Ptr);
end Record_AFCB;
+ -- Start of processing for Open
+
begin
if File_Ptr /= null then
raise Status_Error with "file already open";