This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Your VLA change and Ada


    > Then my feeling is to remove your TMT change from my tree and see what,
    > if anything, is still broken so we can give Diego a test case.

    Yes, please.

OK, it's still the same place in lib.adb for me.  This is compiling
Increment_Serial_Number.  In .t24.redphi1, we have:

<L3>:;
  lib__units__table.695_5 = lib__units__table.693_2;
  lib__current_sem_unit.696_6 = lib__current_sem_unit.694_4;
  T.697_8 = (<unnamed type>) lib__current_sem_unit.694_4;
  tsn_9 = &(*lib__units__table.693_2)[T.697_8].serial_number;
  #   VUSE <TMT.1287_16>;
  T.698_10 = *tsn_9;
  T.699_11 = (types__TintB) T.698_10;
  T.700_12 = T.699_11 + 1;
  T.701_13 = (types__nat___XDLU_0__2147483647) T.700_12;
  #   TMT.1287_17 = V_MAY_DEF <TMT.1287_16>;
  *tsn_9 = T.701_13;
  T.702_14 = T.701_13;
  return T.701_13;

and in .t25.dce2 we have:

<L3>:;
  T.697_8 = (<unnamed type>) lib__current_sem_unit.694_4;
  tsn_9 = &(*lib__units__table.693_2)[T.697_8].serial_number;
  #   VUSE <TMT.1287_16>;
  T.698_10 = *tsn_9;
  T.699_11 = (types__TintB) T.698_10;
  T.700_12 = T.699_11 + 1;
  T.701_13 = (types__nat___XDLU_0__2147483647) T.700_12;
  return T.701_13;

The store to *tsn_9 was deleted incorrectly.

For reference, the corresponding source code is:

   function Increment_Serial_Number return Nat is
      TSN : Int renames Units.Table (Current_Sem_Unit).Serial_Number;
   begin
      TSN := TSN + 1;
      return TSN;
   end Increment_Serial_Number;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]