Syntax error in malloc_np.h

Hartmut Brandt harti at FreeBSD.org
Mon May 21 15:57:49 UTC 2012


Hi,

it seems that there is a syntax error in malloc_np.h. It contains lines like:

int	allocm(void **ptr, size_t *rsize, size_t size, int flags)
    __attribute__(nonnull(1));

The problem is that the syntax of the attributes actually requires two
parenthesis:

    __attribute__((nonnull(1)));

Our gcc seems to swallow either of both, but gcc47 chokes on the missing
'(' as does clang++.

Given that we have __nonnull(x) in cdefs.h I suppose the above is better
replaced with __nonnull(1)?

harti


More information about the freebsd-current mailing list