[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

sys/mount.h not C++ clean on kfreebsd



Libreoffice failed to build on kfreebsd-i386 and kfreebsd-amd64 with the following error.

Compiling: sal/osl/unx/file_volume.cxx
In file included from /build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx/file_volume.cxx:77:0:
/usr/include/x86_64-kfreebsd-gnu/sys/mount.h: In function 'int getvfsbyname(const char*, xvfsconf*)':
/usr/include/x86_64-kfreebsd-gnu/sys/mount.h:398:23: error: invalid conversion from 'void*' to 'xvfsconf*' [-fpermissive]
/build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx/file_volume.cxx: At global scope:
/build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx/file_volume.cxx:1153:17: warning: unused parameter 'pszPath' [-Wunused-parameter]
/build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx/file_volume.cxx:1153:17: warning: unused parameter 'pItem' [-Wunused-parameter]
/build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx/file_volume.cxx:1160:17: warning: unused parameter 'pDevice' [-Wunused-parameter]
/build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx/file_volume.cxx:555:35: warning: 'oslVolumeDeviceHandleImpl* osl_newVolumeDeviceHandleImpl()' defined but not used [-Wunused-function]
/build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx/file_volume.cxx:579:13: warning: 'void osl_freeVolumeDeviceHandleImpl(oslVolumeDeviceHandleImpl*)' defined but not used [-Wunused-function]
/build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx/file_volume.cxx:1153:17: warning: 'sal_Bool osl_getFloppyMountEntry(const sal_Char*, oslVolumeDeviceHandleImpl*)' defined but not used [-Wunused-function]
/build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx/file_volume.cxx:1160:17: warning: 'sal_Bool osl_isFloppyMounted(oslVolumeDeviceHandleImpl*)' defined but not used [-Wunused-function]
dmake:  Error code 1, while making '../../unxkfgx6.pro/obj/file_volume.obj'
Retrying /build/buildd-libreoffice_3.4.5-3-kfreebsd-amd64-ukEv52/libreoffice-3.4.5/libreoffice-build/build/libreoffice-3.4.5.2/sal/osl/unx


A simple test program including the header (and with an empty main function) compiles fine when built as C but fails when built as C++. So it looks like this is a case of the header not being C++ clean (implicit conversion from void* to other pointer types is allowed in C but not in C++). Presumablly the fix is to add an explicit typecast.

I would file a bug report but packages.debian.org doesn't seem to want to tell me what package sys/mount.h is in.


Reply to: