On 2008-01-03 16:42 +0000, Wookey wrote: I forgot 7) Loch warnings:
Building loch gives a lot of this: In file included from /usr/include/wx-2.6/wx/gtk/cursor.h:23, from /usr/include/wx-2.6/wx/cursor.h:24, from /usr/include/wx-2.6/wx/event.h:32, from /usr/include/wx-2.6/wx/wx.h:23, from lxWX.h:6, from lxAboutDlg.cxx:1: /usr/include/wx-2.6/wx/image.h: In member function âwxImageHistogramBase_wxImplementation_HashTable::Node** wxImageHistogramBase_wxImplementation_HashTable::GetNodePtr(const long unsigned int&) constâ: /usr/include/wx-2.6/wx/image.h:123: warning: dereferencing type-punned pointer will break strict-aliasing rules Which is something to do with referencing structure members using pointer types which can not be guaranteed to have the same alignment as the pointer the member was assigned with. All these appear to be in wx headers, so maybe they are not really anything to do with therion, and all I should do is add -fno-strict-aliasing to the build to stop them appearing. But I'd like someone who groks C++ properly to tell me that's not just papering over cracks before doing so. Doing this certainly removes all the noise and shows us that there is one genuine set of warnings: lxRender.cxx: In member function âvoid lxRenderFile::RenderPDFHeader()â: lxRender.cxx:855: warning: format â%uâ expects type âunsigned intâ, but argument 3 has type âsize_tâ lxRender.cxx: In member function âvoid lxRenderFile::RenderPDFFooter()â: lxRender.cxx:929: warning: format â%uâ expects type âunsigned intâ, but argument 3 has type âsize_tâ lxRender.cxx:982: warning: format â%010uâ expects type âunsigned intâ, but argument 4 has type âsize_tâ lxRender.cxx:982: warning: format â%010uâ expects type âunsigned intâ, but argument 5 has type âsize_tâ lxRender.cxx:982: warning: format â%010uâ expects type âunsigned intâ, but argument 6 has type âsize_tâ lxRender.cxx:982: warning: format â%010uâ expects type âunsigned intâ, but argument 7 has type âsize_tâ lxRender.cxx:982: warning: format â%010uâ expects type âunsigned intâ, but argument 8 has type âsize_tâ lxRender.cxx:982: warning: format â%010uâ expects type âunsigned intâ, but argument 9 has type âsize_tâ lxRender.cxx:982: warning: format â%010uâ expects type âunsigned intâ, but argument 10 has type âsize_tâ lxRender.cxx:983: warning: format â%uâ expects type âunsigned intâ, but argument 3 has type âsize_tâ Does this just need some casts or should the format be changed? Wookey -- Principal hats: Balloonz - Toby Churchill - Aleph One - Debian http://wookware.org/