[Libreoffice-commits] core.git: 11 commits - boost/boost_1_44_0-clang-warnings.patch boost/boost_1_44_0-gcc4.7.patch boost/boost_1_44_0-gthreads.patch boost/boost_1_44_0-logical-op-parentheses.patch boost/boost_1_44_0-unused-parameters.patch boost/boost.3093.warnings.patch boost/boost.3780.aliasing.patch boost/boost.4127.warnings.patch boost/boost.4510.warnings.patch boost/boost.4713.warnings.patch boost/boost.4874.patch boost/boost.5119.unordered_map-cp-ctor.patch boost/boost.6139.clang.patch boost/boost.6369.warnings.patch boost/boost.6397.warnings.patch boost/boost.6940.glibc.patch boost/boost.7774.warnings.patch.1 boost/boost.auto_link.patch boost/boost.gcc47679.patch boost/boost.libcdr.warnings.patch.1 boost/boost.loplugin.patch boost/boost.mipsbackport.patch boost/boost.ptree.patch boost/boost.std.move.patch boost/boost.wshadow.patch boost/boost.wundef.patch boost/boost.wundef.patch.1 boost/Module_boost.mk boost/StaticLibrary_boostsystem.mk boost/UnpackedTarball_boost.mk dbaccess/so urce download.lst framework/source include/sal liborcus/ExternalProject_liborcus.mk oox/source reportdesign/source RepositoryExternal.mk sc/Library_scfilt.mk sc/source sd/source sfx2/source solenv/gbuild svx/source sw/source unoxml/source vcl/quartz writerfilter/source xmloff/source

Tor Lillqvist tlillqvist at suse.com
Fri May 24 02:58:44 PDT 2013


 RepositoryExternal.mk                                         |   34 
 boost/Module_boost.mk                                         |    1 
 boost/StaticLibrary_boostsystem.mk                            |   27 
 boost/UnpackedTarball_boost.mk                                |   35 
 boost/boost.3093.warnings.patch                               |   11 
 boost/boost.3780.aliasing.patch                               |   38 
 boost/boost.4127.warnings.patch                               |   21 
 boost/boost.4510.warnings.patch                               |    4 
 boost/boost.4713.warnings.patch                               |  794 ----------
 boost/boost.4874.patch                                        |  140 -
 boost/boost.5119.unordered_map-cp-ctor.patch                  |   92 -
 boost/boost.6139.clang.patch                                  |   10 
 boost/boost.6369.warnings.patch                               |   21 
 boost/boost.6397.warnings.patch                               |   91 -
 boost/boost.6940.glibc.patch                                  |   20 
 boost/boost.7774.warnings.patch.1                             |   34 
 boost/boost.auto_link.patch                                   |   40 
 boost/boost.gcc47679.patch                                    |    6 
 boost/boost.libcdr.warnings.patch.1                           |  160 --
 boost/boost.loplugin.patch                                    |   19 
 boost/boost.mipsbackport.patch                                |   42 
 boost/boost.ptree.patch                                       |   11 
 boost/boost.std.move.patch                                    |   20 
 boost/boost.wshadow.patch                                     |  399 +++++
 boost/boost.wundef.patch                                      |   66 
 boost/boost.wundef.patch.1                                    |   54 
 boost/boost_1_44_0-clang-warnings.patch                       |  140 -
 boost/boost_1_44_0-gcc4.7.patch                               |   49 
 boost/boost_1_44_0-gthreads.patch                             |   12 
 boost/boost_1_44_0-logical-op-parentheses.patch               |   12 
 boost/boost_1_44_0-unused-parameters.patch                    |   81 -
 dbaccess/source/ui/querydesign/JoinController.cxx             |    2 
 dbaccess/source/ui/querydesign/QueryTableView.cxx             |    2 
 dbaccess/source/ui/tabledesign/TEditControl.cxx               |    2 
 download.lst                                                  |    2 
 framework/source/fwe/classes/addonsoptions.cxx                |    1 
 include/sal/log-areas.dox                                     |    6 
 liborcus/ExternalProject_liborcus.mk                          |    3 
 oox/source/ppt/pptshape.cxx                                   |    2 
 oox/source/ppt/pptshapecontext.cxx                            |    6 
 oox/source/ppt/slidepersist.cxx                               |    2 
 reportdesign/source/ui/report/FixedTextColor.cxx              |    2 
 reportdesign/source/ui/report/FormattedFieldBeautifier.cxx    |    2 
 reportdesign/source/ui/report/ViewsWindow.cxx                 |    4 
 sc/Library_scfilt.mk                                          |    1 
 sc/source/core/tool/ddelink.cxx                               |    2 
 sc/source/filter/excel/excdoc.cxx                             |    2 
 sd/source/ui/animations/CustomAnimationPane.cxx               |    2 
 sd/source/ui/animations/SlideTransitionPane.cxx               |    2 
 sd/source/ui/framework/factories/BasicViewFactory.cxx         |    2 
 sd/source/ui/framework/factories/FullScreenPane.cxx           |    4 
 sd/source/ui/framework/factories/TaskPanelFactory.cxx         |    2 
 sd/source/ui/sidebar/MasterPageContainer.cxx                  |    2 
 sd/source/ui/sidebar/PanelBase.cxx                            |    2 
 sd/source/ui/slidesorter/controller/SlideSorterController.cxx |    2 
 sd/source/ui/slidesorter/controller/SlsPageSelector.cxx       |    2 
 sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx   |   28 
 sd/source/ui/slidesorter/model/SlideSorterModel.cxx           |    2 
 sd/source/ui/slidesorter/view/SlsPageObjectPainter.cxx        |    2 
 sd/source/ui/toolpanel/controls/MasterPageContainer.cxx       |    2 
 sd/source/ui/view/Outliner.cxx                                |    6 
 sd/source/ui/view/ViewShellBase.cxx                           |    4 
 sd/source/ui/view/ViewShellManager.cxx                        |    2 
 sfx2/source/sidebar/DeckLayouter.cxx                          |    4 
 sfx2/source/sidebar/SidebarController.cxx                     |    8 
 sfx2/source/sidebar/TabBar.cxx                                |    2 
 solenv/gbuild/platform/com_MSC_defs.mk                        |    4 
 svx/source/svdraw/svdograf.cxx                                |    2 
 sw/source/core/inc/wrong.hxx                                  |    8 
 sw/source/filter/ww8/WW8TableInfo.cxx                         |    2 
 sw/source/filter/ww8/wrtw8sty.cxx                             |    2 
 unoxml/source/dom/element.cxx                                 |    4 
 unoxml/source/xpath/nodelist.cxx                              |    2 
 unoxml/source/xpath/xpathapi.cxx                              |    2 
 vcl/quartz/salbmp.cxx                                         |    2 
 writerfilter/source/dmapper/DomainMapper.cxx                  |    4 
 writerfilter/source/dmapper/FormControlHelper.hxx             |    2 
 writerfilter/source/dmapper/NumberingManager.cxx              |    2 
 writerfilter/source/doctok/DffImpl.cxx                        |    2 
 writerfilter/source/doctok/WW8DocumentImpl.cxx                |    2 
 writerfilter/source/doctok/WW8ResourceModelImpl.cxx           |    2 
 xmloff/source/text/txtimp.cxx                                 |    2 
 82 files changed, 797 insertions(+), 1852 deletions(-)

New commits:
commit 596f81b640633a9491a3c5c1a3eba9f7ca6ccdd3
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Thu May 23 23:09:27 2013 +0300

    WaE: unreferenced local variable
    
    Change-Id: I162574ccf28c88c379e7cc3f88cfe83bc13dc5d4

diff --git a/sw/source/core/inc/wrong.hxx b/sw/source/core/inc/wrong.hxx
index 215fcd9..37f56bf 100644
--- a/sw/source/core/inc/wrong.hxx
+++ b/sw/source/core/inc/wrong.hxx
@@ -97,10 +97,10 @@ private:
                 }
             }
         }
-        catch(::com::sun::star::container::NoSuchElementException& ex)
+        catch(::com::sun::star::container::NoSuchElementException&)
         {
         }
-        catch(::com::sun::star::uno::RuntimeException& ex)
+        catch(::com::sun::star::uno::RuntimeException&)
         {
         }
 
@@ -131,10 +131,10 @@ private:
                 }
             }
         }
-        catch(::com::sun::star::container::NoSuchElementException& ex)
+        catch(::com::sun::star::container::NoSuchElementException&)
         {
         }
-        catch(::com::sun::star::uno::RuntimeException& ex)
+        catch(::com::sun::star::uno::RuntimeException&)
         {
         }
 
commit c535cc8ff6def1da9182f1f978b50ca2089ba5f2
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Thu May 23 13:49:11 2013 +0300

    Avoid automatic linking to Boost libraries in a Windows build
    
    The library names used in these pragmas dont match what we build
    anyway. Whether that should be fixed to conform with "normal" Boost
    usage or not, don't know.
    
    Change-Id: I37cb3ff7b340f3362dd7b0fb18ab22188ba54cf6

diff --git a/boost/UnpackedTarball_boost.mk b/boost/UnpackedTarball_boost.mk
index 28791eb..75eb479 100644
--- a/boost/UnpackedTarball_boost.mk
+++ b/boost/UnpackedTarball_boost.mk
@@ -36,6 +36,7 @@ boost_patches += boost_1_44_0-clang-warnings.patch
 
 boost_patches += boost_1_44_0-gcc4.8.patch
 
+boost_patches += boost.auto_link.patch
 boost_patches += boost.loplugin.patch
 boost_patches += boost.std.move.patch
 boost_patches += boost.wundef.patch
diff --git a/boost/boost.auto_link.patch b/boost/boost.auto_link.patch
new file mode 100644
index 0000000..556d14e
--- /dev/null
+++ b/boost/boost.auto_link.patch
@@ -0,0 +1,40 @@
+--- foo/foo/foo/boost/config/auto_link.hpp
++++ foo/foo/foo/boost/config/auto_link.hpp
+@@ -357,37 +357,6 @@
+ #  define BOOST_LIB_PREFIX "lib"
+ #endif
+ 
+-//
+-// now include the lib:
+-//
+-#if defined(BOOST_LIB_NAME) \
+-      && defined(BOOST_LIB_PREFIX) \
+-      && defined(BOOST_LIB_TOOLSET) \
+-      && defined(BOOST_LIB_THREAD_OPT) \
+-      && defined(BOOST_LIB_RT_OPT) \
+-      && defined(BOOST_LIB_VERSION)
+-
+-#ifdef BOOST_AUTO_LINK_TAGGED
+-#  pragma comment(lib, BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT ".lib")
+-#  ifdef BOOST_LIB_DIAGNOSTIC
+-#     pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT ".lib")
+-#  endif
+-#elif defined(BOOST_AUTO_LINK_NOMANGLE)
+-#  pragma comment(lib, BOOST_STRINGIZE(BOOST_LIB_NAME) ".lib")
+-#  ifdef BOOST_LIB_DIAGNOSTIC
+-#     pragma message ("Linking to lib file: " BOOST_STRINGIZE(BOOST_LIB_NAME) ".lib")
+-#  endif
+-#else
+-#  pragma comment(lib, BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT "-" BOOST_LIB_VERSION ".lib")
+-#  ifdef BOOST_LIB_DIAGNOSTIC
+-#     pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT "-" BOOST_LIB_VERSION ".lib")
+-#  endif
+-#endif
+-
+-#else
+-#  error "some required macros where not defined (internal logic error)."
+-#endif
+-
+ 
+ #endif // _MSC_VER || __BORLANDC__
+ 
commit b5751caa1cd5cf1c0e6ef271b0a7418f69357e33
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Thu May 23 09:57:02 2013 +0300

    Disable also C4913: user defined binary operator ',' exists but ...
    
    MSVC generates the warning "user defined binary operator ',' exists
    but no overload could convert all operands, default built-in binary
    operator ',' used" when iterators from newer Boost are combined with
    comma expressions, as in for() statements. Or something like that.
    
    Change-Id: I3225d07ad0d1e05f4deeb784cf2ec081748b1ab4

diff --git a/solenv/gbuild/platform/com_MSC_defs.mk b/solenv/gbuild/platform/com_MSC_defs.mk
index 6f4b6a9..6f687e3 100644
--- a/solenv/gbuild/platform/com_MSC_defs.mk
+++ b/solenv/gbuild/platform/com_MSC_defs.mk
@@ -126,6 +126,9 @@ gb_AFLAGS := $(AFLAGS)
 # C4800: 'type' : forcing value to bool 'true' or 'false' (performance
 #   warning)
 
+# C4913: user defined binary operator ',' exists but no overload could
+#    convert all operands, default built-in binary operator ',' used
+
 # C4996: 'function': was declared deprecated
 #   Also generated for C++ library functions that "may be unsafe"
 
@@ -177,6 +180,7 @@ gb_CXXFLAGS := \
 	-wd4611 \
 	-wd4706 \
 	-wd4800 \
+	-wd4913 \
 	-Zc:forScope,wchar_t- \
 	-Zm500 \
 
commit 74943b31e8441c8d327c37dd9a20ac69f9b3f9b4
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Wed May 22 23:06:59 2013 +0300

    Make this patch apply in the correct location
    
    Why do we accept fuzzy matches?
    
    Change-Id: I5ed2e4f9aae873f701e8276751b3c25ce8d93879

diff --git a/boost/boost.4510.warnings.patch b/boost/boost.4510.warnings.patch
index a13d365..826c570 100644
--- a/boost/boost.4510.warnings.patch
+++ b/boost/boost.4510.warnings.patch
@@ -1,8 +1,8 @@
 --- misc/boost_1_44_0/boost/multi_array/concept_checks.hpp
 +++ misc/build/boost_1_44_0/boost/multi_array/concept_checks.hpp
 @@ -56,6 +56,13 @@
-     }
-   };
+ } // namespace detail
+ 
  
 +// MSVC 2008 produces 2 warnings "default constructor could not be generated"
 +// here that run over ~100 lines :(
commit e9f0133f9071d410e1a8f4721f0a2ca1aca4a1a8
Author: Tor Lillqvist <tlillqvist at suse.com>
Date:   Wed May 22 21:56:32 2013 +0300

    This is already in bost 1.53
    
    Change-Id: Ibde92f39ac53ee897ee90953b7f60129ba49bd97

diff --git a/boost/UnpackedTarball_boost.mk b/boost/UnpackedTarball_boost.mk
index 28ee031..28791eb 100644
--- a/boost/UnpackedTarball_boost.mk
+++ b/boost/UnpackedTarball_boost.mk
@@ -36,9 +36,6 @@ boost_patches += boost_1_44_0-clang-warnings.patch
 
 boost_patches += boost_1_44_0-gcc4.8.patch
 
-# https://svn.boost.org/trac/boost/changeset/78496
-boost_patches += boost.4874.patch
-
 boost_patches += boost.loplugin.patch
 boost_patches += boost.std.move.patch
 boost_patches += boost.wundef.patch
diff --git a/boost/boost.4874.patch b/boost/boost.4874.patch
deleted file mode 100644
index c401cf7..0000000
--- a/boost/boost.4874.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-Index: branches/release/boost/multi_array/base.hpp
-===================================================================
---- a/branches/release/boost/multi_array/base.hpp
-+++ b/branches/release/boost/multi_array/base.hpp
-@@ -18,6 +18,7 @@
- // functionality is acquired
- //
- 
-+#include "boost/multi_array/collection_concept.hpp"
- #include "boost/multi_array/extent_range.hpp"
- #include "boost/multi_array/extent_gen.hpp"
- #include "boost/multi_array/index_range.hpp"
-@@ -252,5 +253,17 @@
- /////////////////////////////////////////////////////////////////////////
- 
--
-+// Due to some imprecision in the C++ Standard, 
-+// MSVC 2010 is broken in debug mode: it requires
-+// that an Output Iterator have output_iterator_tag in its iterator_category if 
-+// that iterator is not bidirectional_iterator or random_access_iterator.
-+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600)
-+struct mutable_iterator_tag
-+ : boost::random_access_traversal_tag, std::input_iterator_tag
-+{
-+  operator std::output_iterator_tag() const {
-+    return std::output_iterator_tag();
-+  }
-+};
-+#endif
- 
- ////////////////////////////////////////////////////////////////////////
-@@ -322,5 +343,6 @@
-                            const index* strides,
-                            const index* index_bases) const {
--
-+    boost::function_requires<
-+      detail::multi_array::CollectionConcept<IndexList> >();
-     ignore_unused_variable_warning(index_bases);
-     ignore_unused_variable_warning(extents);
-Index: branches/release/boost/multi_array/concept_checks.hpp
-===================================================================
---- a/branches/release/boost/multi_array/concept_checks.hpp
-+++ b/branches/release/boost/multi_array/concept_checks.hpp
-@@ -132,4 +132,5 @@
-       function_requires< boost_concepts::ForwardTraversalConcept<const_iterator> >();
-       function_requires< boost_concepts::ReadableIteratorConcept<const_iterator> >();
-+      function_requires< boost::OutputIterator<iterator,value_type> >();
-       
-       // RG - a( CollectionArchetype) when available...
commit c2d2b521e83db2c83c64e5dcfb9ea65af9d5732a
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed May 22 21:51:16 2013 +0300

    Seems Apple's Clang has C++11 fully working rvalue references only with libc++
    
    Change-Id: Iad3f984722be648a64490976933e9b2c2b950bdc

diff --git a/boost/UnpackedTarball_boost.mk b/boost/UnpackedTarball_boost.mk
index 274781a..28ee031 100644
--- a/boost/UnpackedTarball_boost.mk
+++ b/boost/UnpackedTarball_boost.mk
@@ -40,6 +40,7 @@ boost_patches += boost_1_44_0-gcc4.8.patch
 boost_patches += boost.4874.patch
 
 boost_patches += boost.loplugin.patch
+boost_patches += boost.std.move.patch
 boost_patches += boost.wundef.patch
 boost_patches += boost.wshadow.patch
 
diff --git a/boost/boost.std.move.patch b/boost/boost.std.move.patch
new file mode 100644
index 0000000..83badae
--- /dev/null
+++ b/boost/boost.std.move.patch
@@ -0,0 +1,20 @@
+--- foo/foo/foo/boost/config/compiler/clang.hpp
++++ foo/foo/foo/boost/config/compiler/clang.hpp
+@@ -8,6 +8,8 @@
+ 
+ // Clang compiler setup.
+ 
++#include <utility>
++
+ #if !__has_feature(cxx_exceptions) && !defined(BOOST_NO_EXCEPTIONS)
+ #  define BOOST_NO_EXCEPTIONS
+ #endif
+@@ -108,7 +108,7 @@
+ #  define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
+ #endif
+ 
+-#if !__has_feature(cxx_rvalue_references)
++#if !__has_feature(cxx_rvalue_references) || (defined(__APPLE__) && !defined(_LIBCPP_VERSION))
+ #  define BOOST_NO_CXX11_RVALUE_REFERENCES
+ #endif
+ 
commit ed74575bb6849cd5547cb320fdee54a52353f038
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed May 22 20:26:03 2013 +0300

    Newer boost is more picky with null pointers
    
    Change-Id: I7a2bcd802ad9316696398a2e176dc03ea25baed1

diff --git a/vcl/quartz/salbmp.cxx b/vcl/quartz/salbmp.cxx
index 4cfccb0..73ead10 100644
--- a/vcl/quartz/salbmp.cxx
+++ b/vcl/quartz/salbmp.cxx
@@ -280,7 +280,7 @@ bool QuartzSalBitmap::AllocateUserData()
     catch( const std::bad_alloc& )
     {
         OSL_FAIL( "vcl::QuartzSalBitmap::AllocateUserData: bad alloc" );
-        maUserBuffer.reset( NULL );
+        maUserBuffer.reset( static_cast<sal_uInt8*>(NULL) );
         mnBytesPerRow = 0;
     }
 
commit 6cf30940750607eeb062113dbee9968769d7bd06
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed May 22 20:16:28 2013 +0300

    WaE: implicit conversion of NULL constant to nullptr_t
    
    Change-Id: I2eefbca1ef986219f04504cba4ca09a22972e8cb

diff --git a/dbaccess/source/ui/querydesign/JoinController.cxx b/dbaccess/source/ui/querydesign/JoinController.cxx
index 89b192a..31c9390 100644
--- a/dbaccess/source/ui/querydesign/JoinController.cxx
+++ b/dbaccess/source/ui/querydesign/JoinController.cxx
@@ -221,7 +221,7 @@ void OJoinController::SaveTabWinPosSize(OTableWindow* pTabWin, long nOffsetX, lo
 {
     // the data for the window
     TTableWindowData::value_type pData = pTabWin->GetData();
-    OSL_ENSURE(pData != NULL, "SaveTabWinPosSize : TabWin hat keine Daten !");
+    OSL_ENSURE(pData != 0, "SaveTabWinPosSize : TabWin hat keine Daten !");
 
     // set Position & Size of data anew (with current window parameters)
     Point aPos = pTabWin->GetPosPixel();
diff --git a/dbaccess/source/ui/querydesign/QueryTableView.cxx b/dbaccess/source/ui/querydesign/QueryTableView.cxx
index 1971bcc..cbf8b93 100644
--- a/dbaccess/source/ui/querydesign/QueryTableView.cxx
+++ b/dbaccess/source/ui/querydesign/QueryTableView.cxx
@@ -914,7 +914,7 @@ sal_Bool OQueryTableView::ShowTabWin( OQueryTableWindow* pTabWin, OQueryTabWinUn
         if (pTabWin->Init())
         {
             TTableWindowData::value_type pData = pTabWin->GetData();
-            OSL_ENSURE(pData != NULL, "OQueryTableView::ShowTabWin : TabWin has no data !");
+            OSL_ENSURE(pData != 0, "OQueryTableView::ShowTabWin : TabWin has no data !");
             // If there is a position and size defined, we use them
             if (pData->HasPosition() && pData->HasSize())
             {
diff --git a/dbaccess/source/ui/tabledesign/TEditControl.cxx b/dbaccess/source/ui/tabledesign/TEditControl.cxx
index 70654ce..839b470 100644
--- a/dbaccess/source/ui/tabledesign/TEditControl.cxx
+++ b/dbaccess/source/ui/tabledesign/TEditControl.cxx
@@ -344,7 +344,7 @@ sal_Bool OTableEditorCtrl::SetDataPtr( long nRow )
     if(nRow >= (long)m_pRowList->size())
         return sal_False;
     pActRow = (*m_pRowList)[nRow];
-    return pActRow != NULL;
+    return pActRow != 0;
 }
 
 //------------------------------------------------------------------------------
diff --git a/oox/source/ppt/pptshape.cxx b/oox/source/ppt/pptshape.cxx
index 740858e..6013c39 100644
--- a/oox/source/ppt/pptshape.cxx
+++ b/oox/source/ppt/pptshape.cxx
@@ -281,7 +281,7 @@ void PPTShape::addShape(
                     }
                     if( pPPTPlaceholder->mpPlaceholder.get() ) {
                         SAL_INFO("oox.ppt","placeholder has parent placeholder: " << pPPTPlaceholder->mpPlaceholder->getId() << " type: " << lclDebugSubType( pPPTPlaceholder->mpPlaceholder->getSubType() ) << " index: " << pPPTPlaceholder->mpPlaceholder->getSubTypeIndex().get() );
-                        SAL_INFO("oox.ppt","has textbody " << (pPPTPlaceholder->mpPlaceholder->getTextBody() != NULL) );
+                        SAL_INFO("oox.ppt","has textbody " << (pPPTPlaceholder->mpPlaceholder->getTextBody() != 0) );
                         TextListStylePtr pPlaceholderStyle = getSubTypeTextListStyle( rSlidePersist, pPPTPlaceholder->mpPlaceholder->getSubType() );
                         if( pPPTPlaceholder->mpPlaceholder->getTextBody() )
                             pNewTextListStyle->apply( pPPTPlaceholder->mpPlaceholder->getTextBody()->getTextListStyle() );
diff --git a/oox/source/ppt/pptshapecontext.cxx b/oox/source/ppt/pptshapecontext.cxx
index a42fe8d..ac8af0b 100644
--- a/oox/source/ppt/pptshapecontext.cxx
+++ b/oox/source/ppt/pptshapecontext.cxx
@@ -63,9 +63,9 @@ oox::drawingml::ShapePtr findPlaceholder( const sal_Int32 nMasterPlaceholder, co
     {
         if ( (*aRevIter)->getSubType() == nMasterPlaceholder )
         {
-            if( !oSubTypeIndex.has() && aChoiceShapePtr1 == NULL )
+            if( !oSubTypeIndex.has() && aChoiceShapePtr1 == 0 )
                 aChoiceShapePtr1 = *aRevIter;
-            else if( aChoiceShapePtr2 == NULL )
+            else if( aChoiceShapePtr2 == 0 )
                 aChoiceShapePtr2 = *aRevIter;
             if( (*aRevIter)->getSubTypeIndex() == oSubTypeIndex )
             {
@@ -79,7 +79,7 @@ oox::drawingml::ShapePtr findPlaceholder( const sal_Int32 nMasterPlaceholder, co
             break;
         ++aRevIter;
     }
-    if( aShapePtr == NULL )
+    if( aShapePtr == 0 )
         return aChoiceShapePtr1 ? aChoiceShapePtr1 : aChoiceShapePtr2;
     return aShapePtr;
 }
diff --git a/oox/source/ppt/slidepersist.cxx b/oox/source/ppt/slidepersist.cxx
index ddba98e..b53fcb2 100644
--- a/oox/source/ppt/slidepersist.cxx
+++ b/oox/source/ppt/slidepersist.cxx
@@ -174,7 +174,7 @@ void setTextStyle( Reference< beans::XPropertySet >& rxPropSet, const XmlFilterB
     oox::drawingml::TextListStylePtr& pTextListStylePtr, int nLevel )
 {
     ::oox::drawingml::TextParagraphPropertiesPtr pTextParagraphPropertiesPtr( pTextListStylePtr->getListStyle()[ nLevel ] );
-    if( pTextParagraphPropertiesPtr == NULL )
+    if( pTextParagraphPropertiesPtr == 0 )
     {
         // no properties. return
         return;
diff --git a/reportdesign/source/ui/report/FixedTextColor.cxx b/reportdesign/source/ui/report/FixedTextColor.cxx
index 4322043..040cf6b 100644
--- a/reportdesign/source/ui/report/FixedTextColor.cxx
+++ b/reportdesign/source/ui/report/FixedTextColor.cxx
@@ -176,7 +176,7 @@ namespace rptui
                     if ( pUnoObj ) // this doesn't need to be done for shapes
                     {
                         ::boost::shared_ptr<OSectionWindow> pSectionWindow = pController->getSectionWindow(xSection);
-                        if (pSectionWindow != NULL)
+                        if (pSectionWindow != 0)
                         {
                             OReportSection& aOutputDevice = pSectionWindow->getReportSection(); // OutputDevice
                             OSectionView& aSdrView = aOutputDevice.getSectionView(); // SdrView
diff --git a/reportdesign/source/ui/report/FormattedFieldBeautifier.cxx b/reportdesign/source/ui/report/FormattedFieldBeautifier.cxx
index 0cbe5ff..d442b1c 100644
--- a/reportdesign/source/ui/report/FormattedFieldBeautifier.cxx
+++ b/reportdesign/source/ui/report/FormattedFieldBeautifier.cxx
@@ -177,7 +177,7 @@ namespace rptui
                 if ( pUnoObj ) // this doesn't need to be done for shapes
                 {
                     ::boost::shared_ptr<OSectionWindow> pSectionWindow = m_rReportController.getSectionWindow(xSection);
-                    if (pSectionWindow != NULL)
+                    if (pSectionWindow != 0)
                     {
                         OReportSection& aOutputDevice = pSectionWindow->getReportSection(); // OutputDevice
                         OSectionView& aSdrView = aOutputDevice.getSectionView();            // SdrView
diff --git a/reportdesign/source/ui/report/ViewsWindow.cxx b/reportdesign/source/ui/report/ViewsWindow.cxx
index d7277b8..d7015c6 100644
--- a/reportdesign/source/ui/report/ViewsWindow.cxx
+++ b/reportdesign/source/ui/report/ViewsWindow.cxx
@@ -448,7 +448,7 @@ void OViewsWindow::Paste()
                 if (nCurrentPosition > 0)
                 {
                     pRet = (*(--aIter));
-                    if (pRet == NULL)
+                    if (pRet == 0)
                     {
                         pRet = (*m_aSections.begin());
                     }
@@ -466,7 +466,7 @@ void OViewsWindow::Paste()
                 if ((nCurrentPosition + 1) < nSize)
                 {
                     pRet = *(++aIter);
-                    if (pRet == NULL)
+                    if (pRet == 0)
                     {
                         pRet = (*(--aEnd));
                     }
diff --git a/sc/source/core/tool/ddelink.cxx b/sc/source/core/tool/ddelink.cxx
index d579eaa..bd6eb92 100644
--- a/sc/source/core/tool/ddelink.cxx
+++ b/sc/source/core/tool/ddelink.cxx
@@ -110,7 +110,7 @@ void ScDdeLink::Store( SvStream& rStream, ScMultipleWriteHeader& rHdr ) const
     rStream.WriteUniOrByteString( aTopic, eCharSet );
     rStream.WriteUniOrByteString( aItem, eCharSet );
 
-    sal_Bool bHasValue = ( pResult != NULL );
+    sal_Bool bHasValue = ( pResult != 0 );
     rStream << bHasValue;
 
     if( rStream.GetVersion() > SOFFICE_FILEFORMAT_40 )      // nicht bei 4.0 Export
diff --git a/sc/source/filter/excel/excdoc.cxx b/sc/source/filter/excel/excdoc.cxx
index b95b660..b56f780 100644
--- a/sc/source/filter/excel/excdoc.cxx
+++ b/sc/source/filter/excel/excdoc.cxx
@@ -579,7 +579,7 @@ void ExcTable::FillAsXmlTable( SCTAB nCodeNameIdx )
     aRecList.AppendRecord( GetPivotTableManager().CreatePivotTablesRecord( mnScTab ) );
 
     // list of NOTE records, generated by the cell table
-    if( mxNoteList != NULL && !mxNoteList->IsEmpty() )
+    if( mxNoteList != 0 && !mxNoteList->IsEmpty() )
         aRecList.AppendNewRecord( new XclExpComments( mnScTab, *mxNoteList ) );
 
     // web queries
diff --git a/sd/source/ui/animations/CustomAnimationPane.cxx b/sd/source/ui/animations/CustomAnimationPane.cxx
index eee8e84..ea26cc3 100644
--- a/sd/source/ui/animations/CustomAnimationPane.cxx
+++ b/sd/source/ui/animations/CustomAnimationPane.cxx
@@ -345,7 +345,7 @@ IMPL_LINK(CustomAnimationPane,EventMultiplexerListener,
             // At this moment the controller may not yet been set at model
             // or ViewShellBase.  Take it from the view shell passed with
             // the event.
-            if (mrBase.GetMainViewShell() != NULL)
+            if (mrBase.GetMainViewShell() != 0)
             {
                 if( mrBase.GetMainViewShell()->GetShellType() == ViewShell::ST_IMPRESS )
                 {
diff --git a/sd/source/ui/animations/SlideTransitionPane.cxx b/sd/source/ui/animations/SlideTransitionPane.cxx
index 20334b3..bcb4af2 100644
--- a/sd/source/ui/animations/SlideTransitionPane.cxx
+++ b/sd/source/ui/animations/SlideTransitionPane.cxx
@@ -1176,7 +1176,7 @@ IMPL_LINK(SlideTransitionPane,EventMultiplexerListener,
                 // At this moment the controller may not yet been set at
                 // model or ViewShellBase.  Take it from the view shell
                 // passed with the event.
-                if (mrBase.GetMainViewShell() != NULL)
+                if (mrBase.GetMainViewShell() != 0)
                 {
                     mxView = Reference<drawing::XDrawView>::query(mrBase.GetController());
                     onSelectionChanged();
diff --git a/sd/source/ui/framework/factories/BasicViewFactory.cxx b/sd/source/ui/framework/factories/BasicViewFactory.cxx
index 45191b3..2e48e17 100644
--- a/sd/source/ui/framework/factories/BasicViewFactory.cxx
+++ b/sd/source/ui/framework/factories/BasicViewFactory.cxx
@@ -368,7 +368,7 @@ void SAL_CALL BasicViewFactory::initialize (const Sequence<Any>& aArguments)
         if (xWindow.is())
         {
             xWindow->addWindowListener(pDescriptor->mpWrapper);
-            if (pDescriptor->mpViewShell != NULL)
+            if (pDescriptor->mpViewShell != 0)
             {
                 pDescriptor->mpViewShell->Resize();
             }
diff --git a/sd/source/ui/framework/factories/FullScreenPane.cxx b/sd/source/ui/framework/factories/FullScreenPane.cxx
index c4d5dd1..f2804c1 100644
--- a/sd/source/ui/framework/factories/FullScreenPane.cxx
+++ b/sd/source/ui/framework/factories/FullScreenPane.cxx
@@ -154,7 +154,7 @@ void SAL_CALL FullScreenPane::setVisible (const sal_Bool bIsVisible)
 
     if (mpWindow != NULL)
         mpWindow->Show(bIsVisible);
-    if (mpWorkWindow != NULL)
+    if (mpWorkWindow != 0)
         mpWorkWindow->Show(bIsVisible);
 }
 
@@ -166,7 +166,7 @@ Reference<css::accessibility::XAccessible> SAL_CALL FullScreenPane::getAccessibl
 {
     ThrowIfDisposed();
 
-    if (mpWorkWindow != NULL)
+    if (mpWorkWindow != 0)
         return mpWorkWindow->GetAccessible(sal_False);
     else
         return NULL;
diff --git a/sd/source/ui/framework/factories/TaskPanelFactory.cxx b/sd/source/ui/framework/factories/TaskPanelFactory.cxx
index 091c3f5..b698215 100644
--- a/sd/source/ui/framework/factories/TaskPanelFactory.cxx
+++ b/sd/source/ui/framework/factories/TaskPanelFactory.cxx
@@ -245,7 +245,7 @@ void SAL_CALL TaskPanelFactory::releaseResource (
         const OUString sPaneURL = aResourceURLs[ aResourceURLs.size() - 1 ];
         ::boost::shared_ptr< FrameworkHelper > pFrameworkHelper( FrameworkHelper::Instance( *mpViewShellBase ) );
         const ::boost::shared_ptr< ViewShell > pPaneViewShell( pFrameworkHelper->GetViewShell( sPaneURL ) );
-        if ( pPaneViewShell != NULL )
+        if ( pPaneViewShell != 0 )
         {
             const OUString sPanelResourceURL( xResourceId->getResourceURL() );
             const toolpanel::PanelId ePanelId( toolpanel::GetStandardPanelId( sPanelResourceURL ) );
diff --git a/sd/source/ui/sidebar/MasterPageContainer.cxx b/sd/source/ui/sidebar/MasterPageContainer.cxx
index 582a3fe..46a60e6 100644
--- a/sd/source/ui/sidebar/MasterPageContainer.cxx
+++ b/sd/source/ui/sidebar/MasterPageContainer.cxx
@@ -695,7 +695,7 @@ void MasterPageContainer::Implementation::UpdatePreviewSizePixel (void)
     MasterPageContainerType::const_iterator iDescriptor;
     MasterPageContainerType::const_iterator iContainerEnd(maContainer.end());
     for (iDescriptor=maContainer.begin(); iDescriptor!=iContainerEnd; ++iDescriptor)
-        if (*iDescriptor!=NULL && (*iDescriptor)->mpMasterPage != NULL)
+        if (*iDescriptor!=0 && (*iDescriptor)->mpMasterPage != NULL)
         {
             Size aPageSize ((*iDescriptor)->mpMasterPage->GetSize());
             OSL_ASSERT(aPageSize.Width() > 0 && aPageSize.Height() > 0);
diff --git a/sd/source/ui/sidebar/PanelBase.cxx b/sd/source/ui/sidebar/PanelBase.cxx
index 014ee8a..350eb88 100644
--- a/sd/source/ui/sidebar/PanelBase.cxx
+++ b/sd/source/ui/sidebar/PanelBase.cxx
@@ -101,7 +101,7 @@ void PanelBase::Resize (void)
 void PanelBase::SetSidebar (const cssu::Reference<css::ui::XSidebar>& rxSidebar)
 {
     mxSidebar = rxSidebar;
-    if (mxSidebar.is() && mpWrappedControl!=NULL)
+    if (mxSidebar.is() && mpWrappedControl!=0)
         mxSidebar->requestLayout();
 }
 
diff --git a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx
index fa4e09f..915888c 100644
--- a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx
+++ b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx
@@ -657,7 +657,7 @@ IMPL_LINK(SlideSorterController, WindowEventHandler, VclWindowEvent*, pEvent)
                     : ViewShell::OUTPUT_DRAWMODE_COLOR);
                 if (mrSlideSorter.GetViewShell() != NULL)
                     mrSlideSorter.GetViewShell()->GetFrameView()->SetDrawMode(nDrawMode);
-                if (pActiveWindow != NULL)
+                if (pActiveWindow != 0)
                     pActiveWindow->SetDrawMode(nDrawMode);
                 mrView.HandleDrawModeChange();
 
diff --git a/sd/source/ui/slidesorter/controller/SlsPageSelector.cxx b/sd/source/ui/slidesorter/controller/SlsPageSelector.cxx
index 9bf7c34..79663a8 100644
--- a/sd/source/ui/slidesorter/controller/SlsPageSelector.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsPageSelector.cxx
@@ -178,7 +178,7 @@ void PageSelector::SelectPage (const SharedPageDescriptor& rpDescriptor)
         mrSlideSorter.GetView().RequestRepaint(rpDescriptor);
 
         mpMostRecentlySelectedPage = rpDescriptor;
-        if (mpSelectionAnchor == NULL)
+        if (mpSelectionAnchor == 0)
             mpSelectionAnchor = rpDescriptor;
 
         if (mnBroadcastDisableLevel > 0)
diff --git a/sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx b/sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx
index 7387e6c..f1da5e0 100644
--- a/sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx
@@ -86,12 +86,12 @@ void ScrollBarManager::LateInitialization (void)
 
 void ScrollBarManager::Connect (void)
 {
-    if (mpVerticalScrollBar != NULL)
+    if (mpVerticalScrollBar != 0)
     {
         mpVerticalScrollBar->SetScrollHdl (
             LINK(this, ScrollBarManager, VerticalScrollBarHandler));
     }
-    if (mpHorizontalScrollBar != NULL)
+    if (mpHorizontalScrollBar != 0)
     {
         mpHorizontalScrollBar->SetScrollHdl(
             LINK(this, ScrollBarManager, HorizontalScrollBarHandler));
@@ -103,11 +103,11 @@ void ScrollBarManager::Connect (void)
 
 void ScrollBarManager::Disconnect (void)
 {
-    if (mpVerticalScrollBar != NULL)
+    if (mpVerticalScrollBar != 0)
     {
         mpVerticalScrollBar->SetScrollHdl (Link());
     }
-    if (mpHorizontalScrollBar != NULL)
+    if (mpHorizontalScrollBar != 0)
     {
         mpHorizontalScrollBar->SetScrollHdl (Link());
     }
@@ -137,13 +137,13 @@ Rectangle ScrollBarManager::PlaceScrollBars (
         bIsHorizontalScrollBarAllowed,
         bIsVerticalScrollBarAllowed));
 
-    if (mpHorizontalScrollBar!=NULL && mpHorizontalScrollBar->IsVisible())
+    if (mpHorizontalScrollBar!=0 && mpHorizontalScrollBar->IsVisible())
         PlaceHorizontalScrollBar (rAvailableArea);
 
-    if (mpVerticalScrollBar!=NULL && mpVerticalScrollBar->IsVisible())
+    if (mpVerticalScrollBar!=0 && mpVerticalScrollBar->IsVisible())
         PlaceVerticalScrollBar (rAvailableArea);
 
-    if (mpScrollBarFiller!=NULL && mpScrollBarFiller->IsVisible())
+    if (mpScrollBarFiller!=0 && mpScrollBarFiller->IsVisible())
         PlaceFiller (rAvailableArea);
 
     return aRemainingSpace;
@@ -214,7 +214,7 @@ void ScrollBarManager::UpdateScrollBars (bool bResetThumbPosition, bool bUseScro
 
     // The horizontal scroll bar is only shown when the window is
     // horizontally smaller than the view.
-    if (mpHorizontalScrollBar != NULL && mpHorizontalScrollBar->IsVisible())
+    if (mpHorizontalScrollBar != 0 && mpHorizontalScrollBar->IsVisible())
     {
         mpHorizontalScrollBar->Show();
         mpHorizontalScrollBar->SetRange (
@@ -244,7 +244,7 @@ void ScrollBarManager::UpdateScrollBars (bool bResetThumbPosition, bool bUseScro
     }
 
     // The vertical scroll bar is always shown.
-    if (mpVerticalScrollBar != NULL && mpVerticalScrollBar->IsVisible())
+    if (mpVerticalScrollBar != 0 && mpVerticalScrollBar->IsVisible())
     {
         mpVerticalScrollBar->SetRange (
             Range(aModelArea.Top(), aModelArea.Bottom()));
@@ -293,7 +293,7 @@ IMPL_LINK(ScrollBarManager, VerticalScrollBarHandler, ScrollBar*, pScrollBar)
     if (pScrollBar!=NULL
         && pScrollBar==mpVerticalScrollBar.get()
         && pScrollBar->IsVisible()
-        && mrSlideSorter.GetContentWindow()!=NULL)
+        && mrSlideSorter.GetContentWindow()!=0)
     {
         double nRelativePosition = double(pScrollBar->GetThumbPos())
             / double(pScrollBar->GetRange().Len());
@@ -312,7 +312,7 @@ IMPL_LINK(ScrollBarManager, HorizontalScrollBarHandler, ScrollBar*, pScrollBar)
     if (pScrollBar!=NULL
         && pScrollBar==mpHorizontalScrollBar.get()
         && pScrollBar->IsVisible()
-        && mrSlideSorter.GetContentWindow()!=NULL)
+        && mrSlideSorter.GetContentWindow()!=0)
     {
         double nRelativePosition = double(pScrollBar->GetThumbPos())
             / double(pScrollBar->GetRange().Len());
@@ -485,7 +485,7 @@ void ScrollBarManager::SetTopLeft (const Point aNewTopLeft)
 
 int ScrollBarManager::GetVerticalScrollBarWidth (void) const
 {
-    if (mpVerticalScrollBar != NULL && mpVerticalScrollBar->IsVisible())
+    if (mpVerticalScrollBar != 0 && mpVerticalScrollBar->IsVisible())
         return mpVerticalScrollBar->GetSizePixel().Width();
     else
         return 0;
@@ -496,7 +496,7 @@ int ScrollBarManager::GetVerticalScrollBarWidth (void) const
 
 int ScrollBarManager::GetHorizontalScrollBarHeight (void) const
 {
-    if (mpHorizontalScrollBar != NULL && mpHorizontalScrollBar->IsVisible())
+    if (mpHorizontalScrollBar != 0 && mpHorizontalScrollBar->IsVisible())
         return mpHorizontalScrollBar->GetSizePixel().Height();
     else
         return 0;
@@ -518,7 +518,7 @@ void ScrollBarManager::CalcAutoScrollOffset (const Point& rMouseWindowPosition)
         pWindow->LogicToPixel(mrSlideSorter.GetView().GetModelArea()));
 
     if (aWindowSize.Width() > maScrollBorder.Width() * 3
-        && mpHorizontalScrollBar != NULL
+        && mpHorizontalScrollBar != 0
         && mpHorizontalScrollBar->IsVisible())
     {
         if (rMouseWindowPosition.X() < maScrollBorder.Width()
diff --git a/sd/source/ui/slidesorter/model/SlideSorterModel.cxx b/sd/source/ui/slidesorter/model/SlideSorterModel.cxx
index ca27a7a..7c2ea3d 100644
--- a/sd/source/ui/slidesorter/model/SlideSorterModel.cxx
+++ b/sd/source/ui/slidesorter/model/SlideSorterModel.cxx
@@ -212,7 +212,7 @@ SharedPageDescriptor SlideSorterModel::GetPageDescriptor (
     if (nPageIndex>=0 && nPageIndex<GetPageCount())
     {
         pDescriptor = maPageDescriptors[nPageIndex];
-        if (pDescriptor == NULL && bCreate && mxSlides.is())
+        if (pDescriptor == 0 && bCreate && mxSlides.is())
         {
             SdPage* pPage = GetPage(nPageIndex);
             pDescriptor.reset(new PageDescriptor (
diff --git a/sd/source/ui/slidesorter/view/SlsPageObjectPainter.cxx b/sd/source/ui/slidesorter/view/SlsPageObjectPainter.cxx
index c20acf9..8c725f8 100644
--- a/sd/source/ui/slidesorter/view/SlsPageObjectPainter.cxx
+++ b/sd/source/ui/slidesorter/view/SlsPageObjectPainter.cxx
@@ -201,7 +201,7 @@ void PageObjectPainter::PaintPreview (
         PageObjectLayouter::Preview,
         PageObjectLayouter::ModelCoordinateSystem));
 
-    if (mpCache != NULL)
+    if (mpCache != 0)
     {
         const SdrPage* pPage = rpDescriptor->GetPage();
         mpCache->SetPreciousFlag(pPage, true);
diff --git a/sd/source/ui/toolpanel/controls/MasterPageContainer.cxx b/sd/source/ui/toolpanel/controls/MasterPageContainer.cxx
index 1a59444..cfad63c 100644
--- a/sd/source/ui/toolpanel/controls/MasterPageContainer.cxx
+++ b/sd/source/ui/toolpanel/controls/MasterPageContainer.cxx
@@ -697,7 +697,7 @@ void MasterPageContainer::Implementation::UpdatePreviewSizePixel (void)
     MasterPageContainerType::const_iterator iDescriptor;
     MasterPageContainerType::const_iterator iContainerEnd(maContainer.end());
     for (iDescriptor=maContainer.begin(); iDescriptor!=iContainerEnd; ++iDescriptor)
-        if (*iDescriptor!=NULL && (*iDescriptor)->mpMasterPage != NULL)
+        if (*iDescriptor!=0 && (*iDescriptor)->mpMasterPage != NULL)
         {
             Size aPageSize ((*iDescriptor)->mpMasterPage->GetSize());
             OSL_ASSERT(aPageSize.Width() > 0 && aPageSize.Height() > 0);
diff --git a/sd/source/ui/view/Outliner.cxx b/sd/source/ui/view/Outliner.cxx
index b64532f..26a92fe 100644
--- a/sd/source/ui/view/Outliner.cxx
+++ b/sd/source/ui/view/Outliner.cxx
@@ -657,7 +657,7 @@ bool Outliner::SearchAndReplaceOnce (void)
         return true;
 
     ::boost::shared_ptr<ViewShell> pViewShell (mpWeakViewShell.lock());
-    if (pViewShell != NULL)
+    if (pViewShell != 0)
     {
         mpView = pViewShell->GetView();
         mpWindow = pViewShell->GetActiveWindow();
@@ -907,7 +907,7 @@ void Outliner::RestoreStartPosition (void)
         bRestore = false;
     // Dont't restore when the view shell is not valid.
     ::boost::shared_ptr<ViewShell> pViewShell (mpWeakViewShell.lock());
-    if (pViewShell == NULL)
+    if (pViewShell == 0)
         bRestore = false;
 
     if (bRestore)
@@ -1005,7 +1005,7 @@ void Outliner::ProvideNextTextObject (void)
                 PutTextIntoOutliner ();
 
                 ::boost::shared_ptr<ViewShell> pViewShell (mpWeakViewShell.lock());
-                if (pViewShell != NULL)
+                if (pViewShell != 0)
                     switch (meMode)
                     {
                         case SEARCH:
diff --git a/sd/source/ui/view/ViewShellBase.cxx b/sd/source/ui/view/ViewShellBase.cxx
index 67c22e1..4c4d3be 100644
--- a/sd/source/ui/view/ViewShellBase.cxx
+++ b/sd/source/ui/view/ViewShellBase.cxx
@@ -1520,7 +1520,7 @@ void ViewShellBase::Implementation::ProcessTaskPaneSlot (SfxRequest& rRequest)
     // shell types.
     if (bPanelIdGiven
         && ! (nPanelId==sidebar::PID_LAYOUT
-            && mrBase.GetMainViewShell()!=NULL
+            && mrBase.GetMainViewShell()!=0
             && mrBase.GetMainViewShell()->GetShellType()==ViewShell::ST_OUTLINE))
     {
         framework::FrameworkHelper::Instance(mrBase)->RequestSidebarPanel(
@@ -1551,7 +1551,7 @@ void CurrentPageSetter::operator() (bool)
 {
     FrameView* pFrameView = NULL;
 
-    if (mrBase.GetMainViewShell() != NULL)
+    if (mrBase.GetMainViewShell() != 0)
     {
         pFrameView = mrBase.GetMainViewShell()->GetFrameView();
     }
diff --git a/sd/source/ui/view/ViewShellManager.cxx b/sd/source/ui/view/ViewShellManager.cxx
index a6393d8..093e6e9 100644
--- a/sd/source/ui/view/ViewShellManager.cxx
+++ b/sd/source/ui/view/ViewShellManager.cxx
@@ -1207,7 +1207,7 @@ ShellDescriptor ViewShellManager::Implementation::CreateSubShell (
     for (FactoryList::const_iterator iFactory=aRange.first; iFactory!=aRange.second; ++iFactory)
     {
         SharedShellFactory pFactory = iFactory->second;
-        if (pFactory != NULL)
+        if (pFactory != 0)
             aResult.mpShell = pFactory->CreateShell(nShellId, pParentWindow, pFrameView);
 
         // Exit the loop when the shell has been successfully created.
diff --git a/sfx2/source/sidebar/DeckLayouter.cxx b/sfx2/source/sidebar/DeckLayouter.cxx
index ade08bb..d68ae29 100644
--- a/sfx2/source/sidebar/DeckLayouter.cxx
+++ b/sfx2/source/sidebar/DeckLayouter.cxx
@@ -202,7 +202,7 @@ sal_Int32 DeckLayouter::PlacePanels (
     // Assign heights and places.
     IterateLayoutItems(iItem,rLayoutItems)
     {
-        if (iItem->mpPanel == NULL)
+        if (iItem->mpPanel == 0)
             continue;
 
         Panel& rPanel (*iItem->mpPanel);
@@ -294,7 +294,7 @@ void DeckLayouter::GetRequestedSizes (
     IterateLayoutItems(iItem,rLayoutItems)
     {
         ui::LayoutSize aLayoutSize (ui::LayoutSize(0,0,0));
-        if (iItem->mpPanel != NULL)
+        if (iItem->mpPanel != 0)
         {
             if (rLayoutItems.size() == 1
                 && iItem->mpPanel->IsTitleBarOptional())
diff --git a/sfx2/source/sidebar/SidebarController.cxx b/sfx2/source/sidebar/SidebarController.cxx
index 43b7194..a2efa70 100644
--- a/sfx2/source/sidebar/SidebarController.cxx
+++ b/sfx2/source/sidebar/SidebarController.cxx
@@ -291,9 +291,9 @@ void SidebarController::BroadcastPropertyChange (void)
 
 void SidebarController::NotifyResize (void)
 {
-    if (mpTabBar == NULL)
+    if (mpTabBar == 0)
     {
-        OSL_ASSERT(mpTabBar!=NULL);
+        OSL_ASSERT(mpTabBar!=0);
         return;
     }
 
@@ -572,7 +572,7 @@ void SidebarController::SwitchToDeck (
                 rContext);
             bHasPanelSetChanged = true;
         }
-        if (aNewPanels[nWriteIndex] != NULL)
+        if (aNewPanels[nWriteIndex] != 0)
         {
             // Depending on the context we have to change the command
             // for the "more options" dialog.
@@ -623,7 +623,7 @@ bool SidebarController::ArePanelSetsEqual (
         return false;
     for (sal_Int32 nIndex=0,nCount=rCurrentPanels.size(); nIndex<nCount; ++nIndex)
     {
-        if (rCurrentPanels[nIndex] == NULL)
+        if (rCurrentPanels[nIndex] == 0)
             return false;
         if ( ! rCurrentPanels[nIndex]->GetId().equals(rRequestedPanels[nIndex].msId))
             return false;
diff --git a/sfx2/source/sidebar/TabBar.cxx b/sfx2/source/sidebar/TabBar.cxx
index 1cbd18b..aec1859 100644
--- a/sfx2/source/sidebar/TabBar.cxx
+++ b/sfx2/source/sidebar/TabBar.cxx
@@ -182,7 +182,7 @@ void TabBar::Layout (void)
         Theme::GetInteger(Theme::Int_TabItemHeight));
 
     // Place the menu button and the separator.
-    if (mpMenuButton != NULL)
+    if (mpMenuButton != 0)
     {
         mpMenuButton->SetPosSizePixel(
             Point(nX,nY),
diff --git a/svx/source/svdraw/svdograf.cxx b/svx/source/svdraw/svdograf.cxx
index 46b88da..c968809 100644
--- a/svx/source/svdraw/svdograf.cxx
+++ b/svx/source/svdraw/svdograf.cxx
@@ -1330,7 +1330,7 @@ IMPL_LINK( SdrGrafObj, ImpSwapHdl, GraphicObject*, pO )
                         ? ::utl::UcbStreamHelper::CreateStream(xStream)
                         : 0 );
 
-                if( pStream != NULL )
+                if( pStream != 0 )
                 {
                     Graphic aGraphic;
 
diff --git a/sw/source/filter/ww8/WW8TableInfo.cxx b/sw/source/filter/ww8/WW8TableInfo.cxx
index b58fee8..ce79ae2 100644
--- a/sw/source/filter/ww8/WW8TableInfo.cxx
+++ b/sw/source/filter/ww8/WW8TableInfo.cxx
@@ -1283,7 +1283,7 @@ WW8TableNodeInfo * WW8TableCellGrid::connectCells()
 
         WW8TableCellGridRow::Pointer_t pRow = getRow(*aTopsIt);
         WidthsPtr pWidths = pRow->getWidths();
-        if (pWidths != NULL)
+        if (pWidths != 0)
         {
             sResult += "<widths>";
 
diff --git a/sw/source/filter/ww8/wrtw8sty.cxx b/sw/source/filter/ww8/wrtw8sty.cxx
index 097a8a7..6d52d6b 100644
--- a/sw/source/filter/ww8/wrtw8sty.cxx
+++ b/sw/source/filter/ww8/wrtw8sty.cxx
@@ -1825,7 +1825,7 @@ void WW8_WrPlcSepx::WriteSepx( SvStream& rStrm ) const
     for (size_t i = 0; i < m_SectionAttributes.size(); i++) // all sections
     {
         WW8_PdAttrDesc *const pA = m_SectionAttributes[i].get();
-        if (pA->m_nLen && pA->m_pData != NULL)
+        if (pA->m_nLen && pA->m_pData != 0)
         {
             SVBT16 nL;
             pA->m_nSepxFcPos = rStrm.Tell();
diff --git a/unoxml/source/dom/element.cxx b/unoxml/source/dom/element.cxx
index 41cfb0f..50bb0bd 100644
--- a/unoxml/source/dom/element.cxx
+++ b/unoxml/source/dom/element.cxx
@@ -625,7 +625,7 @@ namespace DOM
         AttrChangeType aChangeType = AttrChangeType_MODIFICATION;
         ::boost::shared_ptr<xmlChar const> const pOld(
             xmlGetProp(m_aNodePtr, xName), xmlFree);
-        if (pOld == NULL) {
+        if (pOld == 0) {
             aChangeType = AttrChangeType_ADDITION;
             xmlNewProp(m_aNodePtr, xName, xValue);
         } else {
@@ -708,7 +708,7 @@ namespace DOM
         AttrChangeType aChangeType = AttrChangeType_MODIFICATION;
         ::boost::shared_ptr<xmlChar const> const pOld(
                 xmlGetNsProp(m_aNodePtr, xLName, pNs->href), xmlFree);
-        if (pOld == NULL) {
+        if (pOld == 0) {
             aChangeType = AttrChangeType_ADDITION;
             xmlNewNsProp(m_aNodePtr, pNs, xLName, xValue);
         } else {
diff --git a/unoxml/source/xpath/nodelist.cxx b/unoxml/source/xpath/nodelist.cxx
index 2a3c9ff..dbe225b 100644
--- a/unoxml/source/xpath/nodelist.cxx
+++ b/unoxml/source/xpath/nodelist.cxx
@@ -31,7 +31,7 @@ namespace XPath
         , m_rMutex(rMutex)
         , m_pNodeSet(0)
     {
-        if (rxpathObj != NULL && rxpathObj->type == XPATH_NODESET)
+        if (rxpathObj != 0 && rxpathObj->type == XPATH_NODESET)
         {
             m_pNodeSet = rxpathObj->nodesetval;
             m_pXPathObj = rxpathObj;
diff --git a/unoxml/source/xpath/xpathapi.cxx b/unoxml/source/xpath/xpathapi.cxx
index 6a50933..690dcfc 100644
--- a/unoxml/source/xpath/xpathapi.cxx
+++ b/unoxml/source/xpath/xpathapi.cxx
@@ -374,7 +374,7 @@ namespace XPath
         /* Create xpath evaluation context */
         ::boost::shared_ptr<xmlXPathContext> const xpathCtx(
                 xmlXPathNewContext(pDoc), xmlXPathFreeContext);
-        if (xpathCtx == NULL) { throw XPathException(); }
+        if (xpathCtx == 0) { throw XPathException(); }
 
         // set context node
         xpathCtx->node = pNode;
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index 5612434..0be87b7 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -3622,7 +3622,7 @@ void DomainMapper::lcl_text(const sal_uInt8 * data_, size_t len)
             m_pImpl->SetFieldResult( sText );
         else
         {
-            if (pContext == NULL)
+            if (pContext == 0)
                 pContext.reset(new PropertyMap());
 
             m_pImpl->appendTextPortion( sText, pContext );
@@ -3709,7 +3709,7 @@ void DomainMapper::lcl_utext(const sal_uInt8 * data_, size_t len)
                 m_pImpl->SetFieldResult( sText );
             else
             {
-                if (pContext == NULL)
+                if (pContext == 0)
                     pContext.reset(new PropertyMap());
 
                 m_pImpl->appendTextPortion( sText, pContext );
diff --git a/writerfilter/source/dmapper/FormControlHelper.hxx b/writerfilter/source/dmapper/FormControlHelper.hxx
index 3ec1a88..d7c9bc5 100644
--- a/writerfilter/source/dmapper/FormControlHelper.hxx
+++ b/writerfilter/source/dmapper/FormControlHelper.hxx
@@ -41,7 +41,7 @@ public:
 
     bool insertControl(uno::Reference<text::XTextRange> xTextRange);
     bool processField(uno::Reference<text::XFormField> xFormField);
-    bool hasFFDataHandler() const { return (m_pFFData != NULL); }
+    bool hasFFDataHandler() const { return (m_pFFData != 0); }
 private:
     FFDataHandler::Pointer_t m_pFFData;
     struct FormControlHelper_Impl;
diff --git a/writerfilter/source/dmapper/NumberingManager.cxx b/writerfilter/source/dmapper/NumberingManager.cxx
index 98dacdf..1923c86 100644
--- a/writerfilter/source/dmapper/NumberingManager.cxx
+++ b/writerfilter/source/dmapper/NumberingManager.cxx
@@ -1155,7 +1155,7 @@ AbstractListDef::Pointer ListsManager::GetAbstractList( sal_Int32 nId )
                 if( pStyleSheetProperties && pStyleSheetProperties->GetNumId() >= 0 )
                 {
                     ListDef::Pointer pList = GetList( pStyleSheetProperties->GetNumId() );
-                    if ( pList!=NULL )
+                    if ( pList!=0 )
                         return pList->GetAbstractDefinition();
                     else
                         pAbstractList = m_aAbstractLists[i];
diff --git a/writerfilter/source/doctok/DffImpl.cxx b/writerfilter/source/doctok/DffImpl.cxx
index 5457fef..0d185a8 100644
--- a/writerfilter/source/doctok/DffImpl.cxx
+++ b/writerfilter/source/doctok/DffImpl.cxx
@@ -39,7 +39,7 @@ protected:
 public:
     static Pointer_t Instance()
     {
-        if (pInstance == NULL)
+        if (pInstance == 0)
             pInstance = Pointer_t(new ShapeTypeToString());
 
         return pInstance;
diff --git a/writerfilter/source/doctok/WW8DocumentImpl.cxx b/writerfilter/source/doctok/WW8DocumentImpl.cxx
index cfdae5f..9e914a4 100644
--- a/writerfilter/source/doctok/WW8DocumentImpl.cxx
+++ b/writerfilter/source/doctok/WW8DocumentImpl.cxx
@@ -1174,7 +1174,7 @@ WW8DocumentImpl::getBlip(sal_uInt32 nBid)
 {
     writerfilter::Reference<Properties>::Pointer_t pResult;
 
-    if (mpDffBlock != NULL)
+    if (mpDffBlock != 0)
     {
         DffRecord::Pointer_t pDffRecord(mpDffBlock->getBlip(nBid));
 
diff --git a/writerfilter/source/doctok/WW8ResourceModelImpl.cxx b/writerfilter/source/doctok/WW8ResourceModelImpl.cxx
index c77b682..10f5891 100644
--- a/writerfilter/source/doctok/WW8ResourceModelImpl.cxx
+++ b/writerfilter/source/doctok/WW8ResourceModelImpl.cxx
@@ -118,7 +118,7 @@ string WW8TableReference::getType() const
 
 void WW8PropertiesReference::resolve(Properties & rHandler)
 {
-    if (mpPropSet != NULL)
+    if (mpPropSet != 0)
     {
         if (mpPropSet->isPap())
         {
diff --git a/xmloff/source/text/txtimp.cxx b/xmloff/source/text/txtimp.cxx
index 94f91c0..f35a46d 100644
--- a/xmloff/source/text/txtimp.cxx
+++ b/xmloff/source/text/txtimp.cxx
@@ -1928,7 +1928,7 @@ void XMLTextImportHelper::SetOutlineStyles( sal_Bool bSetEmptyLevels )
     static OUString s_NumberingStyleName( "NumberingStyleName");
     static OUString s_HeadingStyleName( "HeadingStyleName");
 
-    if ((m_pImpl->m_pOutlineStylesCandidates != NULL || bSetEmptyLevels) &&
+    if ((m_pImpl->m_pOutlineStylesCandidates != 0 || bSetEmptyLevels) &&
          m_pImpl->m_xChapterNumbering.is() &&
          !IsInsertMode())
     {
commit 503b248127a92b9ad190e05f6a1d50574183cd47
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed May 22 19:50:22 2013 +0300

    Update bundled boost to 1.53.0
    
    Modify our patches as necessary to match the updated boost sources. Drop
    patches for which corresponding (or even identical) changes already are
    present. Add a new boostsystem static library and use it in two places.
    
    Change-Id: Ib59558feb56dab87a69c91b38caca8e7a9e9a22e

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 973ebc5..0be2054 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -556,6 +556,24 @@ $(call gb_LinkTarget_add_libs,$(1),\
 
 endef
 
+define gb_LinkTarget__use_boostsystem
+$(call gb_LinkTarget_set_include,$(1),\
+	$$(INCLUDE) \
+	$(BOOST_CPPFLAGS) \
+)
+
+$(call gb_LinkTarget_add_ldflags,$(1),\
+	$(BOOST_LDFLAGS) \
+)
+
+$(call gb_LinkTarget_add_libs,$(1),\
+	$(BOOST_SYSTEM_LIB) \
+)
+
+endef
+
+gb_ExternalProject__use_boostsystem :=
+
 define gb_LinkTarget__use_boost_headers
 $(call gb_LinkTarget_set_include,$(1),\
 	$$(INCLUDE) \
@@ -570,6 +588,7 @@ else # !SYSTEM_BOOST
 
 $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
 	boostdatetime \
+	boostsystem \
 ))
 
 ifeq ($(OS),WNT)
@@ -600,6 +619,21 @@ $(call gb_LinkTarget_use_static_libraries,$(1),\
 
 endef
 
+define gb_LinkTarget__use_boostsystem
+$(call gb_LinkTarget_add_defs,$(1),\
+	-DBOOST_ALL_NO_LIB \
+)
+
+$(call gb_LinkTarget_use_static_libraries,$(1),\
+	boostsystem \
+)
+
+endef
+
+define gb_ExternalProject__use_boostsystem
+$(call gb_LinkTarget_use_static_libraries,$(1),boostsystem)
+endef
+
 define gb_LinkTarget__use_boost_headers
 $(call gb_LinkTarget_use_unpacked,$(1),boost)
 $(call gb_LinkTarget_set_include,$(1),\
diff --git a/boost/Module_boost.mk b/boost/Module_boost.mk
index b9da8a7..9274e4a 100644
--- a/boost/Module_boost.mk
+++ b/boost/Module_boost.mk
@@ -13,6 +13,7 @@ ifeq ($(SYSTEM_BOOST),NO)
 
 $(eval $(call gb_Module_add_targets,boost,\
 	StaticLibrary_boostdatetime \
+	StaticLibrary_boostsystem \
 	UnpackedTarball_boost \
 ))
 
diff --git a/boost/StaticLibrary_boostsystem.mk b/boost/StaticLibrary_boostsystem.mk
new file mode 100644
index 0000000..053321b
--- /dev/null
+++ b/boost/StaticLibrary_boostsystem.mk
@@ -0,0 +1,27 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,boostsystem))
+
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,boostsystem))
+
+# disable "auto link" "feature" on MSVC
+$(eval $(call gb_StaticLibrary_add_defs,boostsystem,\
+	-DBOOST_ALL_NO_LIB \
+))
+
+$(eval $(call gb_StaticLibrary_use_external,boostsystem,boost_headers))
+
+$(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,boostsystem,cpp))
+
+$(eval $(call gb_StaticLibrary_add_generated_exception_objects,boostsystem,\
+	UnpackedTarball/boost/libs/system/src/error_code \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/boost/UnpackedTarball_boost.mk b/boost/UnpackedTarball_boost.mk
index ba497d0..274781a 100644
--- a/boost/UnpackedTarball_boost.mk
+++ b/boost/UnpackedTarball_boost.mk
@@ -8,64 +8,40 @@
 #
 
 boost_patches :=
-#https://svn.boost.org/trac/boost/ticket/3093
-boost_patches += boost.3093.warnings.patch
 #https://svn.boost.org/trac/boost/ticket/3780
 boost_patches += boost.3780.aliasing.patch
-#https://svn.boost.org/trac/boost/ticket/4127
-boost_patches += boost.4127.warnings.patch
 #https://svn.boost.org/trac/boost/ticket/4713
 boost_patches += boost.4713.warnings.patch
-#https://svn.boost.org/trac/boost/ticket/5119
-boost_patches += boost.5119.unordered_map-cp-ctor.patch
 #http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47679
 boost_patches += boost.gcc47679.patch
 #https://svn.boost.org/trac/boost/ticket/6369
 boost_patches += boost.6369.warnings.patch
 #https://svn.boost.org/trac/boost/ticket/6397
 boost_patches += boost.6397.warnings.patch
-#backport from boost 1.48.0 fix for "opcode not supported on this processor"
-boost_patches += boost.mipsbackport.patch
 #https://svn.boost.org/trac/boost/ticket/7551
 boost_patches += boost.7551.unusedvars.patch
 boost_patches += boost.4100.warnings.patch
 boost_patches += boost.4510.warnings.patch
-#https://svn.boost.org/trac/boost/ticket/6139
-boost_patches += boost.6139.clang.patch
-#https://svn.boost.org/trac/boost/ticket/6940
-boost_patches += boost.6940.glibc.patch
-#https://svn.boost.org/trac/boost/ticket/7774
-boost_patches += boost.7774.warnings.patch.1
 #https://svn.boost.org/trac/boost/ticket/6142
 boost_patches += boost.6142.warnings.patch.1
-boost_patches += boost.wundef.patch.1
-
-boost_patches += boost.windows.patch
-boost_patches += boost.vc2012.patch
 boost_patches += boost.libcdr.warnings.patch.1
 
 # Help static analysis tools (see SAL_UNUSED_PARAMETER in sal/types.h):
 ifeq (GCC,$(COM))
 boost_patches += boost_1_44_0-unused-parameters.patch
-boost_patches += boost_1_44_0-logical-op-parentheses.patch
 endif
 
-# Backporting fixes for the GCC 4.7 -std=c++11 mode from Boost 1.48.0:
-boost_patches += boost_1_44_0-gcc4.7.patch
-
 # Clang warnings:
 boost_patches += boost_1_44_0-clang-warnings.patch
 
-# Backport http://svn.boost.org/svn/boost/trunk r76133 "Fix threading detection
-# in GCC-4.7 experimental":
-boost_patches += boost_1_44_0-gthreads.patch
-
 boost_patches += boost_1_44_0-gcc4.8.patch
 
 # https://svn.boost.org/trac/boost/changeset/78496
 boost_patches += boost.4874.patch
 
-boost_patches += boost.ptree.patch
+boost_patches += boost.loplugin.patch
+boost_patches += boost.wundef.patch
+boost_patches += boost.wshadow.patch
 
 $(eval $(call gb_UnpackedTarball_UnpackedTarball,boost))
 
diff --git a/boost/boost.3093.warnings.patch b/boost/boost.3093.warnings.patch
deleted file mode 100755
index 1b2bf6d..0000000
--- a/boost/boost.3093.warnings.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- misc/boost_1_44_0/boost/logic/tribool.hpp	Sun Nov 25 18:07:19 2007
-+++ misc/build/boost_1_44_0/boost/logic/tribool.hpp	Fri May 17 12:03:35 2013
-@@ -93,7 +93,7 @@
-    *
-    * \throws nothrow
-    */
--  tribool(bool value) : value(value? true_value : false_value) {}
-+  tribool(bool initial_value) : value(initial_value? true_value : false_value) {}
- 
-   /**
-    * Construct a new 3-state boolean value with an indeterminate value.
diff --git a/boost/boost.3780.aliasing.patch b/boost/boost.3780.aliasing.patch
index 5ca5ed0..f279e33 100644
--- a/boost/boost.3780.aliasing.patch
+++ b/boost/boost.3780.aliasing.patch
@@ -1,43 +1,23 @@
 --- misc/boost_1_44_0/boost/function/function_base.hpp
 +++ misc/build/boost_1_44_0/boost/function/function_base.hpp
-@@ -2,6 +2,7 @@
- 
- //  Copyright Douglas Gregor 2001-2006
- //  Copyright Emil Dotchevski 2007
-+//  Copyright Dean Michael Berris 2009
- //  Use, modification and distribution is subject to the Boost Software License, Version 1.0.
- //  (See accompanying file LICENSE_1_0.txt or copy at
- //  http://www.boost.org/LICENSE_1_0.txt)
-@@ -44,6 +45,13 @@
- #   pragma warning( disable : 4127 ) // "conditional expression is constant"
- #endif       
- 
-+#if defined(__GNUC__)
-+// Because GCC complains of strict aliasing problems, we make it
-+// treat the header as a system header, becoming more forgiving with
-+// treating implementation details that may be potentially harmful.
-+# pragma GCC system_header
-+#endif
-+
- // Define BOOST_FUNCTION_STD_NS to the namespace that contains type_info.
- #ifdef BOOST_NO_STD_TYPEINFO
- // Embedded VC++ does not have type_info in namespace std
 @@ -314,15 +322,15 @@
          {
            if (op == clone_functor_tag || op == move_functor_tag) {
              const functor_type* in_functor = 
 -              reinterpret_cast<const functor_type*>(&in_buffer.data);
 +              static_cast<const functor_type*>(static_cast<void*>(&in_buffer.data));
-             new ((void*)&out_buffer.data) functor_type(*in_functor);
+             new (reinterpret_cast<void*>(&out_buffer.data)) functor_type(*in_functor);
  
              if (op == move_functor_tag) {
--              reinterpret_cast<functor_type*>(&in_buffer.data)->~Functor();
-+              static_cast<functor_type*>(static_cast<void*>(&in_buffer.data))->~Functor();
+-              functor_type* f = reinterpret_cast<functor_type*>(&in_buffer.data);
++              functor_type* f = static_cast<functor_type*>(static_cast<void*>(&in_buffer.data));
+               (void)f; // suppress warning about the value of f not being used (MSVC)
+               f->~Functor();
              }
            } else if (op == destroy_functor_tag) {
              // Some compilers (Borland, vc6, ...) are unhappy with ~functor_type.
--            reinterpret_cast<functor_type*>(&out_buffer.data)->~Functor();
-+            static_cast<functor_type*>(static_cast<void*>(&out_buffer.data))->~Functor();
+-             functor_type* f = reinterpret_cast<functor_type*>(&out_buffer.data);
++             functor_type* f = static_cast<functor_type*>(static_cast<void*>(&out_buffer.data));
+              (void)f; // suppress warning about the value of f not being used (MSVC)
+              f->~Functor();
            } else if (op == check_functor_type_tag) {
-             const detail::sp_typeinfo& check_type 
-               = *out_buffer.type.type;
diff --git a/boost/boost.4127.warnings.patch b/boost/boost.4127.warnings.patch
deleted file mode 100644
index fe3c2bf..0000000
--- a/boost/boost.4127.warnings.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- misc/boost_1_44_0/boost/smart_ptr/make_shared.hpp
-+++ misc/build/boost_1_44_0/boost/smart_ptr/make_shared.hpp
-@@ -49,7 +49,18 @@
-     {
-         if( initialized_ )
-         {
-+#if defined( __GNUC__ )
-+
-+            // fixes incorrect aliasing warning
-+            T * p = reinterpret_cast< T* >( storage_.data_ );
-+            p->~T();
-+
-+#else
-+
-             reinterpret_cast< T* >( storage_.data_ )->~T();
-+
-+#endif
-+
-             initialized_ = false;
-         }
-     }
diff --git a/boost/boost.4713.warnings.patch b/boost/boost.4713.warnings.patch
index d1224f6..7a5726e 100644
--- a/boost/boost.4713.warnings.patch
+++ b/boost/boost.4713.warnings.patch
@@ -72,20 +72,6 @@
              BOOST_ASSERT( first <= last && "out of range unique()/erase_if()" );
              BOOST_ASSERT( this->begin() <= first && "out of range unique()/erase_if()" );
              BOOST_ASSERT( last <= this->end() && "out of range unique()/erase_if)(" );             
---- misc/boost_1_44_0/boost/spirit/home/classic/error_handling/exceptions.hpp	2010-04-07 02:41:42.000000000 +0200
-+++ misc/build/boost_1_44_0/boost/spirit/home/classic/error_handling/exceptions.hpp	2011-02-04 16:39:19.000000000 +0100
-@@ -222,9 +222,9 @@
- 
-         error_status(
-             result_t result_ = fail,
--            std::ptrdiff_t length = -1,
-+            std::ptrdiff_t length_ = -1,
-             T const& value_ = T())
--        : result(result_), length(length), value(value_) {}
-+        : result(result_), length(length_), value(value_) {}
- 
-         result_t        result;
-         std::ptrdiff_t  length;
 --- misc/boost_1_44_0/boost/spirit/home/classic/symbols/symbols.hpp	2008-06-22 17:05:38.000000000 +0200
 +++ misc/build/boost_1_44_0/boost/spirit/home/classic/symbols/symbols.hpp	2011-02-04 16:39:19.000000000 +0100
 @@ -102,13 +102,13 @@
@@ -106,563 +92,6 @@
                      first,
                      scan.first);
          else
---- misc/boost_1_44_0/boost/spirit/home/classic/utility/functor_parser.hpp	2008-06-22 17:05:38.000000000 +0200
-+++ misc/build/boost_1_44_0/boost/spirit/home/classic/utility/functor_parser.hpp	2011-02-04 16:39:19.000000000 +0100
-@@ -54,13 +54,13 @@
-             typedef typename ScannerT::iterator_t   iterator_t;
- 
-             iterator_t const s(scan.first);
--            functor_result_t result;
--            std::ptrdiff_t len = functor(scan, result);
-+            functor_result_t functor_result;
-+            std::ptrdiff_t len = functor(scan, functor_result);
- 
-             if (len < 0)
-                 return scan.no_match();
-             else
--                return scan.create_match(std::size_t(len), result, s, scan.first);
-+                return scan.create_match(std::size_t(len), functor_result, s, scan.first);
-         }
-     };
- 
---- misc/boost_1_44_0/boost/spirit/home/classic/utility/loops.hpp	2008-06-22 17:05:38.000000000 +0200
-+++ misc/build/boost_1_44_0/boost/spirit/home/classic/utility/loops.hpp	2011-02-04 16:39:19.000000000 +0100
-@@ -47,8 +47,8 @@
-         typedef fixed_loop<ParserT, ExactT>     self_t;
-         typedef unary<ParserT, parser<self_t> >  base_t;
- 
--        fixed_loop (ParserT const & subject, ExactT const & exact)
--        : base_t(subject), m_exact(exact) {}
-+        fixed_loop (ParserT const & subject_, ExactT const & exact)
-+        : base_t(subject_), m_exact(exact) {}
- 
-         template <typename ScannerT>
-         typename parser_result <self_t, ScannerT>::type
-@@ -112,8 +112,8 @@
-         typedef finite_loop <ParserT, MinT, MaxT> self_t;
-         typedef unary<ParserT, parser<self_t> >   base_t;
- 
--        finite_loop (ParserT const & subject, MinT const & min, MaxT const & max)
--        : base_t(subject), m_min(min), m_max(max) {}
-+        finite_loop (ParserT const & subject_, MinT const & min, MaxT const & max)
-+        : base_t(subject_), m_min(min), m_max(max) {}
- 
-         template <typename ScannerT>
-         typename parser_result <self_t, ScannerT>::type
-@@ -196,11 +196,11 @@
-         typedef unary<ParserT, parser<self_t> > base_t;
- 
-         infinite_loop (
--            ParserT const& subject,
-+            ParserT const& subject_,
-             MinT const& min,
-             more_t const&
-         )
--        : base_t(subject), m_min(min) {}
-+        : base_t(subject_), m_min(min) {}
- 
-         template <typename ScannerT>
-         typename parser_result <self_t, ScannerT>::type
-@@ -253,9 +253,9 @@
- 
-         template <typename ParserT>
-         fixed_loop <ParserT, ExactT>
--        operator[](parser <ParserT> const & subject) const
-+        operator[](parser <ParserT> const & subject_) const
-         {
--            return fixed_loop <ParserT, ExactT> (subject.derived (), m_exact);
-+            return fixed_loop <ParserT, ExactT> (subject_.derived (), m_exact);
-         }
- 
-         ExactT m_exact;
-@@ -283,11 +283,11 @@
- 
-        template <typename ParserT>
-        typename impl::loop_traits<ParserT, MinT, MaxT>::type
--       operator[](parser <ParserT> const & subject) const
-+       operator[](parser <ParserT> const & subject_) const
-        {
-            typedef typename impl::loop_traits<ParserT, MinT, MaxT>::type ret_t;
-            return ret_t(
--                subject.derived(),
-+                subject_.derived(),
-                 m_min,
-                 m_max);
-        }
---- misc/boost_1_44_0/boost/unordered/detail/table.hpp	2011-02-04 16:55:26.000000000 +0100
-+++ misc/build/boost_1_44_0/boost/unordered/detail/table.hpp	2011-02-05 03:34:26.000000000 +0100
-@@ -33,10 +33,10 @@
-     template <class T>
-     template <class Key, class Pred>
-     inline BOOST_DEDUCED_TYPENAME T::node_ptr
--        hash_table<T>::find_iterator(bucket_ptr bucket, Key const& k,
-+        hash_table<T>::find_iterator(bucket_ptr bucket_, Key const& k,
-             Pred const& eq) const
-     {
--        node_ptr it = bucket->next_;
-+        node_ptr it = bucket_->next_;
-         while (BOOST_UNORDERED_BORLAND_BOOL(it) &&
-             !eq(k, get_key(node::get_value(it))))
-         {
-@@ -50,9 +50,9 @@
-     template <class T>
-     inline BOOST_DEDUCED_TYPENAME T::node_ptr
-         hash_table<T>::find_iterator(
--            bucket_ptr bucket, key_type const& k) const
-+            bucket_ptr bucket_, key_type const& k) const
-     {
--        node_ptr it = bucket->next_;
-+        node_ptr it = bucket_->next_;
-         while (BOOST_UNORDERED_BORLAND_BOOL(it) &&
-             !equal(k, node::get_value(it)))
-         {
-@@ -75,9 +75,9 @@
-     template <class T>
-     inline BOOST_DEDUCED_TYPENAME T::node_ptr*
-         hash_table<T>::find_for_erase(
--            bucket_ptr bucket, key_type const& k) const
-+            bucket_ptr bucket_, key_type const& k) const
-     {
--        node_ptr* it = &bucket->next_;
-+        node_ptr* it = &bucket_->next_;
-         while(BOOST_UNORDERED_BORLAND_BOOL(*it) &&
-             !equal(k, node::get_value(*it)))
-         {
-@@ -475,7 +475,7 @@
-     {    
-         hasher const& hf = this->hash_function();
-         std::size_t size = this->size_;
--        bucket_ptr end = this->get_bucket(this->bucket_count_);
-+        bucket_ptr end_ = this->get_bucket(this->bucket_count_);
- 
-         buckets dst(this->node_alloc(), num_buckets);
-         dst.create_buckets();
-@@ -484,10 +484,10 @@
-         src.swap(*this);
-         this->size_ = 0;
- 
--        for(bucket_ptr bucket = this->cached_begin_bucket_;
--            bucket != end; ++bucket)
-+        for(bucket_ptr bucket_ = this->cached_begin_bucket_;
-+            bucket_ != end_; ++bucket_)
-         {
--            node_ptr group = bucket->next_;
-+            node_ptr group = bucket_->next_;
-             while(group) {
-                 // Move the first group of equivalent nodes in bucket to dst.
- 
-@@ -496,10 +496,10 @@
-                     hf(get_key_from_ptr(group)));
- 
-                 node_ptr& next_group = node::next_group(group);
--                bucket->next_ = next_group;
-+                bucket_->next_ = next_group;
-                 next_group = dst_bucket->next_;
-                 dst_bucket->next_ = group;
--                group = bucket->next_;
-+                group = bucket_->next_;
-             }
-         }
- 
-@@ -525,13 +525,13 @@
-         BOOST_ASSERT(this->buckets_ && !dst.buckets_);
- 
-         hasher const& hf = this->hash_function();
--        bucket_ptr end = this->get_bucket(this->bucket_count_);
-+        bucket_ptr end_ = this->get_bucket(this->bucket_count_);
- 
-         node_constructor a(dst);
-         dst.create_buckets();
- 
-         // no throw:
--        for(bucket_ptr i = this->cached_begin_bucket_; i != end; ++i) {
-+        for(bucket_ptr i = this->cached_begin_bucket_; i != end_; ++i) {
-             // no throw:
-             for(node_ptr it = i->next_; it;) {
-                 // hash function can throw.
-@@ -579,11 +579,11 @@
-     {
-         if(!this->size_) return this->end();
- 
--        bucket_ptr bucket = this->get_bucket(this->bucket_index(k));
--        node_ptr it = find_iterator(bucket, k);
-+        bucket_ptr bucket_ = this->get_bucket(this->bucket_index(k));
-+        node_ptr it = find_iterator(bucket_, k);
- 
-         if (BOOST_UNORDERED_BORLAND_BOOL(it))
--            return iterator_base(bucket, it);
-+            return iterator_base(bucket_, it);
-         else
-             return this->end();
-     }
-@@ -595,11 +595,11 @@
-     {
-         if(!this->size_) return this->end();
- 
--        bucket_ptr bucket = this->get_bucket(h(k) % this->bucket_count_);
--        node_ptr it = find_iterator(bucket, k, eq);
-+        bucket_ptr bucket_ = this->get_bucket(h(k) % this->bucket_count_);
-+        node_ptr it = find_iterator(bucket_, k, eq);
- 
-         if (BOOST_UNORDERED_BORLAND_BOOL(it))
--            return iterator_base(bucket, it);
-+            return iterator_base(bucket_, it);
-         else
-             return this->end();
-     }
-@@ -611,8 +611,8 @@
-         if(!this->size_)
-             boost::throw_exception(std::out_of_range("Unable to find key in unordered_map."));
- 
--        bucket_ptr bucket = this->get_bucket(this->bucket_index(k));
--        node_ptr it = find_iterator(bucket, k);
-+        bucket_ptr bucket_ = this->get_bucket(this->bucket_index(k));
-+        node_ptr it = find_iterator(bucket_, k);
- 
-         if (!it)
-             boost::throw_exception(std::out_of_range("Unable to find key in unordered_map."));
-@@ -630,10 +630,10 @@
-         if(!this->size_)
-             return iterator_pair(this->end(), this->end());
- 
--        bucket_ptr bucket = this->get_bucket(this->bucket_index(k));
--        node_ptr it = find_iterator(bucket, k);
-+        bucket_ptr bucket_ = this->get_bucket(this->bucket_index(k));
-+        node_ptr it = find_iterator(bucket_, k);
-         if (BOOST_UNORDERED_BORLAND_BOOL(it)) {
--            iterator_base first(iterator_base(bucket, it));
-+            iterator_base first(iterator_base(bucket_, it));
-             iterator_base second(first);
-             second.increment_bucket(node::next_group(second.node_));
-             return iterator_pair(first, second);
-@@ -651,26 +651,26 @@
-     {
-         if(!this->size_) return;
- 
--        bucket_ptr end = this->get_bucket(this->bucket_count_);
--        for(bucket_ptr begin = this->buckets_; begin != end; ++begin) {
--            this->clear_bucket(begin);
-+        bucket_ptr end_ = this->get_bucket(this->bucket_count_);
-+        for(bucket_ptr begin_ = this->buckets_; begin_ != end_; ++begin_) {
-+            this->clear_bucket(begin_);
-         }
- 
-         this->size_ = 0;
--        this->cached_begin_bucket_ = end;
-+        this->cached_begin_bucket_ = end_;
-     }
- 
-     template <class T>
-     inline std::size_t hash_table<T>::erase_group(
--        node_ptr* it, bucket_ptr bucket)
-+        node_ptr* it, bucket_ptr bucket_)
-     {
-         node_ptr pos = *it;
--        node_ptr end = node::next_group(pos);
--        *it = end;
--        std::size_t count = this->delete_nodes(pos, end);
--        this->size_ -= count;
--        this->recompute_begin_bucket(bucket);
--        return count;
-+        node_ptr end_ = node::next_group(pos);
-+        *it = end_;
-+        std::size_t count_ = this->delete_nodes(pos, end_);
-+        this->size_ -= count_;
-+        this->recompute_begin_bucket(bucket_);
-+        return count_;
-     }
-     
-     template <class T>
-@@ -679,11 +679,11 @@
-         if(!this->size_) return 0;
-     
-         // No side effects in initial section
--        bucket_ptr bucket = this->get_bucket(this->bucket_index(k));
--        node_ptr* it = this->find_for_erase(bucket, k);
-+        bucket_ptr bucket_ = this->get_bucket(this->bucket_index(k));
-+        node_ptr* it = this->find_for_erase(bucket_, k);
- 
-         // No throw.
--        return *it ? this->erase_group(it, bucket) : 0;
-+        return *it ? this->erase_group(it, bucket_) : 0;
-     }
- 
-     template <class T>
-@@ -766,12 +766,12 @@
-         std::size_t hash_value = this->hash_function()(k);
-         if(this->buckets_) this->reserve_for_insert(size);
-         else this->create_for_insert(size);
--        bucket_ptr bucket = this->bucket_ptr_from_hash(hash_value);
-+        bucket_ptr bucket_ = this->bucket_ptr_from_hash(hash_value);
-         node_ptr n = a.release();
--        node::add_to_bucket(n, *bucket);
-+        node::add_to_bucket(n, *bucket_);
-         ++this->size_;
--        this->cached_begin_bucket_ = bucket;
--        return iterator_base(bucket, n);
-+        this->cached_begin_bucket_ = bucket_;
-+        return iterator_base(bucket_, n);
-     }
- }}
- 
---- misc/boost_1_44_0/boost/unordered/detail/unique.hpp	2011-02-05 03:28:39.000000000 +0100
-+++ misc/build/boost_1_44_0/boost/unordered/detail/unique.hpp	2011-02-05 03:36:54.000000000 +0100
-@@ -57,7 +57,7 @@
- 
-         bool equals(hash_unique_table const&) const;
- 
--        node_ptr add_node(node_constructor& a, bucket_ptr bucket);
-+        node_ptr add_node(node_constructor& a, bucket_ptr bucket_);
-         
- #if defined(BOOST_UNORDERED_STD_FORWARD)
- 
-@@ -135,8 +135,8 @@
-         if(this->size_ != other.size_) return false;
-         if(!this->size_) return true;
- 
--        bucket_ptr end = this->get_bucket(this->bucket_count_);
--        for(bucket_ptr i = this->cached_begin_bucket_; i != end; ++i)
-+        bucket_ptr end_ = this->get_bucket(this->bucket_count_);
-+        for(bucket_ptr i = this->cached_begin_bucket_; i != end_; ++i)
-         {
-             node_ptr it1 = i->next_;
-             while(BOOST_UNORDERED_BORLAND_BOOL(it1))
-@@ -159,13 +159,13 @@
-     template <class T>
-     inline BOOST_DEDUCED_TYPENAME hash_unique_table<T>::node_ptr
-         hash_unique_table<T>::add_node(node_constructor& a,
--            bucket_ptr bucket)
-+            bucket_ptr bucket_)
-     {
-         node_ptr n = a.release();
--        node::add_to_bucket(n, *bucket);
-+        node::add_to_bucket(n, *bucket_);
-         ++this->size_;
--        if(bucket < this->cached_begin_bucket_)
--            this->cached_begin_bucket_ = bucket;
-+        if(bucket_ < this->cached_begin_bucket_)
-+            this->cached_begin_bucket_ = bucket_;
-         return n;
-     }
-         
-@@ -181,7 +181,7 @@
-         typedef BOOST_DEDUCED_TYPENAME value_type::second_type mapped_type;
- 
-         std::size_t hash_value = this->hash_function()(k);
--        bucket_ptr bucket = this->bucket_ptr_from_hash(hash_value);
-+        bucket_ptr bucket_ = this->bucket_ptr_from_hash(hash_value);
-         
-         if(!this->buckets_) {
-             node_constructor a(*this);
-@@ -189,7 +189,7 @@
-             return *this->emplace_empty_impl_with_node(a, 1);
-         }
- 
--        node_ptr pos = this->find_iterator(bucket, k);
-+        node_ptr pos = this->find_iterator(bucket_, k);
- 
-         if (BOOST_UNORDERED_BORLAND_BOOL(pos)) {
-             return node::get_value(pos);
-@@ -205,11 +205,11 @@
-             // reserve has basic exception safety if the hash function
-             // throws, strong otherwise.
-             if(this->reserve_for_insert(this->size_ + 1))
--                bucket = this->bucket_ptr_from_hash(hash_value);
-+                bucket_ = this->bucket_ptr_from_hash(hash_value);
- 
-             // Nothing after this point can throw.
- 
--            return node::get_value(add_node(a, bucket));
-+            return node::get_value(add_node(a, bucket_));
-         }
-     }
- 
-@@ -220,22 +220,22 @@
-         // No side effects in this initial code
-         key_type const& k = this->get_key(a.value());
-         std::size_t hash_value = this->hash_function()(k);
--        bucket_ptr bucket = this->bucket_ptr_from_hash(hash_value);
--        node_ptr pos = this->find_iterator(bucket, k);
-+        bucket_ptr bucket_ = this->bucket_ptr_from_hash(hash_value);
-+        node_ptr pos = this->find_iterator(bucket_, k);
-         
-         if (BOOST_UNORDERED_BORLAND_BOOL(pos)) {
-             // Found an existing key, return it (no throw).
--            return emplace_return(iterator_base(bucket, pos), false);
-+            return emplace_return(iterator_base(bucket_, pos), false);
-         } else {
-             // reserve has basic exception safety if the hash function
-             // throws, strong otherwise.
-             if(this->reserve_for_insert(this->size_ + 1))
--                bucket = this->bucket_ptr_from_hash(hash_value);
-+                bucket_ = this->bucket_ptr_from_hash(hash_value);
- 
-             // Nothing after this point can throw.
- 
-             return emplace_return(
--                iterator_base(bucket, add_node(a, bucket)),
-+                iterator_base(bucket_, add_node(a, bucket_)),
-                 true);
-         }
-     }
-@@ -250,12 +250,12 @@
-     {
-         // No side effects in this initial code
-         std::size_t hash_value = this->hash_function()(k);
--        bucket_ptr bucket = this->bucket_ptr_from_hash(hash_value);
--        node_ptr pos = this->find_iterator(bucket, k);
-+        bucket_ptr bucket_ = this->bucket_ptr_from_hash(hash_value);
-+        node_ptr pos = this->find_iterator(bucket_, k);
- 
-         if (BOOST_UNORDERED_BORLAND_BOOL(pos)) {
-             // Found an existing key, return it (no throw).
--            return emplace_return(iterator_base(bucket, pos), false);
-+            return emplace_return(iterator_base(bucket_, pos), false);
- 
-         } else {
-             // Doesn't already exist, add to bucket.
-@@ -269,12 +269,12 @@
-             // reserve has basic exception safety if the hash function
-             // throws, strong otherwise.
-             if(this->reserve_for_insert(this->size_ + 1))
--                bucket = this->bucket_ptr_from_hash(hash_value);
-+                bucket_ = this->bucket_ptr_from_hash(hash_value);
- 
-             // Nothing after this point can throw.
- 
-             return emplace_return(
--                iterator_base(bucket, add_node(a, bucket)),
-+                iterator_base(bucket_, add_node(a, bucket_)),
-                 true);
-         }
-     }
-@@ -313,21 +313,21 @@
-                 BOOST_UNORDERED_FUNCTION_PARAMS(z, num_params))                \
-     {                                                                          \
-         std::size_t hash_value = this->hash_function()(k);                     \
--        bucket_ptr bucket                                                      \
-+        bucket_ptr bucket_                                                      \
-             = this->bucket_ptr_from_hash(hash_value);                          \
--        node_ptr pos = this->find_iterator(bucket, k);                         \
-+        node_ptr pos = this->find_iterator(bucket_, k);                         \
-                                                                                \
-         if (BOOST_UNORDERED_BORLAND_BOOL(pos)) {                               \
--            return emplace_return(iterator_base(bucket, pos), false);          \
-+            return emplace_return(iterator_base(bucket_, pos), false);          \
-         } else {                                                               \
-             node_constructor a(*this);                                         \
-             a.construct(BOOST_UNORDERED_CALL_PARAMS(z, num_params));           \
-                                                                                \
-             if(this->reserve_for_insert(this->size_ + 1))                      \
--                bucket = this->bucket_ptr_from_hash(hash_value);               \
-+                bucket_ = this->bucket_ptr_from_hash(hash_value);               \
-                                                                                \
--            return emplace_return(iterator_base(bucket,                        \
--                add_node(a, bucket)), true);                                   \
-+            return emplace_return(iterator_base(bucket_,                        \
-+                add_node(a, bucket_)), true);                                   \
-         }                                                                      \
-     }                                                                          \
-                                                                                \
-@@ -441,8 +441,8 @@
-             // different second_type.
-             key_type const& k = extractor::extract(*i);
-             std::size_t hash_value = this->hash_function()(k);
--            bucket_ptr bucket = this->bucket_ptr_from_hash(hash_value);
--            node_ptr pos = this->find_iterator(bucket, k);
-+            bucket_ptr bucket_ = this->bucket_ptr_from_hash(hash_value);
-+            node_ptr pos = this->find_iterator(bucket_, k);
- 
-             if (!BOOST_UNORDERED_BORLAND_BOOL(pos)) {
-                 // Doesn't already exist, add to bucket.
-@@ -456,11 +456,11 @@
-                 // throws, strong otherwise.
-                 if(this->size_ + 1 >= this->max_load_) {
-                     this->reserve_for_insert(this->size_ + insert_size(i, j));
--                    bucket = this->bucket_ptr_from_hash(hash_value);
-+                    bucket_ = this->bucket_ptr_from_hash(hash_value);
-                 }
- 
-                 // Nothing after this point can throw.
--                add_node(a, bucket);
-+                add_node(a, bucket_);
-             }
-         } while(++i != j);
-     }
---- misc/boost_1_44_0/boost/unordered/detail/equivalent.hpp	2010-06-09 01:23:43.000000000 +0200
-+++ misc/build/boost_1_44_0/boost/unordered/detail/equivalent.hpp	2011-02-05 04:15:47.000000000 +0100
-@@ -57,7 +57,7 @@
-         bool equals(hash_equivalent_table const&) const;
- 
-         inline node_ptr add_node(node_constructor& a,
--            bucket_ptr bucket, node_ptr pos);
-+            bucket_ptr bucket_, node_ptr pos);
- 
- #if defined(BOOST_UNORDERED_STD_FORWARD)
- 
-@@ -117,8 +117,8 @@
-         if(this->size_ != other.size_) return false;
-         if(!this->size_) return true;
- 
--        bucket_ptr end = this->get_bucket(this->bucket_count_);
--        for(bucket_ptr i = this->cached_begin_bucket_; i != end; ++i)
-+        bucket_ptr end_ = this->get_bucket(this->bucket_count_);
-+        for(bucket_ptr i = this->cached_begin_bucket_; i != end_; ++i)
-         {
-             node_ptr it1 = i->next_;
-             while(BOOST_UNORDERED_BORLAND_BOOL(it1))
-@@ -149,16 +149,16 @@
-     template <class T>
-     inline BOOST_DEDUCED_TYPENAME hash_equivalent_table<T>::node_ptr
-         hash_equivalent_table<T>
--            ::add_node(node_constructor& a, bucket_ptr bucket, node_ptr pos)
-+            ::add_node(node_constructor& a, bucket_ptr bucket_, node_ptr pos)
-     {
-         node_ptr n = a.release();
-         if(BOOST_UNORDERED_BORLAND_BOOL(pos)) {
-             node::add_after_node(n, pos);                
-         }
-         else {
--            node::add_to_bucket(n, *bucket);
--            if(bucket < this->cached_begin_bucket_)
--                this->cached_begin_bucket_ = bucket;
-+            node::add_to_bucket(n, *bucket_);
-+            if(bucket_ < this->cached_begin_bucket_)
-+                this->cached_begin_bucket_ = bucket_;
-         }
-         ++this->size_;
-         return n;
-@@ -179,15 +179,15 @@
-             return this->emplace_empty_impl_with_node(a, 1);
-         }
-         else {
--            bucket_ptr bucket = this->bucket_ptr_from_hash(hash_value);
--            node_ptr position = this->find_iterator(bucket, k);
-+            bucket_ptr bucket_ = this->bucket_ptr_from_hash(hash_value);
-+            node_ptr position = this->find_iterator(bucket_, k);
- 
-             // reserve has basic exception safety if the hash function
-             // throws, strong otherwise.
-             if(this->reserve_for_insert(this->size_ + 1))
--                bucket = this->bucket_ptr_from_hash(hash_value);
-+                bucket_ = this->bucket_ptr_from_hash(hash_value);
- 
--            return iterator_base(bucket, add_node(a, bucket, position));
-+            return iterator_base(bucket_, add_node(a, bucket_, position));
-         }
-     }
-     
-@@ -196,8 +196,8 @@
-             ::emplace_impl_no_rehash(node_constructor& a)
-     {
-         key_type const& k = this->get_key(a.value());
--        bucket_ptr bucket = this->get_bucket(this->bucket_index(k));
--        add_node(a, bucket, this->find_iterator(bucket, k));
-+        bucket_ptr bucket_ = this->get_bucket(this->bucket_index(k));
-+        add_node(a, bucket_, this->find_iterator(bucket_, k));
-     }
- 
- #if defined(BOOST_UNORDERED_STD_FORWARD)
 --- misc/boost_1_44_0/boost/ptr_container/exception.hpp	2011-02-05 09:42:56.074932485 +0000
 +++ misc/build/boost_1_44_0/boost/ptr_container/exception.hpp	2011-02-05 09:43:00.350931536 +0000
 @@ -24,7 +24,7 @@
@@ -838,61 +267,6 @@
          }           
                  
      public: // algorithms
---- misc/boost_1_44_0/boost/unordered/detail/table.hpp	2011-02-10 15:04:57.999046223 +0000
-+++ misc/build/boost_1_44_0/boost/unordered/detail/table.hpp	2011-02-10 15:05:44.260588237 +0000
-@@ -119,7 +119,7 @@
- 
-         // From 6.3.1/13:
-         // Only resize when size >= mlf_ * count
--        return double_to_size_t(ceil((double) mlf_ * this->bucket_count_));
-+        return double_to_size_t(ceil((double)mlf_ * (double)this->bucket_count_));
-     }
- 
-     template <class T>
-@@ -145,7 +145,7 @@
-         //
-         // Or from rehash post-condition:
-         // count > size / mlf_
--        return next_prime(double_to_size_t(floor(size / (double) mlf_)) + 1);
-+        return next_prime(double_to_size_t(floor((double)size / (double)mlf_)) + 1);
-     }
- 
-     ////////////////////////////////////////////////////////////////////////////
---- misc/boost_1_44_0/boost/functional/hash/detail/hash_float_generic.hpp	2011-02-10 14:50:52.173229648 +0000
-+++ misc/build/boost_1_44_0/boost/functional/hash/detail/hash_float_generic.hpp	2011-02-10 14:52:36.824433976 +0000
-@@ -53,7 +53,7 @@
- 
-             v = ldexp(v, limits<std::size_t>::digits);
-             std::size_t seed = static_cast<std::size_t>(v);
--            v -= seed;
-+            v -= static_cast<T>(seed);
- 
-             // ceiling(digits(T) * log2(radix(T))/ digits(size_t)) - 1;
-             std::size_t const length
-@@ -66,7 +66,7 @@
-             {
-                 v = ldexp(v, limits<std::size_t>::digits);
-                 std::size_t part = static_cast<std::size_t>(v);
--                v -= part;
-+                v -= static_cast<T>(part);
-                 hash_float_combine(seed, part);
-             }
- 
---- misc/boost_1_44_0/boost/dynamic_bitset.hpp	2011-02-28 17:10:13.892131527 +0000
-+++ misc/build/boost_1_44_0/boost/dynamic_bitset/dynamic_bitset.hpp	2011-02-28 17:11:05.868726195 +0000
-@@ -1108,10 +1108,10 @@
-   // beyond the "allowed" positions
-   typedef unsigned long result_type;
- 
--  const size_type max_size =
-+  const size_type max_size_ =
-             (std::min)(m_num_bits, static_cast<size_type>(ulong_width));
- 
--  const size_type last_block = block_index( max_size - 1 );
-+  const size_type last_block = block_index( max_size_ - 1 );
- 
-   assert((last_block * bits_per_block) < static_cast<size_type>(ulong_width));
- 
 --- misc/boost_1_44_0/boost/ptr_container/detail/reversible_ptr_container.hpp	2011-03-04 11:33:36.269274940 +0000
 +++ misc/build/boost_1_44_0/boost/ptr_container/detail/reversible_ptr_container.hpp	2011-03-04 11:33:36.269274940 +0000
 @@ -259,6 +259,10 @@
@@ -906,171 +280,3 @@
              if( !allow_null )
              {
                  BOOST_PTR_CONTAINER_THROW_EXCEPTION( 0 == x && "null not allowed", 
---- misc/boost_1_44_0/boost/pool/object_pool.hpp	2011-07-14 16:08:31.672964851 +0100
-+++ misc/build/boost_1_44_0/boost/pool/object_pool.hpp	2011-07-14 16:09:20.851594534 +0100
-@@ -53,8 +53,8 @@
- 
-   public:
-     // This constructor parameter is an extension!
--    explicit object_pool(const size_type next_size = 32)
--    :pool<UserAllocator>(sizeof(T), next_size) { }
-+    explicit object_pool(const size_type next_size_ = 32)
-+    :pool<UserAllocator>(sizeof(T), next_size_) { }
- 
-     ~object_pool();
- 
---- misc/boost_1_44_0/libs/date_time/src/gregorian/greg_month.cpp	2008-11-23 12:13:35.000000000 +0100
-+++ misc/build/boost_1_44_0/libs/date_time/src/gregorian/greg_month.cpp	2011-10-05 16:56:34.627320523 +0200
-@@ -108,7 +108,7 @@
-    */
-   BOOST_DATE_TIME_DECL 
-   boost::date_time::all_date_names_put<greg_facet_config, char>* 
--  create_facet_def(char type)
-+  create_facet_def(char /* type */)
-   {
-     typedef 
-       boost::date_time::all_date_names_put<greg_facet_config, char> facet_def;
-@@ -121,7 +121,7 @@
-   }
-   
-   //! generates a locale with the set of gregorian name-strings of type char*
--  BOOST_DATE_TIME_DECL std::locale generate_locale(std::locale& loc, char type){
-+  BOOST_DATE_TIME_DECL std::locale generate_locale(std::locale& loc, char /* type */){
-     typedef boost::date_time::all_date_names_put<greg_facet_config, char> facet_def;
-     return std::locale(loc, new facet_def(short_month_names,
-                                           long_month_names,
-@@ -139,7 +139,7 @@
-    */
-   BOOST_DATE_TIME_DECL 
-   boost::date_time::all_date_names_put<greg_facet_config, wchar_t>* 
--  create_facet_def(wchar_t type)
-+  create_facet_def(wchar_t /* type */)
-   {
-     typedef 
-       boost::date_time::all_date_names_put<greg_facet_config,wchar_t> facet_def;
-@@ -152,7 +152,7 @@
-   }
- 
-   //! generates a locale with the set of gregorian name-strings of type wchar_t*
--  BOOST_DATE_TIME_DECL std::locale generate_locale(std::locale& loc, wchar_t type){
-+  BOOST_DATE_TIME_DECL std::locale generate_locale(std::locale& loc, wchar_t /* type */){
-     typedef boost::date_time::all_date_names_put<greg_facet_config, wchar_t> facet_def;
-     return std::locale(loc, new facet_def(w_short_month_names,
-                                           w_long_month_names,
---- misc/boost_1_44_0/boost/date_time/time_facet.hpp	2012-08-20 09:12:51.552094137 +0100
-+++ misc/build/boost_1_44_0/boost/date_time/time_facet.hpp	2012-08-20 09:10:07.884255317 +0100
-@@ -439,31 +439,31 @@
-                               a_time_dur.get_rep().as_special());
-       }
- 
--      string_type format(m_time_duration_format);
-+      string_type lcl_format(m_time_duration_format);
-       if (a_time_dur.is_negative()) {
-         // replace %- with minus sign.  Should we use the numpunct facet?
--        boost::algorithm::replace_all(format,
-+        boost::algorithm::replace_all(lcl_format,
-                                       duration_sign_negative_only,
-                                       negative_sign);
-           // remove all the %+ in the string with '-'
--        boost::algorithm::replace_all(format,
-+        boost::algorithm::replace_all(lcl_format,
-                                       duration_sign_always,
-                                       negative_sign);
-       }
-       else { //duration is positive
-         // remove all the %- combos from the string
--        boost::algorithm::erase_all(format, duration_sign_negative_only);
-+        boost::algorithm::erase_all(lcl_format, duration_sign_negative_only);
-         // remove all the %+ in the string with '+'
--        boost::algorithm::replace_all(format,
-+        boost::algorithm::replace_all(lcl_format,
-                                       duration_sign_always,
-                                       positive_sign);
-       }
- 
-       // %T and %R have to be replaced here since they are not standard
--      boost::algorithm::replace_all(format,
-+      boost::algorithm::replace_all(lcl_format,
-         boost::as_literal(formats_type::full_24_hour_time_format),
-         boost::as_literal(formats_type::full_24_hour_time_expanded_format));
--      boost::algorithm::replace_all(format,
-+      boost::algorithm::replace_all(lcl_format,
-         boost::as_literal(formats_type::short_24_hour_time_format),
-         boost::as_literal(formats_type::short_24_hour_time_expanded_format));
- 
-@@ -476,22 +476,22 @@
-        * here ourself.
-        */
-       string_type hours_str;
--      if (format.find(unrestricted_hours_format) != string_type::npos) {
-+      if (lcl_format.find(unrestricted_hours_format) != string_type::npos) {
-         hours_str = hours_as_string(a_time_dur);
--        boost::algorithm::replace_all(format, unrestricted_hours_format, hours_str);
-+        boost::algorithm::replace_all(lcl_format, unrestricted_hours_format, hours_str);
-       }
-       // We still have to process restricted hours format specifier. In order to
-       // support parseability of durations in ISO format (%H%M%S), we'll have to
-       // restrict the stringified hours length to 2 characters.
--      if (format.find(hours_format) != string_type::npos) {
-+      if (lcl_format.find(hours_format) != string_type::npos) {
-         if (hours_str.empty())
-           hours_str = hours_as_string(a_time_dur);
-         BOOST_ASSERT(hours_str.length() <= 2);
--        boost::algorithm::replace_all(format, hours_format, hours_str);
-+        boost::algorithm::replace_all(lcl_format, hours_format, hours_str);
-       }
- 
-       string_type frac_str;
--      if (format.find(seconds_with_fractional_seconds_format) != string_type::npos) {
-+      if (lcl_format.find(seconds_with_fractional_seconds_format) != string_type::npos) {
-         // replace %s with %S.nnn
-         frac_str =
-           fractional_seconds_as_string(a_time_dur, false);
-@@ -500,21 +500,21 @@
-         string_type replace_string(seconds_format);
-         replace_string += sep;
-         replace_string += frac_str;
--        boost::algorithm::replace_all(format,
-+        boost::algorithm::replace_all(lcl_format,
-                                       seconds_with_fractional_seconds_format,
-                                       replace_string);
-       }
--      if (format.find(fractional_seconds_format) != string_type::npos) {
-+      if (lcl_format.find(fractional_seconds_format) != string_type::npos) {
-         // replace %f with nnnnnnn
-         if (!frac_str.size()) {
-           frac_str = fractional_seconds_as_string(a_time_dur, false);
-         }
--        boost::algorithm::replace_all(format,
-+        boost::algorithm::replace_all(lcl_format,
-                                       fractional_seconds_format,
-                                       frac_str);
-       }
- 
--      if (format.find(fractional_seconds_or_none_format) != string_type::npos) {
-+      if (lcl_format.find(fractional_seconds_or_none_format) != string_type::npos) {
-         // replace %F with nnnnnnn or nothing if fs == 0
-         frac_str =
-           fractional_seconds_as_string(a_time_dur, true);
-@@ -523,18 +523,18 @@
-           string_type replace_string;
-           replace_string += sep;
-           replace_string += frac_str;
--          boost::algorithm::replace_all(format,
-+          boost::algorithm::replace_all(lcl_format,
-                                         fractional_seconds_or_none_format,
-                                         replace_string);
-         }
-         else {
--          boost::algorithm::erase_all(format,
-+          boost::algorithm::erase_all(lcl_format,
-                                       fractional_seconds_or_none_format);
-         }
-       }
- 
-       return this->do_put_tm(a_next, a_ios, a_fill,
--                       to_tm(a_time_dur), format);
-+                       to_tm(a_time_dur), lcl_format);
-     }
- 
-     OutItrT put(OutItrT next, std::ios_base& a_ios,
diff --git a/boost/boost.4874.patch b/boost/boost.4874.patch
index 7dbd33d..c401cf7 100644
--- a/boost/boost.4874.patch
+++ b/boost/boost.4874.patch
@@ -10,14 +10,6 @@ Index: branches/release/boost/multi_array/base.hpp
  #include "boost/multi_array/extent_range.hpp"
  #include "boost/multi_array/extent_gen.hpp"
  #include "boost/multi_array/index_range.hpp"
-@@ -82,5 +82,6 @@
- class const_sub_array;
- 
--template <typename T, typename TPtr, typename NumDims, typename Reference>
-+  template <typename T, typename TPtr, typename NumDims, typename Reference,
-+            typename IteratorCategory>
- class array_iterator;
- 
 @@ -252,5 +253,17 @@
  /////////////////////////////////////////////////////////////////////////
  
@@ -37,23 +29,6 @@ Index: branches/release/boost/multi_array/base.hpp
 +#endif
  
  ////////////////////////////////////////////////////////////////////////
-@@ -302,6 +315,14 @@
-   // iterator support
-   //
--  typedef array_iterator<T,T*,mpl::size_t<NumDims>,reference> iterator;
--  typedef array_iterator<T,T const*,mpl::size_t<NumDims>,const_reference> const_iterator;
-+#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600)
-+  // Deal with VC 2010 output_iterator_tag requirement
-+  typedef array_iterator<T,T*,mpl::size_t<NumDims>,reference,
-+                         mutable_iterator_tag> iterator;
-+#else
-+  typedef array_iterator<T,T*,mpl::size_t<NumDims>,reference,
-+                         boost::random_access_traversal_tag> iterator;
-+#endif
-+  typedef array_iterator<T,T const*,mpl::size_t<NumDims>,const_reference,
-+                         boost::random_access_traversal_tag> const_iterator;
- 
-   typedef ::boost::reverse_iterator<iterator> reverse_iterator;
 @@ -322,5 +343,6 @@
                             const index* strides,
                             const index* index_bases) const {
@@ -62,23 +37,6 @@ Index: branches/release/boost/multi_array/base.hpp
 +      detail::multi_array::CollectionConcept<IndexList> >();
      ignore_unused_variable_warning(index_bases);
      ignore_unused_variable_warning(extents);
-@@ -333,7 +355,13 @@
- 
-     index offset = 0;
--    for (size_type n = 0; n != NumDims; ++n) 
--      offset += indices[n] * strides[n];
--    
-+    {
-+      typename IndexList::const_iterator i = indices.begin();
-+      size_type n = 0; 
-+      while (n != NumDims) {
-+        offset += (*i) * strides[n];
-+        ++n;
-+        ++i;
-+      }
-+    }
-     return base[offset];
-   }
 Index: branches/release/boost/multi_array/concept_checks.hpp
 ===================================================================
 --- a/branches/release/boost/multi_array/concept_checks.hpp
@@ -89,52 +47,3 @@ Index: branches/release/boost/multi_array/concept_checks.hpp
 +      function_requires< boost::OutputIterator<iterator,value_type> >();
        
        // RG - a( CollectionArchetype) when available...
-Index: branches/release/boost/multi_array/iterator.hpp
-===================================================================
---- a/branches/release/boost/multi_array/iterator.hpp
-+++ b/branches/release/boost/multi_array/iterator.hpp
-@@ -45,14 +45,16 @@
- };
- 
--template <typename T, typename TPtr, typename NumDims, typename Reference>
-+template <typename T, typename TPtr, typename NumDims, typename Reference,
-+          typename IteratorCategory>
- class array_iterator;
- 
--template <typename T, typename TPtr, typename NumDims, typename Reference>
-+template <typename T, typename TPtr, typename NumDims, typename Reference,
-+          typename IteratorCategory>
- class array_iterator
-   : public
-     iterator_facade<
--        array_iterator<T,TPtr,NumDims,Reference>
-+        array_iterator<T,TPtr,NumDims,Reference,IteratorCategory>
-       , typename associated_types<T,NumDims>::value_type
--      , boost::random_access_traversal_tag
-+      , IteratorCategory
-       , Reference
-     >
-@@ -70,5 +72,5 @@
- 
-   typedef iterator_facade<
--        array_iterator<T,TPtr,NumDims,Reference>
-+            array_iterator<T,TPtr,NumDims,Reference,IteratorCategory>
-       , typename detail::multi_array::associated_types<T,NumDims>::value_type
-       , boost::random_access_traversal_tag
-@@ -80,5 +82,5 @@
- 
- #ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS
--  template <typename, typename, typename, typename>
-+  template <typename, typename, typename, typename, typename>
-     friend class array_iterator;
- #else
-@@ -106,7 +108,7 @@
-     strides_(strides), index_base_(index_base) { }
- 
--  template <typename OPtr, typename ORef>
-+  template <typename OPtr, typename ORef, typename Cat>
-   array_iterator(
--      const array_iterator<T,OPtr,NumDims,ORef>& rhs
-+      const array_iterator<T,OPtr,NumDims,ORef,Cat>& rhs
-     , typename boost::enable_if_convertible<OPtr,TPtr>::type* = 0
-   )
diff --git a/boost/boost.5119.unordered_map-cp-ctor.patch b/boost/boost.5119.unordered_map-cp-ctor.patch
deleted file mode 100644
index 42e7175..0000000
--- a/boost/boost.5119.unordered_map-cp-ctor.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-Index: /trunk/boost/unordered/unordered_set.hpp
-===================================================================
---- misc/boost_1_44_0/boost/unordered/unordered_set.hpp	(revision 60754)
-+++ misc/build/boost_1_44_0/boost/unordered/unordered_set.hpp	(revision 68445)
-@@ -155,4 +155,9 @@
- 
- #if !defined(BOOST_NO_RVALUE_REFERENCES)
-+        unordered_set(unordered_set const& other)
-+          : table_(other.table_)
-+        {
-+        }
-+
-         unordered_set(unordered_set&& other)
-           : table_(other.table_, boost::unordered_detail::move_tag())
-@@ -163,4 +168,10 @@
-           : table_(other.table_, a, boost::unordered_detail::move_tag())
-         {
-+        }
-+
-+        unordered_set& operator=(unordered_set const& x)
-+        {
-+            table_ = x.table_;
-+            return *this;
-         }
- 
-@@ -652,4 +663,9 @@
- 

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list