svn commit: r222950 - in head: cddl/compat/opensolaris/include
sys/cddl/compat/opensolaris/sys
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys
Andriy Gapon
avg at FreeBSD.org
Wed Jun 22 13:41:51 UTC 2011
on 10/06/2011 23:10 Justin T. Gibbs said the following:
> Author: gibbs
> Date: Fri Jun 10 20:10:30 2011
> New Revision: 222950
> URL: http://svn.freebsd.org/changeset/base/222950
>
> Log:
> Remove C constructs that are incompatible with C++ from various
> OpenSolaris and ZFS header files. These changes are sufficient
> to allow a C++ program to use the libzfs library.
Is this going to affect any possible (but improbable?) merges from upstream?
And/or from other ZFS/OpenSolaris forks (which should be more likely)?
> Note: The majority of these files already included 'extern "C"'
> declarations, so the intention of providing C++ compatibility
> already existed even if it wasn't provided.
>
> cddl/compat/opensolaris/include/assert.h:
> Wrap our compatibility assert implementation in
> 'extern "C"'. Since this is a compatibility header
> I matched the Solaris style of doing this explicitly
> rather than rely on FreeBSD's __BEGIN/END_DECLS macro.
>
> sys/cddl/compat/opensolaris/sys/kstat.h:
> sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h:
> sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_pool.h:
> sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h:
> sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h:
> sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h:
> Rename parameters in function declarations that conflict
> with C++ keywords. This was the solution preferred by
> members of the Illumos community.
>
> sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h:
> In C, nested structures are visible in the global namespace,
> but in C++, they take on the namespace of the structure in
> which they are contained. Flatten nested structure
> definitions within struct zfs_cmd so these structures are
> visible in the global namespace when compiled in both
> languages.
>
> Sponsored by: Spectra Logic Corporation
>
> Modified:
> head/cddl/compat/opensolaris/include/assert.h
> head/sys/cddl/compat/opensolaris/sys/kstat.h
> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h
> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h
> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_pool.h
> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h
> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h
> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h
--
Andriy Gapon
More information about the svn-src-all
mailing list