diff options
author | Tristan Gingold <tgingold@free.fr> | 2018-01-26 06:44:33 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2018-01-26 06:44:33 +0100 |
commit | bca6f08e125a734f35d60372031aeb184de1148f (patch) | |
tree | bd82ea6fab63b846b3f7468ee92d4f9680193ca8 /src/vhdl/translate/trans.ads | |
parent | e35d06c2fae8dc0fb90041a5966be3eafd48ce6f (diff) | |
download | ghdl-bca6f08e125a734f35d60372031aeb184de1148f.tar.gz ghdl-bca6f08e125a734f35d60372031aeb184de1148f.tar.bz2 ghdl-bca6f08e125a734f35d60372031aeb184de1148f.zip |
translation: use a simple mark&sweep to free infos.
Diffstat (limited to 'src/vhdl/translate/trans.ads')
-rw-r--r-- | src/vhdl/translate/trans.ads | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/vhdl/translate/trans.ads b/src/vhdl/translate/trans.ads index 29dd593dc..8b6888764 100644 --- a/src/vhdl/translate/trans.ads +++ b/src/vhdl/translate/trans.ads @@ -1168,13 +1168,16 @@ package Trans is -- Additional info for complex types. type Complex_Type_Info is record + -- For a simple memory management: use mark and sweep to free all infos. + Mark : Boolean := False; + + Builder_Need_Func : Boolean := False; + -- Variable containing the size of the type. -- This is defined only for types whose size is only known at -- running time (and not a compile-time). Size_Var : Var_Type := Null_Var; - Builder_Need_Func : Boolean := False; - -- Parameters for type builders. -- NOTE: this is only set for types (and *not* for subtypes). Builder_Instance : Subprgs.Subprg_Instance_Type; @@ -1219,6 +1222,9 @@ package Trans is type Ortho_Info_Acc is access Ortho_Info_Type; type Ortho_Info_Type (Kind : Ortho_Info_Kind) is record + -- For a simple memory management: use mark and sweep to free all infos. + Mark : Boolean := False; + case Kind is when Kind_Type => -- Mode of the type. |