exp_dbug.adb (Get_Encoded_Name): Fixed bug that caused biaised types to be encoded as...
2005-09-01 Nicolas Setton <setton@adacore.com> * exp_dbug.adb (Get_Encoded_Name): Fixed bug that caused biaised types to be encoded as typ___XBLU_lowerbound__upperbound instead of typ___XB_lowerbound__upperbound. From-SVN: r103862
This commit is contained in:
parent
2f1b20a916
commit
04efc8a196
1 changed files with 19 additions and 13 deletions
|
@ -562,12 +562,6 @@ package body Exp_Dbug is
|
|||
elsif Is_Discrete_Type (E)
|
||||
and then not Bounds_Match_Size (E)
|
||||
then
|
||||
if Has_Biased_Representation (E) then
|
||||
Get_External_Name_With_Suffix (E, "XB");
|
||||
else
|
||||
Get_External_Name_With_Suffix (E, "XD");
|
||||
end if;
|
||||
|
||||
declare
|
||||
Lo : constant Node_Id := Type_Low_Bound (E);
|
||||
Hi : constant Node_Id := Type_High_Bound (E);
|
||||
|
@ -588,16 +582,28 @@ package body Exp_Dbug is
|
|||
Lo_Encode : constant Boolean := Lo_Con or Lo_Discr;
|
||||
Hi_Encode : constant Boolean := Hi_Con or Hi_Discr;
|
||||
|
||||
Biased : constant Boolean := Has_Biased_Representation (E);
|
||||
|
||||
begin
|
||||
if Biased then
|
||||
Get_External_Name_With_Suffix (E, "XB");
|
||||
else
|
||||
Get_External_Name_With_Suffix (E, "XD");
|
||||
end if;
|
||||
|
||||
if Lo_Encode or Hi_Encode then
|
||||
if Lo_Encode then
|
||||
if Hi_Encode then
|
||||
Add_Str_To_Name_Buffer ("LU_");
|
||||
else
|
||||
Add_Str_To_Name_Buffer ("L_");
|
||||
end if;
|
||||
if Biased then
|
||||
Add_Str_To_Name_Buffer ("_");
|
||||
else
|
||||
Add_Str_To_Name_Buffer ("U_");
|
||||
if Lo_Encode then
|
||||
if Hi_Encode then
|
||||
Add_Str_To_Name_Buffer ("LU_");
|
||||
else
|
||||
Add_Str_To_Name_Buffer ("L_");
|
||||
end if;
|
||||
else
|
||||
Add_Str_To_Name_Buffer ("U_");
|
||||
end if;
|
||||
end if;
|
||||
|
||||
if Lo_Con then
|
||||
|
|
Loading…
Add table
Reference in a new issue