clang compiler gives warnings expecting errors
Alex Kempshall
mcmurchy1917-libreoffice at yahoo.co.uk
Fri Sep 15 08:08:38 UTC 2017
Hi Stephen
Thanks for the pointer on how to compile with clang. Done an autogen -
> Running ./configure with 'CC=clang CXX=clang++ --enable-debug
> --disable-ccache --disable-gtk3 --with-parallelism=5 --without-junit
> --without-gssapi --without-krb5 --enable-dbgutil
> --enable-compiler-plugins --enable-option-checking=fatal
> --srcdir=/home/alex/master --enable-option-checking=fatal'
The make gives me a clean compile, with warnings, which was not what I
was hoping for!
> /home/alex/master/sw/source/ui/inc/mmresultdialogs.hxx:213:5:
> *warning*: VclReferenceBase subclass dispose() function MUST call
> dispose() of its superclass as the last thing it does
> [loplugin:vclwidgets]
> /home/alex/master/sw/source/ui/dbui/mmoutputtypepage.cxx:303:1:
> *warning*: VclReferenceBase subclass dispose() function MUST call
> dispose() of its superclass as the last thing it does
> [loplugin:vclwidgets]
I would have liked the compile to have failed in a similar way to
Jenkins where the *warnings* above became *errors*-
> In file included from
> /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sw/source/ui/dbui/mmoutputtypepage.cxx:37:
> /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sw/source/ui/inc/mmresultdialogs.hxx:213:5:***error*:
> VclReferenceBase subclass dispose() function MUST call dispose() of
> its superclass as the last thing it does [loplugin:vclwidgets]
> virtual void dispose() override;
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sw/source/ui/dbui/mmoutputtypepage.cxx:303:1:
> *error*: VclReferenceBase subclass dispose() function MUST call
> dispose() of its superclass as the last thing it does
> [loplugin:vclwidgets]
> void SwSendMailDialog::dispose()
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 2 errors generated.
> /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/solenv/gbuild/LinkTarget.mk:288:
> recipe for target
> '/home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/CxxObject/sw/source/ui/dbui/mmoutputtypepage.o'
> failed
> make[1]: ***
> [/home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/CxxObject/sw/source/ui/dbui/mmoutputtypepage.o]
> Error 1
> make[1]: *** Waiting for unfinished jobs....
> Makefile:266: recipe for target 'build' failed
> make: *** [build] Error 2
> Build step 'Execute shell' marked build as failure
> Finished: FAILURE
What have I missed?
Alex
On 14/09/17 11:40, Stephan Bergmann wrote:
> On 09/13/2017 11:27 AM, Alex Kempshall wrote:
>> Is there a way that I can pick up these type of errors before
>> submitting them to gerrit?
>
> By building with Clang and configuring --enable-compiler-plugins. See
> <https://wiki.documentfoundation.org/Development/Building_LibreOffice_with_Clang>
> for some pointers (and
> <https://wiki.documentfoundation.org/Development/Clang_plugins> for
> more info on loplugin).
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice/attachments/20170915/9e7b5e08/attachment.html>
More information about the LibreOffice
mailing list