← Back to team overview

kicad-developers team mailing list archive

Fwd: Are build warnings and notes normal?

 

2015-01-29 2:40 GMT+03:00 Bob Gustafson <bobgus@xxxxxxx>:
> From the KiCad directory, I loaded a fresh source copy by:
>
>    bzr checkout lp:kicad kicad.bzr
>
> (I use the checkout so I can enter the kicad.bzr and do ‘bzr up’ )
>
> Then enter the kicad.bzr directory and do:
>
>    sh ../kicad-configure.sh 2>&1 | tee config.out
>
> The kicad-configure.sh file is attached.
>
> Then do:
>
>    make 2>&1 | tee ../kicad_make.out
>
> The ../ is to put the output file into my KiCad directory so it is safe if I
> do another bzr checkout
>
> Then when that finishes, do:
>
>    sudo make install 2>&1 | tee ../kicad_install.out
>
> sudo - I think it is being installed in directories with restrictive
> permissions.
>
> Then when that finishes, double-click the /Applications/kicad which is soft
> linked to the executable generated in the install step above.
>
> The output from Help->Copy Version Information is: (don’t forget to exit so
> clipboard contents is fresh)
>
> Application: kicad
> Version: (2015-01-28 BZR 5393)-product Debug build
> wxWidgets: Version 3.0.2 (debug,UTF-8,compiler with C++ ABI 1002,GCC
> 4.2.1,STL containers,compatible with 2.8)
> Platform: Mac OS X (Darwin 14.1.0 x86_64), 64 bit, Little endian, wxMac
> Boost version: 1.57.0
>          USE_WX_GRAPHICS_CONTEXT=OFF
>          USE_WX_OVERLAY=ON
>          KICAD_SCRIPTING=ON
>          KICAD_SCRIPTING_MODULES=ON
>          KICAD_SCRIPTING_WXPYTHON=ON
>          USE_FP_LIB_TABLE=HARD_CODED_ON
>          BUILD_GITHUB_PLUGIN=ON
>          KICAD_USE_WEBKIT=ON
>
> Now, from the KiCad directory, execute the count-warnings.rb and
> warning-histo.rb programs
> (programs are attached - sorry they are not python)
>
> Bobs-MacBook-Air:KiCad bobgus$ ruby count-warnings.rb kicad_make.out
> 7652 total warnings
> Bobs-MacBook-Air:KiCad bobgus$ ruby warning-histo.rb kicad_make.out
>
> warning
>
>   7459    template argument uses unnamed type [-Wunnamed-type-template
>    314    'BOARD::SetLayer' hides overloaded virtual function [-Woverl
>     56    'LIB_PART::GetBoundingBox' hides overloaded virtual function
>     33    comparison of constant 4294967295 with expression of type 'i
>     23    'SHAPE_LINE_CHAIN::Collide' hides overloaded virtual functio
>     14    comparison of constant 4294967295 with expression of type 'L
>      4    comparison of constant 4294967294 with expression of type 'L
>      4    'PCAD2KICAD::PCB_PAD::AddToModule' hides overloaded virtual
>      4    'KIGFX::CACHED_CONTAINER::GetVertices' hides overloaded virt
>      3    'PCAD2KICAD::PCB_CUTOUT::Parse' hides overloaded virtual fun
>      3    comparison of unsigned expression >= 0 is always true [-Wtau
>      2    'PCAD2KICAD::PCB::Parse' hides overloaded virtual function [
>      2    variable 'FullFileName' is uninitialized when used within it
>      2    'PCAD2KICAD::PCB_KEEPOUT::Parse' hides overloaded virtual fu
>      2    private field 'm_writable' is not used [-Wunused-private-fie
>      1    private field 'm_currentWidth' is not used [-Wunused-private
>      1    private field 'm_startLayer' is not used [-Wunused-private-f
>      1    implicit conversion of NULL constant to 'bool' [-Wnull-conve
>      1    private field 'm_startsOnVia' is not used [-Wunused-private-
>      1    comparison of constant 4294967294 with expression of type 'i
>      1    'va_start' has undefined behavior with reference types [-Wva
>      1    private field 'm_iteration' is not used [-Wunused-private-fi
>      1    private field 'm_viaDiameter' is not used [-Wunused-private-
>      1    private field 'm_Parent' is not used [-Wunused-private-field
>      1    private field 'm_viaDrill' is not used [-Wunused-private-fie
>      1    private field 'mur_eff' is not used [-Wunused-private-field]
>
> Done, total = 7936 of warning
>
> note
>
>   7113    while substituting deduced template arguments into function
>   5103    in instantiation of template class 'boost::polygon::is_polyg
>   4879    in instantiation of template class 'boost::polygon::is_any_p
>   1404    in instantiation of template class 'boost::polygon::is_mutab
>    606    in instantiation of template class 'boost::polygon::is_eithe
>    314    hidden overloaded virtual function 'BOARD_ITEM::SetLayer' de
>     56    hidden overloaded virtual function 'EDA_ITEM::GetBoundingBox
>     46    hidden overloaded virtual function 'SHAPE::Collide' declared
>     30    in instantiation of function template specialization 'boost:
>      5    hidden overloaded virtual function 'PCAD2KICAD::PCB_POLYGON:
>      4    hidden overloaded virtual function 'PCAD2KICAD::PCB_COMPONEN
>      4    hidden overloaded virtual function 'KIGFX::VERTEX_CONTAINER:
>      2    hidden overloaded virtual function 'PCAD2KICAD::PCB_MODULE::
>
> Done, total = 19566 of note
> Bobs-MacBook-Air:KiCad bobgus$
>
> The count from the two programs don't quite match.. Nothing is perfect :-)
>
> Have fun
>
> Bob G
>
>
> On 01/28/2015 04:32 PM, Bob Gustafson wrote:
>
> I'm building fresh from 5393. When it finishes I will post a summary.
>
> Bob G
>
> On 01/28/2015 04:24 PM, Adam Wolf wrote:
>
> Yes.
>

Hi, I'm building with clang on linux (more for testing purposes rather
than for actual usage).
Firstly, I can confirm that most of those warnings are present in the build.
Secondly, don't be scared by the number of warnings: most of them are
point to headers so appear many times for the same issue.

Now some more details on concrete warnings:
I've tried to deal with some -Woverloaded-virtual in bug 1412528. Some
patches were not accepted, some are committed and some of the issues
are supposed to be fixed by later work. Also I haven't touched
PCAD2KICAD module.
I don't suppose -Wunused-private-field/function patches will be highly
appreciated because they may make more difficult the current work of
developers.
The -Wtautological-constant-out-of-range-compare and some other
signed/unsigned comparison warnings may indicate a bug.
I haven't seen -Wunnamed-type-template-args. May be it's just not turn
in clang-3.3 by default.


Follow ups

References