[PUSHED][PATCH] WaE fixed in crashrep and extensions modules
David Ostrovsky
david.ostrovsky at gmx.de
Sun Apr 22 00:25:52 PDT 2012
On 21.04.2012 23:30, Caolán McNamara wrote:
> On Sat, 2012-04-21 at 15:50 +0200, David Ostrovsky wrote:
>> Hi,
>>
>> I'm getting build errors in crashrep and extensions modules (whith
>> enabled --enable-werror option).
>> With these patches the warnings/errors are fixed.
> Looks good, pushed, thanks for these.
>
> I wonder why *I* didn't see them before though seeing as I build with
> -Werror. crashrep is disabled by default, so that's understandable, but
> the scanner stuff in extensions is built by default and I've got...
>
> export CFLAGS="-Wp,-D_FORTIFY_SOURCE=2 -fstack-protector
> --param=ssp-buffer-size=4"
> export CXXFLAGS="-Wp,-D_FORTIFY_SOURCE=2 -fstack-protector
> --param=ssp-buffer-size=4"
> export ARCH_FLAGS="-Wp,-D_FORTIFY_SOURCE=2 -fstack-protector
> --param=ssp-buffer-size=4"
>
> in my (Fedora 16) environment to generally get those extra warnings (I
> thought). I knew that e.g. Ubuntu configured gcc to add some extra
> warnings etc by default, but I had thought the above covered those
> additions. Wonder what I'm missing to get your warnings ?, i.e. what's
> your compiler version and distro ?
make -p extensions | grep T_CXXFLAGS
[...]
T_CXXFLAGS := -Wall -Wendif-labels -Wextra -fmessage-length=0
-fno-common -pipe -fPIC -Wshadow -Wsign-promo -Woverloaded-virtual
-Wnon-virtual-dtor -fvisibility=hidden -fvisibility-inlines-hidden
-std=gnu++0x
make -p extensions | grep gb_CXXFLAGS_WERROR
[...]
gb_CXXFLAGS_WERROR := -Werror -DLIBO_WERROR
$(call gb_Helper_abbreviate_dirs, mkdir -p $(dir $(1)) $(dir $(4)) &&
$(gb_CXX) $(DEFS) $(if $(filter
Library,$(TARGETTYPE)),$(gb_Library_LTOFLAGS)) $(T_CXXFLAGS) $(if
$(WARNINGS_NOT_ERRORS),,$(gb_CXXFLAGS_WERROR)) -c $(3) -o $(1) -MMD -MT
$(1) -MP -MF $(4) -I$(dir $(3)) $(INCLUDE_STL) $(INCLUDE))
errors without the patch are:
/home/david/projects/libreoffice-core/git/libo/extensions/source/scanner/sane.cxx:
In member function 'sal_Bool Sane::Start(BitmapTransporter&)':
/home/david/projects/libreoffice-core/git/libo/extensions/source/scanner/sane.cxx:817:72:
error: ignoring return value of 'size_t fread(void*, size_t, size_t,
FILE*)', declared with attribute warn_unused_result [-Werror=unused-result]
/home/david/projects/libreoffice-core/git/libo/extensions/source/scanner/sane.cxx:
In function 'sal_uInt8 _ReadValue(FILE*, int)':
/home/david/projects/libreoffice-core/git/libo/extensions/source/scanner/sane.cxx:527:34:
error: ignoring return value of 'size_t fread(void*, size_t, size_t,
FILE*)', declared with attribute warn_unused_result [-Werror=unused-result]
/home/david/projects/libreoffice-core/git/libo/extensions/source/scanner/sane.cxx:531:30:
error: ignoring return value of 'size_t fread(void*, size_t, size_t,
FILE*)', declared with attribute warn_unused_result [-Werror=unused-result]
cc1plus: all warnings being treated as errors
/home/david/projects/libreoffice-core/git/libo/extensions/source/nsplugin/source/npshell.cxx:
In function 'void NPP_StreamAsFile(NPP, NPStream*, const char*)':
/home/david/projects/libreoffice-core/git/libo/extensions/source/nsplugin/source/npshell.cxx:775:38:
error: ignoring return value of 'ssize_t write(int, const void*,
size_t)', declared with attribute warn_unused_result [-Werror=unused-result]
cc1plus: all warnings being treated as errors
the full command is:
[ build CXX ] extensions/source/scanner/sane.cxx
S=/home/david/projects/libreoffice-core/git/libo &&
O=$S/solver/unxlngx6.pro && W=$S/workdir/unxlngx6.pro && mkdir -p
$W/CxxObject/extensions/source/scanner/
$W/Dep/CxxObject/extensions/source/scanner/ && /usr/bin/ccache g++
-DCPPU_ENV=gcc3 -DENABLE_GRAPHITE -DENABLE_GTK -DGCC
-DGXX_INCLUDE_PATH=/usr/include/c++/4.6 -DHAVE_GCC_VISIBILITY_FEATURE
-DHAVE_THREADSAFE_STATICS -DLINUX -DNDEBUG -DOPTIMIZE
-DOSL_DEBUG_LEVEL=0 -DSOLAR_JAVA -DSUPD=360 -DUNIX -DUNX -DX86_64
-D_PTHREADS -D_REENTRANT -Wall -Wendif-labels -Wextra
-fmessage-length=0 -fno-common -pipe -fPIC -Wshadow -Wsign-promo
-Woverloaded-virtual -Wnon-virtual-dtor -fvisibility=hidden
-fvisibility-inlines-hidden -std=gnu++0x -DEXCEPTIONS_ON -fexceptions
-fno-enforce-eh-specs -O2 -Werror -DLIBO_WERROR -c
$S/extensions/source/scanner/sane.cxx -o
$W/CxxObject/extensions/source/scanner/sane.o -MMD -MT
$W/CxxObject/extensions/source/scanner/sane.o -MP -MF
$W/Dep/CxxObject/extensions/source/scanner/sane.d
-I$S/extensions/source/scanner/ -I$O/inc/external -I$O/inc
-I$S/solenv/inc -I/usr/lib/jvm/java-6-sun-1.6.0.26/include
-I/usr/lib/jvm/java-6-sun-1.6.0.26/include/linux
-I/usr/lib/jvm/java-6-sun-1.6.0.26/include/native_threads/include
-I$W/UnoApiHeadersTarget/udkapi/normal
-I$W/UnoApiHeadersTarget/offapi/normal
OS: Ubuntu oneiric, 11.10,
Compiler: gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
> For the second patch I added a follow up commit of
> e37ae322b07a02714b22cb663e1d7ab4f2072730 to fill in the "todos". e.g. I
> reckon it's best to compare how many bytes/members were written/read
> with write/read fread/fwrite vs what was requested to detect partial
> failure short read/write as well as the added detection of out and out
> utter failure.
>
Ciao
David
More information about the LibreOffice
mailing list