Project

General

Profile

Revision 3340aff0

View differences:

src/backends/VHDL/vhdl_2_mini_vhdl_map.ml
518 518
        let names = arch.name::(arch.entity::[])  in
519 519
        let (ref_ent_ctx,ref_ent) = self#filter_entity (ents_pairs, arch.entity) in
520 520
        let contexts =
521
          arch_ctx @
522
          ref_ent_ctx @
523
          self#declarative_items_uses arch.declarations @
524
          self#declarative_items_uses ref_ent.declaration in
521
          arch_ctx @ (* Architecture context elements *)
522
          ref_ent_ctx @ (* Referenced entity context elements *)
523
          self#declarative_items_uses arch.declarations @ (* Architecture inner context elements *)
524
          self#declarative_items_uses ref_ent.declaration in (* Referenced entity inner context elements *)
525 525
        let declarations = 
526
          self#declarative_items_declarations arch.declarations @
527
          self#declarative_items_declarations ref_ent.declaration in
526
          self#declarative_items_declarations arch.declarations @ (* Architecture inner declarations *)
527
          self#declarative_items_declarations ref_ent.declaration in (* Referenced entity inner declarations *)
528 528
        let definitions =
529
          self#declarative_items_definitions arch.declarations @
530
          self#declarative_items_definitions ref_ent.declaration in
529
          self#declarative_items_definitions arch.declarations @ (* Architecture inner definitions *)
530
          self#declarative_items_definitions ref_ent.declaration in (* Referenced entity inner definitions *)
531 531
        let body = 
532
          arch.body @ 
533
          ref_ent.stmts in
534
        { names; generics=ref_ent.generics; ports=ref_ent.ports; contexts=contexts; declarations=declarations; definitions=definitions; body=body }
532
          arch.body @ (* Architecture concurrent statements *)
533
          ref_ent.stmts in (* Referenced entity concurrent statement *)
534
        let generics = ref_ent.generics in (* Referenced entity generics *)
535
        let ports = ref_end.ports in (* Referenced entity ports *)
536
        { names; generics=generics; ports=ports; contexts=contexts; declarations=declarations; definitions=definitions; body=body }
535 537

  
536 538
    method declarative_items_declarations : vhdl_declarative_item_t list -> vhdl_declaration_t list =
537 539
      fun x ->

Also available in: Unified diff