This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Your VLA change and Ada
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: dnovillo at redhat dot com
- Cc: gcc at gcc dot gnu dot org
- Date: Wed, 11 Aug 04 15:11:44 EDT
- Subject: 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;