You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openoffice.apache.org by Damjan Jovanovic <da...@apache.org> on 2022/08/23 00:58:19 UTC
--with-system-boost breaks build in vcl, --without in configmgr
Hi
--with-system-boost and boost-libs version 1.80.0, fails in the vcl module
in a lengthy error pasted later. An earlier version of boost-libs failed
too, possibly 1.79 or so.
--without-system-boost fails in the configmgr module instead, due to a
tuple definition bug in boost. Luckily I managed to hack around this, but I
am not sure whether my patch is needed for other platforms or compilers
(currently it only applies to Clang). So I am not committing it, but
attaching it here for review.
Damjan
-------------------------------------------------------------
Errors --with-system-boost version 1.80.0:
-------------------------------------------------------------
In file included from
/path/to/openoffice-git/main/vcl/unx/gtk/a11y/atkutil.cxx:41:
In file included from
/path/to/openoffice-git/main/solver/450/unxfbsdx/inc/vcl/menu.hxx:31:
In file included from
/path/to/openoffice-git/main/solver/450/unxfbsdx/inc/vcl/bitmapex.hxx:28:
In file included from
/path/to/openoffice-git/main/solver/450/unxfbsdx/inc/vcl/bitmap.hxx:38:
In file included from
/usr/local/include/boost/math/special_functions/sinc.hpp:18:
/usr/local/include/boost/math/tools/config.hpp:23:6: warning: "The minimum
language standard to use Boost.Math will be C++14 starting in July 2023
(Boost 1.82 release)" [-W#warnings]
# warning "The minimum language standard to use Boost.Math will be C++14
starting in July 2023 (Boost 1.82 release)"
^
/usr/local/include/boost/math/tools/config.hpp:422:61: error: expected ';'
at end of declaration
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
BOOST_MATH_NOEXCEPT(T)
^
;
/usr/local/include/boost/math/tools/config.hpp:422:82: error: use of
undeclared identifier 'T'
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
BOOST_MATH_NOEXCEPT(T)
^
/usr/local/include/boost/math/tools/config.hpp:422:62: error: unknown type
name 'noexcept'
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
BOOST_MATH_NOEXCEPT(T)
^
/usr/local/include/boost/math/tools/config.hpp:320:32: note: expanded from
macro 'BOOST_MATH_NOEXCEPT'
#define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
^
/usr/local/include/boost/math/tools/config.hpp:422:82: error: use of
undeclared identifier 'T'
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
BOOST_MATH_NOEXCEPT(T)
^
error: expected unqualified-id
/usr/local/include/boost/math/tools/config.hpp:422:62: error: expected ')'
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
BOOST_MATH_NOEXCEPT(T)
^
/usr/local/include/boost/math/tools/config.hpp:320:66: note: expanded from
macro 'BOOST_MATH_NOEXCEPT'
#define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
^
/usr/local/include/boost/math/tools/config.hpp:422:62: note: to match this
'('
/usr/local/include/boost/math/tools/config.hpp:320:40: note: expanded from
macro 'BOOST_MATH_NOEXCEPT'
#define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
^
/usr/local/include/boost/math/tools/config.hpp:428:66: error: expected ';'
at end of declaration
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
BOOST_MATH_NOEXCEPT(T)
^
;
/usr/local/include/boost/math/tools/config.hpp:428:87: error: use of
undeclared identifier 'T'
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
BOOST_MATH_NOEXCEPT(T)
^
/usr/local/include/boost/math/tools/config.hpp:428:67: error: unknown type
name 'noexcept'
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
BOOST_MATH_NOEXCEPT(T)
^
/usr/local/include/boost/math/tools/config.hpp:320:32: note: expanded from
macro 'BOOST_MATH_NOEXCEPT'
#define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
^
/usr/local/include/boost/math/tools/config.hpp:428:87: error: use of
undeclared identifier 'T'
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
BOOST_MATH_NOEXCEPT(T)
^
error: expected unqualified-id
/usr/local/include/boost/math/tools/config.hpp:428:67: error: expected ')'
inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
BOOST_MATH_NOEXCEPT(T)
^
/usr/local/include/boost/math/tools/config.hpp:320:66: note: expanded from
macro 'BOOST_MATH_NOEXCEPT'
#define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
^
/usr/local/include/boost/math/tools/config.hpp:428:67: note: to match this
'('
/usr/local/include/boost/math/tools/config.hpp:320:40: note: expanded from
macro 'BOOST_MATH_NOEXCEPT'
#define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
^
/usr/local/include/boost/math/tools/config.hpp:436:48: error: expected ';'
at end of declaration
void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
^
;
/usr/local/include/boost/math/tools/config.hpp:436:69: error: use of
undeclared identifier 'T'
void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
^
/usr/local/include/boost/math/tools/config.hpp:436:49: error: unknown type
name 'noexcept'
void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
^
/usr/local/include/boost/math/tools/config.hpp:320:32: note: expanded from
macro 'BOOST_MATH_NOEXCEPT'
#define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
^
/usr/local/include/boost/math/tools/config.hpp:436:69: error: use of
undeclared identifier 'T'
void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
^
error: expected unqualified-id
/usr/local/include/boost/math/tools/config.hpp:436:49: error: expected ')'
void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
^
/usr/local/include/boost/math/tools/config.hpp:320:66: note: expanded from
macro 'BOOST_MATH_NOEXCEPT'
#define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
^
/usr/local/include/boost/math/tools/config.hpp:436:49: note: to match this
'('
/usr/local/include/boost/math/tools/config.hpp:320:40: note: expanded from
macro 'BOOST_MATH_NOEXCEPT'
#define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
^
/usr/local/include/boost/math/tools/config.hpp:445:11: error: unknown type
name 'constexpr'
static constexpr bool value = std::is_integral<T>::value ||
(std::numeric_limits<T>::is_specialized &&
std::numeric_limits<T>::is_integer);
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
Re: --with-system-boost breaks build in vcl, --without in configmgr
Posted by Damjan Jovanovic <da...@apache.org>.
Hi
Linux and FreeBSD have always used the "gnu++98" standard:
openoffice-git/main]$ grep '\-std' solenv -R
solenv/inc/unxfbsd.mk:CFLAGSCXX= -pipe $(ARCH_FLAGS) -std=gnu++98
solenv/inc/unxlng.mk:CFLAGSCXX= -pipe $(ARCH_FLAGS) -std=gnu++98
solenv/gbuild/platform/freebsd.mk: -std=gnu++98 \
solenv/gbuild/platform/linux.mk: -std=gnu++98 \
Regards
Damjan
On Tue, Aug 23, 2022 at 10:46 PM Peter Kovacs <pe...@apache.org> wrote:
> Hi Damjan,
>
> First with what C++ Standard do you build?
>
> I have seen strange errors if you build with the wrong standard.
>
> All the best
>
> Peter
>
Re: --with-system-boost breaks build in vcl, --without in configmgr
Posted by Peter Kovacs <pe...@apache.org>.
Hi Damjan,
First with what C++ Standard do you build?
I have seen strange errors if you build with the wrong standard.
All the best
Peter
Am 23.08.22 um 02:58 schrieb Damjan Jovanovic:
> Hi
>
> --with-system-boost and boost-libs version 1.80.0, fails in the vcl
> module in a lengthy error pasted later. An earlier version of
> boost-libs failed too, possibly 1.79 or so.
>
> --without-system-boost fails in the configmgr module instead, due to a
> tuple definition bug in boost. Luckily I managed to hack around this,
> but I am not sure whether my patch is needed for other platforms or
> compilers (currently it only applies to Clang). So I am not committing
> it, but attaching it here for review.
>
> Damjan
>
>
> -------------------------------------------------------------
> Errors --with-system-boost version 1.80.0:
> -------------------------------------------------------------
>
> In file included from
> /path/to/openoffice-git/main/vcl/unx/gtk/a11y/atkutil.cxx:41:
> In file included from
> /path/to/openoffice-git/main/solver/450/unxfbsdx/inc/vcl/menu.hxx:31:
> In file included from
> /path/to/openoffice-git/main/solver/450/unxfbsdx/inc/vcl/bitmapex.hxx:28:
> In file included from
> /path/to/openoffice-git/main/solver/450/unxfbsdx/inc/vcl/bitmap.hxx:38:
> In file included from
> /usr/local/include/boost/math/special_functions/sinc.hpp:18:
> /usr/local/include/boost/math/tools/config.hpp:23:6: warning: "The
> minimum language standard to use Boost.Math will be C++14 starting in
> July 2023 (Boost 1.82 release)" [-W#warnings]
> # warning "The minimum language standard to use Boost.Math will be
> C++14 starting in July 2023 (Boost 1.82 release)"
> ^
> /usr/local/include/boost/math/tools/config.hpp:422:61: error: expected
> ';' at end of declaration
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
> BOOST_MATH_NOEXCEPT(T)
> ^
> ;
> /usr/local/include/boost/math/tools/config.hpp:422:82: error: use of
> undeclared identifier 'T'
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
> BOOST_MATH_NOEXCEPT(T)
> ^
> /usr/local/include/boost/math/tools/config.hpp:422:62: error: unknown
> type name 'noexcept'
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
> BOOST_MATH_NOEXCEPT(T)
> ^
> /usr/local/include/boost/math/tools/config.hpp:320:32: note: expanded
> from macro 'BOOST_MATH_NOEXCEPT'
> #define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
> ^
> /usr/local/include/boost/math/tools/config.hpp:422:82: error: use of
> undeclared identifier 'T'
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
> BOOST_MATH_NOEXCEPT(T)
> ^
> error: expected unqualified-id
> /usr/local/include/boost/math/tools/config.hpp:422:62: error: expected ')'
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c)
> BOOST_MATH_NOEXCEPT(T)
> ^
> /usr/local/include/boost/math/tools/config.hpp:320:66: note: expanded
> from macro 'BOOST_MATH_NOEXCEPT'
> #define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
> ^
> /usr/local/include/boost/math/tools/config.hpp:422:62: note: to match
> this '('
> /usr/local/include/boost/math/tools/config.hpp:320:40: note: expanded
> from macro 'BOOST_MATH_NOEXCEPT'
> #define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
> ^
> /usr/local/include/boost/math/tools/config.hpp:428:66: error: expected
> ';' at end of declaration
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
> BOOST_MATH_NOEXCEPT(T)
> ^
> ;
> /usr/local/include/boost/math/tools/config.hpp:428:87: error: use of
> undeclared identifier 'T'
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
> BOOST_MATH_NOEXCEPT(T)
> ^
> /usr/local/include/boost/math/tools/config.hpp:428:67: error: unknown
> type name 'noexcept'
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
> BOOST_MATH_NOEXCEPT(T)
> ^
> /usr/local/include/boost/math/tools/config.hpp:320:32: note: expanded
> from macro 'BOOST_MATH_NOEXCEPT'
> #define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
> ^
> /usr/local/include/boost/math/tools/config.hpp:428:87: error: use of
> undeclared identifier 'T'
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
> BOOST_MATH_NOEXCEPT(T)
> ^
> error: expected unqualified-id
> /usr/local/include/boost/math/tools/config.hpp:428:67: error: expected ')'
> inline T max BOOST_PREVENT_MACRO_SUBSTITUTION(T a, T b, T c, T d)
> BOOST_MATH_NOEXCEPT(T)
> ^
> /usr/local/include/boost/math/tools/config.hpp:320:66: note: expanded
> from macro 'BOOST_MATH_NOEXCEPT'
> #define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
> ^
> /usr/local/include/boost/math/tools/config.hpp:428:67: note: to match
> this '('
> /usr/local/include/boost/math/tools/config.hpp:320:40: note: expanded
> from macro 'BOOST_MATH_NOEXCEPT'
> #define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
> ^
> /usr/local/include/boost/math/tools/config.hpp:436:48: error: expected
> ';' at end of declaration
> void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
> ^
> ;
> /usr/local/include/boost/math/tools/config.hpp:436:69: error: use of
> undeclared identifier 'T'
> void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
> ^
> /usr/local/include/boost/math/tools/config.hpp:436:49: error: unknown
> type name 'noexcept'
> void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
> ^
> /usr/local/include/boost/math/tools/config.hpp:320:32: note: expanded
> from macro 'BOOST_MATH_NOEXCEPT'
> #define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
> ^
> /usr/local/include/boost/math/tools/config.hpp:436:69: error: use of
> undeclared identifier 'T'
> void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
> ^
> error: expected unqualified-id
> /usr/local/include/boost/math/tools/config.hpp:436:49: error: expected ')'
> void suppress_unused_variable_warning(const T&) BOOST_MATH_NOEXCEPT(T)
> ^
> /usr/local/include/boost/math/tools/config.hpp:320:66: note: expanded
> from macro 'BOOST_MATH_NOEXCEPT'
> #define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
> ^
> /usr/local/include/boost/math/tools/config.hpp:436:49: note: to match
> this '('
> /usr/local/include/boost/math/tools/config.hpp:320:40: note: expanded
> from macro 'BOOST_MATH_NOEXCEPT'
> #define BOOST_MATH_NOEXCEPT(T) noexcept(std::is_floating_point<T>::value)
> ^
> /usr/local/include/boost/math/tools/config.hpp:445:11: error: unknown
> type name 'constexpr'
> static constexpr bool value = std::is_integral<T>::value ||
> (std::numeric_limits<T>::is_specialized &&
> std::numeric_limits<T>::is_integer);
> ^
> fatal error: too many errors emitted, stopping now [-ferror-limit=]
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
> For additional commands, e-mail: dev-help@openoffice.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org