-- Iir to ortho translator. -- Copyright (C) 2002 - 2014 Tristan Gingold -- -- GHDL is free software; you can redistribute it and/or modify it under -- the terms of the GNU General Public License as published by the Free -- Software Foundation; either version 2, or (at your option) any later -- version. -- -- GHDL is distributed in the hope that it will be useful, but WITHOUT ANY -- WARRANTY; without even the implied warranty of MERCHANTABILITY or -- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- for more details. -- -- You should have received a copy of the GNU General Public License -- along with GCC; see the file COPYING. If not, write to the Free -- Software Foundation, 59 Temple Place - Suite 330, Boston, MA -- 02111-1307, USA. package Trans.Chap2 is -- Subprogram specification being currently translated. This is used -- for the return statement. Current_Subprogram : Iir := Null_Iir; procedure Translate_Subprogram_Interfaces (Spec : Iir); procedure Elab_Subprogram_Interfaces (Spec : Iir); procedure Translate_Subprogram_Declaration (Spec : Iir); procedure Translate_Subprogram_Body (Subprg : Iir); -- Set the identifier prefix with the subprogram identifier and -- overload number if any. procedure Push_Subprg_Identifier (Spec : Iir; Mark : out Id_Mark_Type); procedure Translate_Package_Declaration (Decl : Iir_Package_Declaration); procedure Translate_Package_Body (Decl : Iir_Package_Body); procedure Translate_Package_Instantiation_Declaration (Inst : Iir); procedure Elab_Package_Body (Spec : Iir_Package_Declaration; Bod : Iir); -- Add info for an interface_package_declaration or a -- package_instantiation_declaration procedure Instantiate_Info_Package (Inst : Iir); -- Elaborate packages that DESIGN_UNIT depends on (except std.standard). procedure Elab_Dependence (Design_Unit: Iir_Design_Unit); -- Declare an incomplete record type DECL_TYPE and access PTR_TYPE to -- it. The names are respectively INSTTYPE and INSTPTR. procedure Declare_Inst_Type_And_Ptr (Scope : Var_Scope_Acc; Ptr_Type : out O_Tnode); end Trans.Chap2;