comp.lang.ada
 help / color / mirror / Atom feed
From: Ludovic Brenta <ludovic@ludovic-brenta.org>
Subject: Re: xe_front.adb:547 - SYSTEM.ASSERTIONS.ASSERT_FAILURE
Date: Wed, 1 Sep 2010 00:15:49 -0700 (PDT)
Date: 2010-09-01T00:15:49-07:00	[thread overview]
Message-ID: <15be2e3a-00df-4f44-8bc8-dea7a2f18896@l6g2000yqb.googlegroups.com> (raw)
In-Reply-To: 4c7c294b$1@news.broadpark.no

Frank wrote on comp.lang.ada:
> Hi!
>
> I posted this in PolyORB mailing list, but it is very quiet there, so I try here also.
>
> I have installed GNAT:
> GNATMAKE GPL 2010 (20100603)
> GNATDIST GPL 2010-20100603 (rev. 160601)
> on Windows 7, using Cygwin (latest version)
> With DSA to enable Distributed Annex E (and debug enabled)
>
> After some tweaking (the normal tweaking) the configure and make all install seems to execute normal.
> I get the executables po_gnatdist, po_cos_naming and so on.
>
> Now I try my old project that compiled on previous version of PolyORB / Windows XP / Cygwin (older revision I think but that PC is for repairs at the moment)
>
> The executable PO_GNATDIST failes very early in the process:
>
> ------
> C:\Ada\Seabattle>po_gnatdist seabattle.cfg
> Execution terminated by unhandled exception
> Exception name: SYSTEM.ASSERTIONS.ASSERT_FAILURE
> Message: xe_front.adb:547
> Call stack traceback locations:
> 0x456a69 0x4184e2 0x451950 0x402db1 0x4017da 0x4010b4 0x401146 0x76cb3675 0x7772
> 9d40 0x77729d13
> -----
>
> I have tried to comment lines from the configuration file without managing to close in to what element is creating this problem.
>
> This is the configuration file:
>
> ---------------------------------------------------------------------------
> configuration seabattle is
>
>    pragma Version (False);
>
>    pragma Starter (None);
>
> --   pragma Boot_Location ("tcp", "localhost:5557");
>
>    --
>    seabattle_client : Partition := (Client); --, MyClient);
>    procedure main_client;
>    for seabattle_client'Main use main_client;
>
>    -- This partition is the authentic server partition
>    --
>    seabattle_server : Partition := (Server.Remote, Server.Remote.ActionBroker);
>    procedure main_server is in seabattle_server;
>    for seabattle_server'Task_Pool use (1, 1, 1);
>    for seabattle_client'Task_Pool use (1, 1, 1);
>
> --   for seabattle_client'Host use "localhost";
>    for seabattle_server'Host use "localhost";
>
>    for seabattle_server'Termination use Local_Termination;
>    for seabattle_client'Termination use Local_Termination;
> end seabattle;
> ---------------------------------------------------------------------------
>
> Any proposals to what is causing this?

A cursory look at xe_front.adb reveals a single pragma Assert which
causes the exception:

procedure Frontend is
      Node : Node_Id;
      HID  : Host_Id;

   begin
      First_Configuration_Declaration (Configuration_Node, Node);
      while Node /= Null_Node loop
         if Is_Variable (Node) then
            Build_New_Variable (Variable_Id (Node));

         elsif Is_Configuration (Node) and then Comes_From_Source
(Node) then
            pragma Assert (Configuration = No_Name);
            Configuration := Get_Node_Name (Node);
            Set_Application_Names (Configuration);

         elsif Is_Type (Node) then
            Set_Type_Attribute (Type_Id (Node));

         elsif Is_Statement (Node) then
            Set_Pragma_Statement (Get_Subprogram_Call (Statement_Id
(Node)));

         end if;
         Next_Configuration_Declaration (Node);
      end loop;

So it would seem that your configuration file contains more than one
configuration.

--
Ludovic Brenta.



      reply	other threads:[~2010-09-01  7:15 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-30 21:57 xe_front.adb:547 - SYSTEM.ASSERTIONS.ASSERT_FAILURE Frank
2010-09-01  7:15 ` Ludovic Brenta [this message]
replies disabled

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