boost: upgrade to 1_88_0

* external/boost/armv7.patch.0 and
external/boost/0001-Avoid-Wdeprecated-variadic-comma-omission-with-GCC-1.patch.2
have been fixed upstream

* ignore warning 4996 in vcl/source/window/layout.cxx, otherwise it started to fail with
[build CXX] vcl/source/window/layout.cxx
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/storage_order.hpp(51): error C2220: the following warning is treated as an error
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/storage_order.hpp(51): warning C4996: 'boost::array<bool,2>::assign': please use `fill` instead
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/storage_order.hpp(47): note: while compiling class template member function 'boost::general_storage_order<2>::general_storage_order(const boost::c_storage_order &)'
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(153): note: see reference to function template instantiation 'boost::general_storage_order<2>::general_storage_order(const boost::c_storage_order &)' being compiled
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(350): note: see reference to class template instantiation 'boost::general_storage_order<2>' being compiled
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(414): note: see reference to class template instantiation 'boost::const_multi_array_ref<T,2,T *>' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(122): note: see reference to class template instantiation 'boost::multi_array_ref<T,2>' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/vcl/source/window/layout.cxx(905): note: see reference to class template instantiation 'boost::multi_array<`anonymous-namespace'::GridEntry,2,std::allocator<T>>' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(343): warning C4996: 'boost::array<int,2>::assign': please use `fill` instead
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(325): note: while compiling class template member function 'boost::const_multi_array_ref<T,2,T *>::const_multi_array_ref(TPtr,const boost::general_storage_order<2> &,const int *,const unsigned int *)'
        with
        [
            T=`anonymous-namespace'::GridEntry,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(616): note: see reference to function template instantiation 'boost::const_multi_array_ref<T,2,T *>::const_multi_array_ref(TPtr,const boost::general_storage_order<2> &,const int *,const unsigned int *)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/view.hpp(234): warning C4996: 'boost::array<int,2>::assign': please use `fill` instead
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/view.hpp(434): note: see reference to function template instantiation 'boost::detail::multi_array::const_multi_array_view<T,2,T *>::const_multi_array_view<ExtentList,int>(TPtr,const ExtentList &,const boost::array<int,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            ExtentList=boost::array<int,2>,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/view.hpp(434): note: see reference to function template instantiation 'boost::detail::multi_array::const_multi_array_view<T,2,T *>::const_multi_array_view<ExtentList,int>(TPtr,const ExtentList &,const boost::array<int,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            ExtentList=boost::array<int,2>,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/base.hpp(490): note: see reference to function template instantiation 'boost::detail::multi_array::multi_array_view<T,2>::multi_array_view<boost::array<int,2>,int>(T *,const ExtentList &,const boost::array<int,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            ExtentList=boost::array<int,2>
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/base.hpp(487): note: see reference to function template instantiation 'boost::detail::multi_array::multi_array_view<T,2>::multi_array_view<boost::array<int,2>,int>(T *,const ExtentList &,const boost::array<int,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry,
            ExtentList=boost::array<int,2>
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(539): note: see reference to function template instantiation 'ArrayRef boost::detail::multi_array::multi_array_impl_base<T,2>::generate_array_view<return_type,2,`anonymous-namespace'::GridEntry*>(boost::type<return_type>,const boost::detail::multi_array::index_gen<2,2> &,const unsigned int *,const int *,const int *,TPtr) const' being compiled
        with
        [
            ArrayRef=return_type,
            T=`anonymous-namespace'::GridEntry,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array/multi_array_ref.hpp(533): note: see reference to function template instantiation 'ArrayRef boost::detail::multi_array::multi_array_impl_base<T,2>::generate_array_view<return_type,2,`anonymous-namespace'::GridEntry*>(boost::type<return_type>,const boost::detail::multi_array::index_gen<2,2> &,const unsigned int *,const int *,const int *,TPtr) const' being compiled
        with
        [
            ArrayRef=return_type,
            T=`anonymous-namespace'::GridEntry,
            TPtr=`anonymous-namespace'::GridEntry *
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(494): note: see reference to function template instantiation 'boost::detail::multi_array::multi_array_view<T,2> boost::multi_array_ref<T,2>::operator []<2>(const boost::detail::multi_array::index_gen<2,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(494): note: see reference to function template instantiation 'boost::detail::multi_array::multi_array_view<T,2> boost::multi_array_ref<T,2>::operator []<2>(const boost::detail::multi_array::index_gen<2,2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:\cygwin64\home\tdf\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/multi_array.hpp(454): note: while compiling class template member function 'boost::multi_array<`anonymous-namespace'::GridEntry,2,std::allocator<T>> &boost::multi_array<T,2,std::allocator<T>>::resize(const boost::detail::multi_array::extent_gen<2> &)'
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/vcl/source/window/layout.cxx(928): note: see reference to function template instantiation 'boost::multi_array<`anonymous-namespace'::GridEntry,2,std::allocator<T>> &boost::multi_array<T,2,std::allocator<T>>::resize(const boost::detail::multi_array::extent_gen<2> &)' being compiled
        with
        [
            T=`anonymous-namespace'::GridEntry
        ]
make[1]: *** [C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/solenv/gbuild/LinkTarget.mk:339: C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/workdir/CxxObject/vcl/source/window/layout.o] Error 2

<https://dev-www.libreoffice.org/src/boost_1_88_0.tar.xz> has been generated (on
Debian 12) with

> $ wget https://boostorg.jfrog.io/artifactory/main/release/1.88.0/source/boost_1_88_0.tar.bz2
> $ printf '46d9d2c06637b219270877c9e16155cbd015b6dc84349af064c088e9b5b12f7b boost_1_88_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_88_0.html>
> boost_1_88_0.tar.bz2: OK
> $ external/boost/repack_tarball.sh boost_1_88_0.tar.bz2
> Unpacking boost_1_88_0.tar.bz2 ...
> Removing unnecessary files ...
> Creating boost_1_88_0.tar.xz ...
> Cleaning up ...
> 5c67a448c562f1606e38203ba7ed7e8d7453581b6b9ca324e96205eae0da5ff8  boost_1_87_0.tar.xz
> Done.

Change-Id: Ib5f613b34ffb161348b1fd7653cce0d12da98994
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184035
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
This commit is contained in:
Xisco Fauli 2025-04-11 12:59:32 +02:00
parent b81f1bce73
commit 649ea69f09
8 changed files with 35 additions and 140 deletions

View File

@ -14,8 +14,8 @@ ARGON2_TARBALL := phc-winner-argon2-20190702.tar.gz
# so that git cherry-pick
# will not run into conflicts
# please repack the tarball using external/boost/repack_tarball.sh
BOOST_SHA256SUM := 750cbad72488ffbd6000f77d4fc40246e96141da556ee99000c1dc8664ea1157
BOOST_TARBALL := boost_1_87_0.tar.xz
BOOST_SHA256SUM := 5c67a448c562f1606e38203ba7ed7e8d7453581b6b9ca324e96205eae0da5ff8
BOOST_TARBALL := boost_1_88_0.tar.xz
# three static lines
# so that git cherry-pick
# will not run into conflicts

View File

@ -1,38 +0,0 @@
From aa25af1928cc275537276c1a50e6ba49333a3aec Mon Sep 17 00:00:00 2001
From: Stephan Bergmann <stephan.bergmann@allotropia.de>
Date: Mon, 2 Dec 2024 19:06:25 +0100
Subject: Avoid -Wdeprecated-variadic-comma-omission with GCC 15 trunk
-std=c++26
...since
<https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=cc67d95dc100706ea665e8cce581d59466aba62e>
"c++: Implement C++26 P3176R1 - The Oxford variadic comma"
---
include/boost/move/detail/unique_ptr_meta_utils.hpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/boost/move/detail/unique_ptr_meta_utils.hpp b/include/boost/move/detail/unique_ptr_meta_utils.hpp
index 4c6aeb5..27154e0 100644
--- a/include/boost/move/detail/unique_ptr_meta_utils.hpp
+++ b/include/boost/move/detail/unique_ptr_meta_utils.hpp
@@ -497,7 +497,7 @@ struct is_unary_function_impl<R (*)(T0)>
{ static const bool value = true; };
template <typename R, class T0>
-struct is_unary_function_impl<R (*)(T0...)>
+struct is_unary_function_impl<R (*)(T0, ...)>
{ static const bool value = true; };
#else // BOOST_MOVE_TT_TEST_MSC_FUNC_SIGS
@@ -519,7 +519,7 @@ struct is_unary_function_impl<R (__cdecl*)(T0)>
{ static const bool value = true; };
template <typename R, class T0>
-struct is_unary_function_impl<R (__cdecl*)(T0...)>
+struct is_unary_function_impl<R (__cdecl*)(T0, ...)>
{ static const bool value = true; };
#endif
--
2.47.1

View File

@ -28,36 +28,36 @@ $(eval $(call gb_StaticLibrary_use_external,boost_locale,boost_headers))
$(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,boost_locale,cpp))
$(eval $(call gb_StaticLibrary_add_generated_exception_objects,boost_locale,\
UnpackedTarball/boost/libs/locale/src/boost/locale/encoding/codepage \
UnpackedTarball/boost/libs/locale/src/boost/locale/shared/date_time \
UnpackedTarball/boost/libs/locale/src/boost/locale/shared/format \
UnpackedTarball/boost/libs/locale/src/boost/locale/shared/formatting \
UnpackedTarball/boost/libs/locale/src/boost/locale/shared/generator \
UnpackedTarball/boost/libs/locale/src/boost/locale/shared/ids \
UnpackedTarball/boost/libs/locale/src/boost/locale/shared/localization_backend \
UnpackedTarball/boost/libs/locale/src/boost/locale/shared/message \
UnpackedTarball/boost/libs/locale/src/boost/locale/shared/mo_lambda \
UnpackedTarball/boost/libs/locale/src/boost/locale/std/codecvt \
UnpackedTarball/boost/libs/locale/src/boost/locale/std/collate \
UnpackedTarball/boost/libs/locale/src/boost/locale/std/converter \
UnpackedTarball/boost/libs/locale/src/boost/locale/std/numeric \
UnpackedTarball/boost/libs/locale/src/boost/locale/std/std_backend \
UnpackedTarball/boost/libs/locale/src/boost/locale/util/codecvt_converter \
UnpackedTarball/boost/libs/locale/src/boost/locale/util/default_locale \
UnpackedTarball/boost/libs/locale/src/boost/locale/util/encoding \
UnpackedTarball/boost/libs/locale/src/boost/locale/util/gregorian \
UnpackedTarball/boost/libs/locale/src/boost/locale/util/info \
UnpackedTarball/boost/libs/locale/src/boost/locale/util/locale_data \
UnpackedTarball/boost/libs/locale/src/encoding/codepage \
UnpackedTarball/boost/libs/locale/src/shared/date_time \
UnpackedTarball/boost/libs/locale/src/shared/format \
UnpackedTarball/boost/libs/locale/src/shared/formatting \
UnpackedTarball/boost/libs/locale/src/shared/generator \
UnpackedTarball/boost/libs/locale/src/shared/ids \
UnpackedTarball/boost/libs/locale/src/shared/localization_backend \
UnpackedTarball/boost/libs/locale/src/shared/message \
UnpackedTarball/boost/libs/locale/src/shared/mo_lambda \
UnpackedTarball/boost/libs/locale/src/std/codecvt \
UnpackedTarball/boost/libs/locale/src/std/collate \
UnpackedTarball/boost/libs/locale/src/std/converter \
UnpackedTarball/boost/libs/locale/src/std/numeric \
UnpackedTarball/boost/libs/locale/src/std/std_backend \
UnpackedTarball/boost/libs/locale/src/util/codecvt_converter \
UnpackedTarball/boost/libs/locale/src/util/default_locale \
UnpackedTarball/boost/libs/locale/src/util/encoding \
UnpackedTarball/boost/libs/locale/src/util/gregorian \
UnpackedTarball/boost/libs/locale/src/util/info \
UnpackedTarball/boost/libs/locale/src/util/locale_data \
))
ifeq ($(OS),WNT)
$(eval $(call gb_StaticLibrary_add_generated_exception_objects,boost_locale,\
UnpackedTarball/boost/libs/locale/src/boost/locale/win32/collate \
UnpackedTarball/boost/libs/locale/src/boost/locale/win32/converter \
UnpackedTarball/boost/libs/locale/src/boost/locale/win32/lcid \
UnpackedTarball/boost/libs/locale/src/boost/locale/win32/numeric \
UnpackedTarball/boost/libs/locale/src/boost/locale/win32/win_backend \
UnpackedTarball/boost/libs/locale/src/win32/collate \
UnpackedTarball/boost/libs/locale/src/win32/converter \
UnpackedTarball/boost/libs/locale/src/win32/lcid \
UnpackedTarball/boost/libs/locale/src/win32/numeric \
UnpackedTarball/boost/libs/locale/src/win32/win_backend \
))
endif

View File

@ -36,10 +36,6 @@ boost_patches += Wundef.patch.0
boost_patches += boost.spirit.noreturn.patch
# Sent upstream as <https://github.com/boostorg/move/pull/58> "Avoid
# -Wdeprecated-variadic-comma-omission with GCC 15 trunk -std=c++26":
boost_patches += 0001-Avoid-Wdeprecated-variadic-comma-omission-with-GCC-1.patch.2
$(eval $(call gb_UnpackedTarball_UnpackedTarball,boost))
$(eval $(call gb_UnpackedTarball_set_tarball,boost,$(BOOST_TARBALL)))
@ -49,7 +45,6 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,boost,3))
$(eval $(call gb_UnpackedTarball_add_patches,boost,\
$(foreach patch,$(boost_patches),external/boost/$(patch)) \
external/boost/boost-emscripten-nowasm.patch.0 \
external/boost/armv7.patch.0 \
))
# vim: set noet sw=4 ts=4:

View File

@ -1,66 +0,0 @@
--- boost/interprocess/interprocess_printers.hpp 2025-01-13 11:32:51.113041026 +0100
+++ boost/interprocess/interprocess_printers.hpp 2025-01-13 11:33:32.201805786 +0100
@@ -13,7 +13,7 @@
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Woverlength-strings"
#endif
-__asm__(".pushsection \".debug_gdb_scripts\", \"MS\",@progbits,1\n"
+__asm__(".pushsection \".debug_gdb_scripts\", \"MS\",%progbits,1\n"
".ascii \"\\4gdb.inlined-script.BOOST_INTERPROCESS_INTERPROCESS_PRINTERS_HPP\\n\"\n"
".ascii \"import gdb.printing\\n\"\n"
--- boost/unordered/unordered_printers.hpp 2025-01-13 12:23:26.189995185 +0100
+++ boost/unordered/unordered_printers.hpp 2025-01-13 12:23:42.549919517 +0100
@@ -13,7 +13,7 @@
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Woverlength-strings"
#endif
-__asm__(".pushsection \".debug_gdb_scripts\", \"MS\",@progbits,1\n"
+__asm__(".pushsection \".debug_gdb_scripts\", \"MS\",%progbits,1\n"
".ascii \"\\4gdb.inlined-script.BOOST_UNORDERED_UNORDERED_PRINTERS_HPP\\n\"\n"
".ascii \"import gdb.printing\\n\"\n"
".ascii \"import gdb.xmethod\\n\"\n"
--- boost/json/detail/gdb_printers.hpp 2025-01-13 12:30:40.399720177 +0100
+++ boost/json/detail/gdb_printers.hpp 2025-01-13 12:30:58.751614803 +0100
@@ -23,7 +23,7 @@
#endif
__asm__(
- ".pushsection \".debug_gdb_scripts\", \"MS\",@progbits,1\n"
+ ".pushsection \".debug_gdb_scripts\", \"MS\",%progbits,1\n"
".ascii \"\\4gdb.inlined-script.BOOST_JSON_DETAIL_GDB_PRINTERS_HPP\\n\"\n"
".ascii \"import gdb\\n\"\n"
".ascii \"import gdb.printing\\n\"\n"
--- libs/json/pretty_printers/generate-gdb-header.py 2025-01-13 12:32:02.711243483 +0100
+++ libs/json/pretty_printers/generate-gdb-header.py 2025-01-13 12:32:19.715143756 +0100
@@ -27,7 +27,7 @@
#endif
__asm__(
- ".pushsection \\\".debug_gdb_scripts\\\", \\\"MS\\\",@progbits,1\\n"
+ ".pushsection \\\".debug_gdb_scripts\\\", \\\"MS\\\",%progbits,1\\n"
".ascii \\\"\\\\4gdb.inlined-script.{script_id}\\\\n\\\"\\n"
'''
--- boost/outcome/outcome_gdb.h 2025-01-13 12:36:51.489504194 +0100
+++ boost/outcome/outcome_gdb.h 2025-01-13 12:37:05.345418709 +010
@@ -32,7 +32,7 @@
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Woverlength-strings"
#endif
-__asm__(".pushsection \".debug_gdb_scripts\", \"MS\",@progbits,1\n"
+__asm__(".pushsection \".debug_gdb_scripts\", \"MS\",%progbits,1\n"
".ascii \"\\4gdb.inlined-script.BOOST_OUTCOME_INLINE_GDB_PRETTY_PRINTER_H\\n\"\n"
".ascii \"import gdb.printing\\n\"\n"
".ascii \"import os\\n\"\n"
--- boost/outcome/experimental/status-code/status_code.hpp 2025-01-13 12:37:25.193295991 +0100
+++ boost/outcome/experimental/status-code/status_code.hpp 2025-01-13 12:37:34.281239705 +0100
@@ -722,7 +722,7 @@
#pragma clang diagnostic ignored "-Woverlength-strings"
#endif
__asm__(
-".pushsection \".debug_gdb_scripts\", \"MS\",@progbits,1\n"
+".pushsection \".debug_gdb_scripts\", \"MS\",%progbits,1\n"
".ascii \"\\4gdb.inlined-script.BOOST_OUTCOME_SYSTEM_ERROR2_INLINE_GDB_PRETTY_PRINTERS_H\\n\"\n"
".ascii \"import gdb.printing\\n\"\n"
".ascii \"import gdb\\n\"\n"

View File

@ -1,6 +1,6 @@
--- foo/misc/boost.orig/libs/locale/src/util/locale_data.cpp.new 2022-02-17 22:41:27.730549039 +0000
+++ foo/misc/boost/libs/locale/src/boost/locale/util/locale_data.cpp
@@ -50,6 +50,8 @@
+++ foo/misc/boost/libs/locale/src/util/locale_data.cpp
@@ -72,6 +72,8 @@
bool locale_data::parse(const std::string& locale_name)
{
reset();

View File

@ -1,7 +1,7 @@
Don't ever attempt to initialise a std::locale with a UTF-8 locale on Windows -*- Mode: Diff -*-
--- libs/locale/src/boost/locale/std/std_backend.cpp
+++ libs/locale/src/boost/locale/std/std_backend.cpp
--- libs/locale/src/std/std_backend.cpp
+++ libs/locale/src/std/std_backend.cpp
@@ -138,10 +138,14 @@
} else
name_ = "C";

View File

@ -900,6 +900,7 @@ typedef boost::multi_array<GridEntry, 2> array_type;
#if defined _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4459)
#pragma warning(disable : 4996)
#endif
static array_type assembleGrid(const VclGrid &rGrid)
{
@ -931,6 +932,7 @@ static array_type assembleGrid(const VclGrid &rGrid)
#if defined _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4459)
#pragma warning(disable : 4996)
#endif
GridEntry &rEntry = A[nLeftAttach][nTopAttach];
#if defined _MSC_VER
@ -1058,6 +1060,7 @@ static array_type assembleGrid(const VclGrid &rGrid)
#if defined _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4459)
#pragma warning(disable : 4996)
#endif
array_type B(boost::extents[nNonEmptyCols][nNonEmptyRows]);
#if defined _MSC_VER
@ -1107,6 +1110,7 @@ static void calcMaxs(const array_type &A, std::vector<VclGrid::Value> &rWidths,
#elif defined _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4459)
#pragma warning(disable : 4996)
#endif
const GridEntry &rEntry = A[x][y];
#if defined __GNUC__ && !defined __clang__ && __GNUC__ >= 13 && __GNUC__ <= 15