diff options
author | Tristan Gingold <tgingold@free.fr> | 2020-07-29 07:48:31 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2020-07-29 18:27:58 +0200 |
commit | bf5cc4bbe3e7faa242b316b1d4f3940e6119e61d (patch) | |
tree | bf983ef5d88f04aa92283f1a4854abd2ac0c356f /src/vhdl/translate/trans-chap3.adb | |
parent | 7fb5d5bb3939502b871ce537a2763efb9fda6926 (diff) | |
download | ghdl-bf5cc4bbe3e7faa242b316b1d4f3940e6119e61d.tar.gz ghdl-bf5cc4bbe3e7faa242b316b1d4f3940e6119e61d.tar.bz2 ghdl-bf5cc4bbe3e7faa242b316b1d4f3940e6119e61d.zip |
translate: add a function to get allocation kind of layout var.
Fix #1415
Diffstat (limited to 'src/vhdl/translate/trans-chap3.adb')
-rw-r--r-- | src/vhdl/translate/trans-chap3.adb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/vhdl/translate/trans-chap3.adb b/src/vhdl/translate/trans-chap3.adb index 861ba894a..8f383a099 100644 --- a/src/vhdl/translate/trans-chap3.adb +++ b/src/vhdl/translate/trans-chap3.adb @@ -68,6 +68,16 @@ package body Trans.Chap3 is Info.B.Layout_Ptr_Type); end Get_Composite_Type_Layout; + function Get_Composite_Type_Layout_Alloc (Info : Type_Info_Acc) + return Allocation_Kind is + begin + if Info.S.Subtype_Owner /= null then + return Get_Composite_Type_Layout_Alloc (Info.S.Subtype_Owner); + else + return Get_Alloc_Kind_For_Var (Info.S.Composite_Layout); + end if; + end Get_Composite_Type_Layout_Alloc; + function Layout_To_Bounds (B : Mnode) return Mnode is Info : constant Type_Info_Acc := Get_Type_Info (B); |