office-gobmx/basegfx/source
Stephan Bergmann 41ab6a5dfa struct SN needs a strict weak ordering operator <
...so it can be used with std::sort in impSolve() (further down in
basegfx/source/polygon/b2dpolypolygoncutter.cxx).  At least on macOS with a
LLVM 20 trunk libc++ in hardened mode, JunitTest_sfx2_complex failed with

> ~/llvm/inst/bin/../include/c++/v1/__debug_utils/strict_weak_ordering_check.h:59: assertion __comp(*(__first + __a), *(__first + __b)) failed: Your comparator is not a valid strict-weak ordering

To simplify the new implementation of struct SN operator <, add a B2DPoint
operator <=> (but whose implementation would cause

> In file included from /home/tdf/lode/jenkins/workspace/android_arm/basegfx/source/curve/b2dbeziertools.cxx:21:
> In file included from /home/tdf/lode/jenkins/workspace/android_arm/include/basegfx/curve/b2dcubicbezier.hxx:22:
> /home/tdf/lode/jenkins/workspace/android_arm/include/basegfx/point/b2dpoint.hxx:129:41: error: invalid operands to binary expression ('tuple<const double &, const double &>' and 'tuple<const double &, const double &>')
>         { return std::tie(a.mnX, a.mnY) <=> std::tie(b.mnX, b.mnY); }
>                  ~~~~~~~~~~~~~~~~~~~~~~ ^   ~~~~~~~~~~~~~~~~~~~~~~

etc. on Android with NDK 23.2, see
<https://ci.libreoffice.org/job/gerrit_android_arm/43174/>, so work around that
in the implementation for now).

Change-Id: I9f46d39dc9e9024fe9ac59413c44e49642282c8b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175622
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-12-09 15:13:46 +01:00
..
color CairoSDPR: Improve BColorModified Bitmaps 2024-07-11 10:58:24 +02:00
curve Fix wrong / misleading uses of fTools::(more|less|equal) with literal 0 2024-08-02 11:31:00 +02:00
inc tdf#63130 make B2DHomMatrix a flat object 2023-05-16 07:57:51 +02:00
matrix com::sun::star -> css 2024-11-10 10:50:15 +01:00
numeric Fix wrong / misleading uses of fTools::(more|less|equal) with literal 0 2024-08-02 11:31:00 +02:00
point Drop temporary aliases from Tuple2D and Tuple3D 2023-10-08 18:53:00 +02:00
polygon struct SN needs a strict weak ordering operator < 2024-12-09 15:13:46 +01:00
range tdf#157664 Drop redundant operator != in basegfx module 2024-03-23 11:17:06 +01:00
raster clang-tidy:readability-redundant-member-init 2021-08-27 21:24:20 +02:00
tools loplugin:reftotemp in basctl,basegfx 2024-11-08 08:40:57 +01:00
tuple basegfx: generalise tuples with template class Tuple2D and Tuple3D 2021-06-17 01:55:56 +02:00
vector tdf#147906 Use std::hypot for Pythagorean distance 2024-04-05 13:59:33 +02:00
workbench tdf#148251 Use std::swap() instead of using temporary values 2022-09-15 18:07:06 +02:00