diff options
-rw-r--r-- | gcc/ada/ChangeLog | 13 | ||||
-rw-r--r-- | gcc/ada/back_end.adb | 2 | ||||
-rw-r--r-- | gcc/ada/g-socthi-mingw.adb | 4 | ||||
-rw-r--r-- | gcc/ada/sem_res.adb | 15 |
4 files changed, 27 insertions, 7 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 9a028fd..0cb6c9c 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,16 @@ +2010-06-17 Eric Botcazou <ebotcazou@adacore.com> + + * g-socthi-mingw.adb (C_Recvmsg): Add 'use type' clause for C.size_t; + (C_Sendmsg): Likewise. + +2010-06-17 Thomas Quinot <quinot@adacore.com> + + * sem_res.adb: Update comments. + +2010-06-17 Vincent Celier <celier@adacore.com> + + * back_end.adb (Scan_Compiler_Arguments): Process last argument + 2010-06-17 Robert Dewar <dewar@adacore.com> * exp_ch3.adb, exp_ch6.adb, exp_smem.adb, exp_util.adb: Use Ekind_In. diff --git a/gcc/ada/back_end.adb b/gcc/ada/back_end.adb index 02202b8..ee93f14 100644 --- a/gcc/ada/back_end.adb +++ b/gcc/ada/back_end.adb @@ -252,7 +252,7 @@ package body Back_End is -- Loop through command line arguments, storing them for later access Next_Arg := 1; - while Next_Arg < Args'Last loop + while Next_Arg <= Args'Last loop Look_At_Arg : declare Argv : constant String := Args (Next_Arg).all; diff --git a/gcc/ada/g-socthi-mingw.adb b/gcc/ada/g-socthi-mingw.adb index ba4a3de..23bab2c 100644 --- a/gcc/ada/g-socthi-mingw.adb +++ b/gcc/ada/g-socthi-mingw.adb @@ -271,6 +271,8 @@ package body GNAT.Sockets.Thin is Msg : System.Address; Flags : C.int) return System.CRTL.ssize_t is + use type C.size_t; + Res : C.int; Count : C.int := 0; @@ -408,6 +410,8 @@ package body GNAT.Sockets.Thin is Msg : System.Address; Flags : C.int) return System.CRTL.ssize_t is + use type C.size_t; + Res : C.int; Count : C.int := 0; diff --git a/gcc/ada/sem_res.adb b/gcc/ada/sem_res.adb index ef5e3ad..6f1a132 100644 --- a/gcc/ada/sem_res.adb +++ b/gcc/ada/sem_res.adb @@ -8979,16 +8979,19 @@ package body Sem_Res is Set_Etype (N, Slice_Subtype); - -- For packed slice subtypes, freeze immediately. Otherwise insert an - -- itype reference in the slice's actions so that the itype is frozen - -- at the proper place in the tree (i.e. at the point where actions - -- for the slice are analyzed). Note that this is different from - -- freezing the itype immediately, which might be premature (e.g. if - -- the slice is within a transient scope). + -- For packed slice subtypes, freeze immediately (except in the + -- case of being in a "spec expression" where we never freeze + -- when we first see the expression). if Is_Packed (Slice_Subtype) and not In_Spec_Expression then Freeze_Itype (Slice_Subtype, N); + -- For all other cases insert an itype reference in the slice's actions + -- so that the itype is frozen at the proper place in the tree (i.e. at + -- the point where actions for the slice are analyzed). Note that this + -- is different from freezing the itype immediately, which might be + -- premature (e.g. if the slice is within a transient scope). + else Ensure_Defined (Typ => Slice_Subtype, N => N); end if; |