public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ada/29623]  New: Assert_Failure sinfo.adb:649 in task allocator
@ 2006-10-27 20:49 ludovic at ludovic-brenta dot org
  2006-10-29 21:03 ` [Bug ada/29623] " pinskia at gcc dot gnu dot org
  2007-05-02 13:02 ` charlet at gcc dot gnu dot org
  0 siblings, 2 replies; 3+ messages in thread
From: ludovic at ludovic-brenta dot org @ 2006-10-27 20:49 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4561 bytes --]

(Forwarding Debian bug #395406):

Subject: gnat-4.1: Assert_Failure sinfo.adb:649
Package: gnat-4.1
Version: 4.1.1-16
Severity: normal

*** Please type your report below this line ***

Trying to compile an Ada program, I have this bug with gnatmake :
****************************************
$ gnatmake -gnat05 rv.adb
gcc-4.1 -c -gnat05 rv.adb
+===========================GNAT BUG DETECTED==============================+
| 4.1.2 20061007 (prerelease) (Debian 4.1.1-16) (i486-pc-linux-gnu)        |
| Assert_Failure sinfo.adb:649                                             |
| Error detected at rv.adb:83:26                                           |

My source code : rv.adb
****************************************
with text_io;
use  text_io;

procedure rv is

    p     : constant integer := 6; -- nombre de tâches "processus" 
    nb_rv : constant integer := 2; -- nombre de rendez-vous successifs
    subtype indice_processus is integer range 1..p;
    type    etat_processus is (run, wait);

    ---------------- variables partagées ------------------ à compléter
-------------
    etat : array(indice_processus) of etat_processus := (others => run);

    -------------------------
    ----- Tache serveur -----
    -------------------------

    task serveur is
        entry rendez_vous;
        entry photo;
    end serveur ;

    task body serveur is
    begin
        loop
            select
                accept rendez_vous;
            or
                accept photo do
                    for i in etat'Range loop
                        if etat(i) = run then
                            put("|   ");
                        else
                            put("+   ");
                        end if;
                    end loop;
                    put(Natural'Image(rendez_vous'Count));
                    new_line(1);
                end photo;
            end select;
        end loop;
    end serveur ;

    ---------------------------
    ----- Tache processus -----
    ---------------------------

    task type processus (numero : indice_processus);
    task body processus is
    begin
        serveur.rendez_vous;
    end processus;

    -----------------------
    ----- Tache trace -----
    -----------------------

    task trace;
    task body trace is
    begin
        serveur.photo;
    end trace ;

begin
    ------------------------------------------ affiche en-tête de la trace
-----------
    new_line(1);
    put_line(integer'image(p)&" processus se donnent "&integer'image(nb_rv)&"
rendez-vous" );
    new_line(1);
    put_line("Les processus s'executent : | , ou attendent : +") ;
    new_line(1);
    -- le header
    --put(" ");
    for i in 1..p loop
        put("p" & integer'image(i)(2..3) & "   ");
    end loop ;
    put("rendez_vous'count");
    new_line(1) ;
    -- les processus
    declare 
        taches : array(1..p) of access processus;
    begin
        for i in indice_processus loop
            taches(i) := new processus(i); -- line 83
        end loop;
    end;
end rv;

****************************************

-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-1-686
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)

Versions of packages gnat-4.1 depends on:
ii  gcc-4.1                      4.1.1-13    The GNU C compiler
ii  gnat-4.1-base                4.1.1-16    The GNU Compiler Collection (gnat 
ii  libc6                        2.3.6.ds1-4 GNU C Library: Shared libraries
ii  libc6-dev                    2.3.6.ds1-4 GNU C Library: Development Librari
ii  libgcc1                      1:4.1.1-13  GCC support library
ii  libgnat-4.1                  4.1.1-16    Runtime library for GNU Ada applic
ii  libgnatprj4.1                4.1.1-16    GNU Ada Project Manager
ii  libgnatvsn4.1                4.1.1-16    GNU Ada compiler version library

gnat-4.1 recommends no packages.

(sinfo.adb is not patched in Debian).


-- 
           Summary: Assert_Failure sinfo.adb:649 in task allocator
           Product: gcc
           Version: 4.1.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ada
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: ludovic at ludovic-brenta dot org
 GCC build triplet: i486-linux-gnu
  GCC host triplet: i486-linux-gnu
GCC target triplet: i486-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29623


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug ada/29623] Assert_Failure sinfo.adb:649 in task allocator
  2006-10-27 20:49 [Bug ada/29623] New: Assert_Failure sinfo.adb:649 in task allocator ludovic at ludovic-brenta dot org
@ 2006-10-29 21:03 ` pinskia at gcc dot gnu dot org
  2007-05-02 13:02 ` charlet at gcc dot gnu dot org
  1 sibling, 0 replies; 3+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-10-29 21:03 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2006-10-29 21:03 -------
Confirmed, reduced testcase:procedure rv is
    task serveur is
        entry rendez_vous;
        entry photo;
    end serveur ;
    task body serveur is
    begin
       accept photo do
          null;
       end photo;
    end serveur ;
    task type processus (numero : integer);
    task body processus is
    begin
        serveur.rendez_vous;
    end processus;
begin
    declare 
        taches : access processus;
    begin
            taches := new processus(0);
    end;
end rv;


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-10-29 21:03:29
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29623


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug ada/29623] Assert_Failure sinfo.adb:649 in task allocator
  2006-10-27 20:49 [Bug ada/29623] New: Assert_Failure sinfo.adb:649 in task allocator ludovic at ludovic-brenta dot org
  2006-10-29 21:03 ` [Bug ada/29623] " pinskia at gcc dot gnu dot org
@ 2007-05-02 13:02 ` charlet at gcc dot gnu dot org
  1 sibling, 0 replies; 3+ messages in thread
From: charlet at gcc dot gnu dot org @ 2007-05-02 13:02 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from charlet at gcc dot gnu dot org  2007-05-02 14:02 -------
Works fine on trunk.


-- 

charlet at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.3.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29623


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-05-02 13:02 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-10-27 20:49 [Bug ada/29623] New: Assert_Failure sinfo.adb:649 in task allocator ludovic at ludovic-brenta dot org
2006-10-29 21:03 ` [Bug ada/29623] " pinskia at gcc dot gnu dot org
2007-05-02 13:02 ` charlet at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).