comp.lang.ada
 help / color / mirror / Atom feed
From: REH <spamjunk@stny.rr.com>
Subject: Re: Compiler Bug
Date: Tue, 4 Dec 2007 14:32:10 -0800 (PST)
Date: 2007-12-04T14:32:10-08:00	[thread overview]
Message-ID: <97d0825d-ee08-45ef-b736-ca005caf1a81@e23g2000prf.googlegroups.com> (raw)
In-Reply-To: 8a6283ea-be44-46d7-a2f1-a6d626266b58@p69g2000hsa.googlegroups.com

On Dec 4, 5:25 pm, Lucretia <lucret...@lycos.co.uk> wrote:
> On Dec 4, 9:58 pm, REH <spamj...@stny.rr.com> wrote:
>
> > I have an issue that my compiler vendor is trying to tell me is not a
> > bug.  I have two functions.  They both have a local variable of the
> > same name.  One calls the other (which is inlined).  The compiler
> > treats the variable in the caller as if it is of the same type as the
> > one in the callee.  Because of this, we get a constraint_error
> > exception.  The problem goes away when the pragma inline is removed.
> > The vendor is trying to tell me that this behavior is acceptable and
> > correct.  I do not believe that it is.  Please tell me who it right.
>
> > REH
>
> Which compiler? Have you tried it in GNAT?
>
> Can you post the code?
>
> Thanks,
> Luke.

No, I can't, sorry.  But the gist of it is:

function F1 return T1;
pragma Inline(F1);

function F1 return T1 is
  R : T1;
begin
  -- do stuff
  return R;
end F1;

function F2 return T2 is
  V : T1 := F1;
  R : T2;
begin
  -- do stuff
  return R;
end F2;

The compiler and debugger treat the R in F2 as if it is of type T1,
not T2.  Exceeding the bounds of T1 cause F2 to raise a
constraint_error.  The problem goes away if the pragma inline is
removed.

Thanks,
REH



  reply	other threads:[~2007-12-04 22:32 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-04 21:58 Compiler Bug REH
2007-12-04 22:25 ` Lucretia
2007-12-04 22:32   ` REH [this message]
2007-12-04 22:45     ` Randy Brukardt
2007-12-04 22:45     ` Randy Brukardt
2007-12-04 22:49       ` REH
2007-12-04 22:54       ` Adam Beneschan
2007-12-05  9:46         ` Samuel Tardieu
2007-12-05 16:07           ` Adam Beneschan
2007-12-06  3:30             ` Randy Brukardt
2007-12-06  3:30             ` Randy Brukardt
2007-12-06  6:51     ` Keith Thompson
2007-12-06 16:48       ` REH
  -- strict thread matches above, loose matches on Subject: below --
2008-04-01 11:52 Compiler bug Maciej Sobczak
2008-04-01 13:00 ` Ludovic Brenta
2008-04-01 20:43   ` Maciej Sobczak
2008-04-02 11:39 ` Alex R. Mosteo
2008-04-02 17:44 ` Per Sandberg
replies disabled

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