comp.lang.ada
 help / color / mirror / Atom feed
From: hreba <hreba@terra.com.br>
Subject: Re: Generic Library Units?
Date: Tue, 14 Oct 2014 21:29:16 -0300
Date: 2014-10-14T21:29:16-03:00	[thread overview]
Message-ID: <ca5teuFqcvkU1@mid.individual.net> (raw)
In-Reply-To: <j461ib3fvao8.djsu7d5i2elo$.dlg@40tude.net>

On 10/13/2014 04:45 AM, Dmitry A. Kazakov wrote:
>
> with Gui;
> with GuiGtk.SimpleGad;
> with Gui.SimpleGad;
> package MainAux is
>      package Toolkit is new GuiGtk;
>      package SimpleGad is new Toolkit.SimpleGad;
>      package GuiTK is new Gui (Toolkit, SimpleGad);
> end MainAux;
>
Ok, did that too, and the error message disappeared.

Now in the package body of Gui.SimpleGad I have

    function Get (gad: BoolGadget) return boolean is
    begin
       return TKSG.GetBool (gad.widget.all);
    end Get;

and get the error message

gui-simplegad.adb:78:39: expected type "GuiGtk.GadWidgets" defined at 
guigtk.ads:38
gui-simplegad.adb:78:39: found type "TK.GadWidgets" defined at 
guigtk.ads:38, instance at gui.ads:10

So the compiler isn't aware that GuiGtk is the actual value to the 
formal package TK. How do I tell him?

( The Gui package header is

    generic
       with package TK is new GuiGtk(<>);	-- this is gui.ads:10
       with package TKSG is new GuiGtk.SimpleGad;
    package Gui is
    ...
)

-- 
Frank Hrebabetzky		+55 / 48 / 3235 1106
Florianopolis, Brazil

  reply	other threads:[~2014-10-15  0:29 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-12 14:38 Generic Library Units? hreba
2014-10-12 15:47 ` Dmitry A. Kazakov
2014-10-12 22:39   ` hreba
2014-10-13  7:45     ` Dmitry A. Kazakov
2014-10-15  0:29       ` hreba [this message]
2014-10-15  7:21         ` Dmitry A. Kazakov
2014-10-16  1:21           ` hreba
2014-10-16  7:04             ` Dmitry A. Kazakov
2014-10-16  7:54             ` Simon Wright
2014-10-17 12:46               ` hreba
2014-10-16 10:36           ` AdaMagica
2014-10-17 12:57             ` hreba
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox