[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#306834: marked as done (gnat: Wrong code generated for legal program, RM 6.4.1(13), 9.5.1(3), 9.5.3(8))



Your message dated Tue, 30 Dec 2008 11:37:33 +0100
with message-id <1230633453.4959f9edb3663@www.versateladsl.be>
and subject line gnat: Wrong code generated for legal program, RM 6.4.1(13), 9.5.1(3), 9.5.3(8)
has caused the Debian Bug report #306834,
regarding gnat: Wrong code generated for legal program, RM 6.4.1(13), 9.5.1(3), 9.5.3(8)
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
306834: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=306834
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: gnat
Version: 3.15p-12
Severity: normal

-- fails in 3.15p, 3.4, and 4.0
-- RM 6.4.1(13)
-- RM 9.5.1(3)
-- RM 9.5.3(8)
with text_io; use text_io;
procedure Test_144 is
   type intp is access all integer;
   i: aliased integer := 3;
   x1: intp;

   procedure p1(x: out intp) is
   begin
      null;
   end;

   protected type T1 is
      entry e1 (x: out intp);
      procedure p2(x: out intp);
   end T1;

    protected body T1 is

      entry e1 (x: out intp) when true is
      begin
         null;
      end e1;

      procedure p2(x: out intp) is
      begin
         null;
      end;

   end T1;

   task type T2 is
      entry e1 (x: out intp);
   end T2;

   task body T2 is
   begin
      for i in 1..2 loop
         accept e1 (x: out intp) do
            begin
               null;
            end;
         end e1;
      end loop;
   end T2;

   pt: T1;

   tt: T2;

   procedure doit(x2: intp) is

      procedure check is
      begin
         if x1 = x2
           then put_line("PASSED");
           else put_line("FAILED");
         end if;
         x1 := x2;
      end;

   begin
      x1 := x2;
      p1(x1);
      check;
      pt.p2(x1);
      check;
      pt.e1(x1);
      check;
      tt.e1(x1);
      check;
   end;
begin
   doit(null);
   doit(i'access);
end Test_144;


The program prints "FAILED" not "PASSED".

-- System Information:
Debian Release: 3.1
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.4.27-2-686
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)

Versions of packages gnat depends on:
ii  binutils                    2.15-5       The GNU assembler, linker and bina
ii  libc6                       2.3.2.ds1-20 GNU C Library: Shared libraries an
ii  libc6-dev                   2.3.2.ds1-20 GNU C Library: Development Librari
ii  libgnat-3.15p-1             3.15p-12     The GNU Ada 95 compiler runtime li

-- no debconf information



--- End Message ---
--- Begin Message ---
Closing the bug as per Jörgen's information.

-- 
Ludovic Brenta.


--- End Message ---

Reply to: