[m-rev.] diff: rtti_implementation type bug on .NET
Fergus Henderson
fjh at cs.mu.OZ.AU
Fri Nov 14 01:41:32 AEDT 2003
On 13-Nov-2003, Peter Ross <pro at missioncriticalit.com> wrote:
> On Fri, Nov 14, 2003 at 12:32:42AM +1100, Fergus Henderson wrote:
> > On 13-Nov-2003, Peter Ross <pro at missioncriticalit.com> wrote:
> > > -:- func null = T.
> > > +:- func null_string = string.
> > > :- pragma foreign_proc("C",
> > > - null = (T::out),
> > > + null_string = (Str::out),
> > > [will_not_call_mercury, thread_safe, promise_pure],
> > > "
> > > - T = (MR_Word) NULL;
> > > + Str = (MR_Word) NULL;
> >
> > That line will be a type error now.
>
> Didn't actually cause any problems, but it is deleted now.
It would have caused future portability problems.
> > I think you just need to delete the cast.
> > But please check that it compiles in non-IL grades without any warnings.
>
> It compiles fine both before and after in asm_fast.gc.
The fact that it compiles fine before is a bug in GCC. And also in lcc!
And also in Sun C!! Amazing that three different C compilers all have
exactly the same bug.
Comeau C gets it right, though, and issues an error message.
I have reported this bug to the GCC developers (it is bug #13038).
--
Fergus Henderson <fjh at cs.mu.oz.au> | "I have always known that the pursuit
The University of Melbourne | of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh> | -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-reviews mailing list
post: mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------
More information about the reviews
mailing list