From mboxrd@z Thu Jan 1 00:00:00 1970 From: mark@codesourcery.com To: egcs@tantalophile.demon.co.uk Cc: ak@muc.de, toon@moene.indiv.nluug.nl, law@cygnus.com, jbuck@Synopsys.COM, torvalds@transmeta.com, craig@jcb-sc.com, davem@redhat.com, chip@perlsupport.com, egcs@egcs.cygnus.com Subject: Re: Linux and aliasing? Date: Mon, 07 Jun 1999 08:04:00 -0000 Message-id: <19990607080643Q.mitchell@codesourcery.com> References: <19990605214133.A15508@pcep-jamie.cern.ch> <19990605165713D.mitchell@codesourcery.com> <19990607113526.A17782@pcep-jamie.cern.ch> <19990607113526.A17782@pcep-jamie.cern.ch> X-SW-Source: 1999-06/msg00255.html >>>>> "Jamie" == Jamie Lokier writes: Jamie> PgGGmark@codesourcery.com wrote: *(foo*)(void*)(&x) >> I intended this to be covered by my proposal. This would >> officially be a "funny cast", and considered able to alias >> anything, provided that x is a variable of an expression of the >> form a->b or a.b. Jamie> Why the restriction on x? Things I've seen around, that Jamie> are outside your proposal: So that we can be sure this code is non-conforming before we pessimize it. Jamie> Presumably reinterpret_cast this equivalent to one of your Jamie> "funny casts"? I hadn't intended that. -- Mark Mitchell mark@codesourcery.com CodeSourcery, LLC http://www.codesourcery.com From mboxrd@z Thu Jan 1 00:00:00 1970 From: mark@codesourcery.com To: egcs@tantalophile.demon.co.uk Cc: ak@muc.de, toon@moene.indiv.nluug.nl, law@cygnus.com, jbuck@Synopsys.COM, torvalds@transmeta.com, craig@jcb-sc.com, davem@redhat.com, chip@perlsupport.com, egcs@egcs.cygnus.com Subject: Re: Linux and aliasing? Date: Wed, 30 Jun 1999 15:43:00 -0000 Message-ID: <19990607080643Q.mitchell@codesourcery.com> References: <19990605214133.A15508@pcep-jamie.cern.ch> <19990605165713D.mitchell@codesourcery.com> <19990607113526.A17782@pcep-jamie.cern.ch> X-SW-Source: 1999-06n/msg00255.html Message-ID: <19990630154300.HO46XWqL72iOGJ17EBy3xFEDjnR4hIvehvlCsovySTw@z> >>>>> "Jamie" == Jamie Lokier writes: Jamie> PgGGmark@codesourcery.com wrote: *(foo*)(void*)(&x) >> I intended this to be covered by my proposal. This would >> officially be a "funny cast", and considered able to alias >> anything, provided that x is a variable of an expression of the >> form a->b or a.b. Jamie> Why the restriction on x? Things I've seen around, that Jamie> are outside your proposal: So that we can be sure this code is non-conforming before we pessimize it. Jamie> Presumably reinterpret_cast this equivalent to one of your Jamie> "funny casts"? I hadn't intended that. -- Mark Mitchell mark@codesourcery.com CodeSourcery, LLC http://www.codesourcery.com