This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Null pointer check elimination


> 
> Paul Brook <paul@codesourcery.com> writes:
> 
> | On Saturday 12 November 2005 18:32, Gabriel Dos Reis wrote:
> | > Per Bothner <per@bothner.com> writes:
> | > | A "function-never-returns-null" attribute doesn't seem like
> | > | the right mechanism.  Instead, there should be a "never-null"
> | > | attribute on pointer types.  A "function-never-returns-null" is
> | > | just a function whose return-type has the "never-null" attribute.
> | >
> | > We already have such mechanism: a reference type
> | 
> | No. We've had this discussion before, and the conclusion what that reference 
> | types can be NULL.
> | 
> | http://gcc.gnu.org/ml/gcc-patches/2004-08/msg01463.html
> 
> That simply means GCC got it wrong. 


Was there an example of:


int f(int &);

int g(void)
{
  int *a = 0;
  return f(*a);
}


Yes this would be undefined code but so what.

-- Pinski


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]