aboutsummaryrefslogtreecommitdiffstats
path: root/src/grt
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2020-08-04 18:50:08 +0200
committerTristan Gingold <tgingold@free.fr>2020-08-04 18:50:08 +0200
commit75879f13fc03c1c8b3f78f1c415286ab84910e39 (patch)
tree93bca4d1bcdc5dede4ce5d610cce6a95c2aa5338 /src/grt
parentb623f87a6143ea71277969d79de7bd6a92443b93 (diff)
downloadghdl-75879f13fc03c1c8b3f78f1c415286ab84910e39.tar.gz
ghdl-75879f13fc03c1c8b3f78f1c415286ab84910e39.tar.bz2
ghdl-75879f13fc03c1c8b3f78f1c415286ab84910e39.zip
grt-disp_signals: fix handling of unbounded aggregates.
For #1420
Diffstat (limited to 'src/grt')
-rw-r--r--src/grt/grt-disp_rti.adb2
-rw-r--r--src/grt/grt-disp_signals.adb12
-rw-r--r--src/grt/grt-rtis_utils.adb2
3 files changed, 6 insertions, 10 deletions
diff --git a/src/grt/grt-disp_rti.adb b/src/grt/grt-disp_rti.adb
index 38f4d34f7..cd2400b78 100644
--- a/src/grt/grt-disp_rti.adb
+++ b/src/grt/grt-disp_rti.adb
@@ -761,7 +761,7 @@ package body Grt.Disp_Rti is
if Sdef.Name /= null then
Disp_Name (Sdef.Name);
else
- Put ("??");
+ Put ("?sub-arr?");
end if;
end;
when Ghdl_Rtik_Type_Protected =>
diff --git a/src/grt/grt-disp_signals.adb b/src/grt/grt-disp_signals.adb
index 78b065432..b4a83b896 100644
--- a/src/grt/grt-disp_signals.adb
+++ b/src/grt/grt-disp_signals.adb
@@ -297,8 +297,7 @@ package body Grt.Disp_Signals is
procedure Disp_Scalar_Signal (Val_Addr : Address;
Val_Name : Vstring;
Val_Type : Ghdl_Rti_Access;
- Parent : Rti_Object)
- is
+ Parent : Rti_Object) is
begin
Disp_Signal_Name (stdout, Parent.Ctxt,
To_Ghdl_Rtin_Object_Acc (Parent.Obj));
@@ -482,8 +481,7 @@ package body Grt.Disp_Signals is
Grt.Stdio.fflush (stdout);
end Disp_Signals_Table;
- procedure Disp_A_Signal (Sig : Ghdl_Signal_Ptr)
- is
+ procedure Disp_A_Signal (Sig : Ghdl_Signal_Ptr) is
begin
Put_Signal_Name (stdout, Sig);
Disp_Simple_Signal (Sig, null, True);
@@ -516,10 +514,8 @@ package body Grt.Disp_Signals is
procedure Foreach_Scalar is new Grt.Rtis_Utils.Foreach_Scalar
(Param_Type => Boolean, Process => Process_Scalar);
- function Process_Block (Ctxt : Rti_Context;
- Obj : Ghdl_Rti_Access)
- return Traverse_Result
- is
+ function Process_Block (Ctxt : Rti_Context; Obj : Ghdl_Rti_Access)
+ return Traverse_Result is
begin
case Obj.Kind is
when Ghdl_Rtik_Signal
diff --git a/src/grt/grt-rtis_utils.adb b/src/grt/grt-rtis_utils.adb
index ad9d33563..60266c0f5 100644
--- a/src/grt/grt-rtis_utils.adb
+++ b/src/grt/grt-rtis_utils.adb
@@ -367,7 +367,7 @@ package body Grt.Rtis_Utils is
Pos_To_Vstring (Name, Base_Type, Rng, I - 1);
if Index = Last_Index then
-- FIXME: not always needed.
- Bounds := Array_Layout_To_Bounds (Cur_Bounds);
+ Bounds := Array_Layout_To_Element (Cur_Bounds, El_Rti);
Append (Name, ')');
Handle_Any (El_Rti);
else