lkml.org 
[lkml]   [2005]   [Mar]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: Not a GCC bug (was Re: Big GCC bug!!! [Was: Re: Do not misuse Coverity please])
    Date
    On Mar 30, 2005, at 18:38, Jakub Jelinek wrote:
    > This testcase violates ISO C99 6.3.2.3:
    > If a null pointer constant is converted to a pointer type, the
    > resulting
    > pointer, called a null pointer, is guaranteed to compare unequal to a
    > pointer to any object or function.

    Except that the result of dereferencing a null pointer is implementation
    defined according to the C99 standard. My implementation allows me to
    mmap
    stuff at NULL, and therefore its compiler should be able to handle that
    case. I would have no problem with either the standard or
    implementation
    if it either properly handled the case or didn't allow it in the first
    place.

    On another note, I've discovered the flag
    "-fno-delete-null-pointer-checks",
    which should probably be included in the kernel makefiles to disable
    that
    optimization for the kernel. (Ok, yes, I apologize, this isn't really
    a GCC
    bug, the behavior is documented, although it can be quite confusing. I
    suspect it may bite some platform-specific code someday. It also
    muddies
    the waters somewhat with respect to the original note (and the effects
    on
    the generated code):

    > int x = my_struct->the_x;
    > if (!my_struct) return;

    Cheers,
    Kyle Moffett

    -----BEGIN GEEK CODE BLOCK-----
    Version: 3.12
    GCM/CS/IT/U d- s++: a18 C++++>$ UB/L/X/*++++(+)>$ P+++(++++)>$
    L++++(+++) E W++(+) N+++(++) o? K? w--- O? M++ V? PS+() PE+(-) Y+
    PGP+++ t+(+++) 5 X R? tv-(--) b++++(++) DI+ D+ G e->++++$ h!*()>++$ r
    !y?(-)
    ------END GEEK CODE BLOCK------


    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-04-06 13:31    [W:0.028 / U:1.648 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site