stdcxx-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Travis Vitek (JIRA)" <>
Subject [jira] Commented: (STDCXX-751) [HP aCC 6.16] Potential null pointer dereference in locale_stub.cpp
Date Wed, 02 Apr 2008 19:53:24 GMT


Travis Vitek commented on STDCXX-751:

This is another bogus cadvise warning. Here is a simple testcase that shows...

#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;

I get the same warning if I replace {{?:}} with a regular conditional...

    if (!slash)
        slash = argv [0];

    printf ("%s\n", slash);

Heck, even this failed

    const char* prog = argv [0];
    if (slash)
        prog = slash;

    printf ("%s\n", prog);

Fortunately, or perhaps unfortunately, I did find that dereferencing the pointer inside the
conditional seems to eliminate the warning...

    if (slash)
        printf ("%s\n", slash);
        printf ("%s\n", argv [0]);

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:
>             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.

View raw message