incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Sebor <se...@roguewave.com>
Subject Re: [TESTCASE] STDCXX-750 [HP aCC 6.16] Potential null pointer dereference in aliases.cpp
Date Thu, 20 Mar 2008 20:36:14 GMT
Scott Zhong wrote:
> Martin, would you suggest that there should be a check after malloc and
> throw bad_alloc?

I think we should just use the new expression instead of calling
malloc. That way we don't need to check. Unless we call malloc()
in the rest of the program for some reason.

Martin

> 
>> -----Original Message-----
>> From: Martin Sebor [mailto:msebor@gmail.com] On Behalf Of Martin Sebor
>> Sent: Thursday, March 20, 2008 12:02 PM
>> To: dev@stdcxx.apache.org
>> Subject: Re: [TESTCASE] STDCXX-750 [HP aCC 6.16] Potential null
> pointer
>> dereference in aliases.cpp
>>
>> I was going to say this is the same bug as STDCXX-764:
>>    http://issues.apache.org/jira/browse/STDCXX-764
>> but after looking at it more closely I believe the compiler
>> is correct in this case because malloc() returns 0 when it
>> fails to allocate memory. The warning could be clearer about
>> it.
>>
>> Martin
>>
>> Scott Zhong wrote:
>>> cat /build/scottz/t2.cpp && aCC -V && aCC -c  +w
> /build/scottz/t2.cpp
>>> #include <cstdlib>
>>>
>>> int main()
>>> {
>>>   static char * test = 0;
>>>   if (!test) {
>>>      test = (char *)std::malloc (12345);
>>>      *test = '\0';
>>>   }
>>>
>>>   return 0;
>>> }
>>> aCC: HP C/aC++ B3910B A.06.16 [Nov 26 2007]
>>> "/build/scottz/t2.cpp", line 8, procedure main: warning #20200-D:
>>> Potential
>>>           null pointer dereference through test is detected (null
>>>           definition:/build/scottz/t2.cpp, line 7)
>>>
>>> this test case shows that the warning is bogus because the pointer
>>> "test" is pointing to a valid location in memory after std::malloc
> is
>>> performed.
>>>
> 
> 


Mime
View raw message