opensolaris B_TRUE and B_FALSE

Dimitry Andric dim at FreeBSD.org
Mon Oct 29 10:30:16 UTC 2012


On 2012-10-29 09:12, Erik Cederstrand wrote:
> Den 29/10/2012 kl. 00.24 skrev Ian Lepore <freebsd at damnhippie.dyndns.org>:
>> Look further up in sys/cddl/compat/opensolaris/sys/types.h, they're also
>> defined (as macros rather than enum) in the KERNEL case.  They're also
>> defined (as enum) in sys/gnu/fs/xfs/xfs_types.h.  (Once again, SlickEdit
>> pays for itself by answering with one right-click a question that would
>> have been a pain to use grep for.)
>
> The code in the report is /sbin/zpool, so I assume it's not KERNEL code. As I wrote in my email, I can see B_TRUE and B_FALSE are defined as boolean_t in sys/cddl/compat/opensolaris/sys/types.h But I can't see that boolean_t is defined anywhere in the included headers as long as KERNEL is not defined.

In sys/cddl/compat/opensolaris/sys/types.h, there is:

   typedef enum { B_FALSE, B_TRUE }        boolean_t;

This line defines the boolean_t type.  Maybe the type itself is never
used, but only the enum values.  Sort of like a an anonymous enum in C++.


More information about the freebsd-hackers mailing list