------- Comment #1 from pinskia at gcc dot gnu dot org  2006-12-01 22:01 -------
nonnull attribute to the function says the function's argument is non null at
the time we enter the function so assuming that is correct.
Also this is documented this way:

nonnull (arg-index, ...)
    The nonnull attribute specifies that some function parameters should be
non-null pointers. For instance, the declaration:

          extern void *
          my_memcpy (void *dest, const void *src, size_t len)
                __attribute__((nonnull (1, 2)));


    causes the compiler to check that, in calls to my_memcpy, arguments dest
and src are non-null. If the compiler determines that a null pointer is passed
in an argument slot marked as non-null, and the -Wnonnull option is enabled, a
warning is issued. The compiler may also choose to make optimizations based on
the knowledge that certain function arguments will not be null. 

Witeness the last sentence.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |INVALID


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30043

Reply via email to