[
https://issues.apache.org/jira/browse/STDCXX-751?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12584743#action_12584743
]
Travis Vitek commented on STDCXX-751:
-------------------------------------
This is another bogus cadvise warning. Here is a simple testcase that shows...
{noformat}
#include <stdio.h>
#include <string.h>
int main (int argc, char* argv [])
{
const char* slash = strrchr (argv [0], '/');
if (!slash)
slash = strrchr (argv [0], '\\');
printf ("%s\n", slash ? slash : argv [0]);
return 0;
}
{noformat}
I get the same warning if I replace {{?:}} with a regular conditional...
{noformat}
if (!slash)
slash = argv [0];
printf ("%s\n", slash);
{noformat}
Heck, even this failed
{noformat}
const char* prog = argv [0];
if (slash)
prog = slash;
printf ("%s\n", prog);
{noformat}
Fortunately, or perhaps unfortunately, I did find that dereferencing the
pointer inside the conditional seems to eliminate the warning...
{noformat}
if (slash)
printf ("%s\n", slash);
else
printf ("%s\n", argv [0]);
{noformat}
Now this makes me wonder if I should even bother making a fix. This warning is
obviously bogus. I suppose the value of fixing it is that we won't have to
re-examine the issue if HP doesn't fix the warning by the time we do this type
of testing again. The disadvantage would be that it makes the code a bit uglier.
> [HP aCC 6.16] Potential null pointer dereference in locale_stub.cpp
> -------------------------------------------------------------------
>
> Key: STDCXX-751
> URL: https://issues.apache.org/jira/browse/STDCXX-751
> Project: C++ Standard Library
> Issue Type: Sub-task
> Components: 20. General Utilities
> Affects Versions: 4.2.0
> Environment: $ uname -sr && aCC -V
> HP-UX B.11.31
> aCC: HP C/aC++ B3910B A.06.16 [Nov 26 2007]
> Reporter: Scott (Yu) Zhong
> Assignee: Travis Vitek
> Fix For: 4.2.1
>
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> aCC -c -mt -I/amd/devco/scottz/stdcxx/4.2.x/include
> -I/build/scottz/12d/include -AA +O2 +DD64 +w +W392 +W655 +W684 +W818 +W819
> +W849 +W2193
> +W2236 +W2261 +W2340 +W2401 +W2487 +W4227 +W4229 +W4231 +W4235 +W4237 +W4249
> +W4255 +W4272 +W4284 +W4285 +W4286 /amd/devco/scottz/stdcxx/4.2.x/u
> til/locale_stub.cpp
> "/amd/devco/scottz/stdcxx/4.2.x/util/locale_stub.cpp", line 62, procedure
> main: warning #20200-D: Potential null pointer dereference through return of
> call to strrchr is detected (null
> definition:/amd/packages/mdx/hpux/ia64/aCC/6_16/opt/aCC/include_std/cstring,
> line 59)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.