[multiple changes]

2009-04-17  Pascal Obry  <obry@adacore.com>

	* initialize.c: Fix test for reallocating the arguments array.

2009-04-17  Geert Bosch  <bosch@adacore.com>

	* exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
	conversion truncate only for decimal fixed point types.

2009-04-17  Jerome Lambourg  <lambourg@adacore.com>

	* g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
	reinitialized.

From-SVN: r146261
This commit is contained in:
Arnaud Charlet 2009-04-17 15:06:08 +02:00
parent 7e67327329
commit df416fb084
4 changed files with 19 additions and 2 deletions

View file

@ -1,3 +1,17 @@
2009-04-17 Pascal Obry <obry@adacore.com>
* initialize.c: Fix test for reallocating the arguments array.
2009-04-17 Geert Bosch <bosch@adacore.com>
* exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
conversion truncate only for decimal fixed point types.
2009-04-17 Jerome Lambourg <lambourg@adacore.com>
* g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
reinitialized.
2009-04-17 Robert Dewar <dewar@adacore.com>
* exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and

View file

@ -1701,13 +1701,15 @@ package body Exp_Fixd is
Set_Result (N, Expr, Rng_Check, Trunc => True);
-- Normal case where multiply is required
-- Rounding is truncating for decimal fixed point types only,
-- see RM 4.6(29).
else
Set_Result (N,
Build_Multiply (N,
Fpt_Value (Expr),
Real_Literal (N, Ureal_1 / Small)),
Rng_Check, Trunc => True);
Rng_Check, Trunc => Is_Decimal_Fixed_Point_Type (Result_Type));
end if;
end Expand_Convert_Float_To_Fixed;

View file

@ -890,6 +890,7 @@ package body GNAT.Command_Line is
Parser.In_Expansion := False;
Parser.Switch_Character := Switch_Char;
Parser.Stop_At_First := Stop_At_First_Non_Switch;
Parser.Section := (others => 1);
-- If we are using sections, we have to preprocess the command line
-- to delimit them. A section can be repeated, so we just give each

View file

@ -82,7 +82,7 @@ append_arg (int *index, LPWSTR value, char ***argv, int *last)
{
int size;
if (*last < *index)
if (*last <= *index)
{
*last += EXPAND_ARGV_RATE;
*argv = (char **) xrealloc (*argv, (*last) * sizeof (char *));