<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3, branch v3.5.4</title>
<subtitle>Progmasoft Catch3: an independently maintained C++17 test framework with a parallel runner, property checks, snapshots and structured results.</subtitle>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/'/>
<entry>
<title>v3.5.4</title>
<updated>2024-04-10T10:05:46+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-10T10:05:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=b5373dadca40b7edc8570cf9470b9b1cb1934d40'/>
<id>b5373dadca40b7edc8570cf9470b9b1cb1934d40</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Explicitly outline TestRegistry destructor into .cpp file</title>
<updated>2024-04-08T11:57:59+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-08T11:57:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=cd8f97e6c7f6aaf332992f83bf9d7ee7f357f85e'/>
<id>cd8f97e6c7f6aaf332992f83bf9d7ee7f357f85e</id>
<content type='text'>
This fixes compilation issue with C++23 mode against libstdc++.

Closes #2852
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes compilation issue with C++23 mode against libstdc++.

Closes #2852
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix &amp; extend tests for comparing const instances of zero lit types</title>
<updated>2024-04-08T11:15:35+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-08T11:15:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=05fb437cbbf60de794a7101c5e6ef8f650755ce4'/>
<id>05fb437cbbf60de794a7101c5e6ef8f650755ce4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix assertion for const instance of std::ordering</title>
<updated>2024-04-08T09:33:43+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-08T09:02:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=71b11c4e3328090d2ec72268299e3fb9e0ac3f8e'/>
<id>71b11c4e3328090d2ec72268299e3fb9e0ac3f8e</id>
<content type='text'>
The issue was that `capture_by_value` was meant to be specialized
by plain type, e.g. `capture_by_value&lt;std::weak_ordering&gt;`, but
the TMP in Decomposer did not properly throw away `const` (and
`volatile`) qualifiers, before taking the value of `capture_by_value`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The issue was that `capture_by_value` was meant to be specialized
by plain type, e.g. `capture_by_value&lt;std::weak_ordering&gt;`, but
the TMP in Decomposer did not properly throw away `const` (and
`volatile`) qualifiers, before taking the value of `capture_by_value`.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix preprocessor check for enabling FP reproducibility tests</title>
<updated>2024-04-06T18:27:15+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-06T18:19:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=0a6a2ce88764cc8c01411fee68834571a5b9a0a1'/>
<id>0a6a2ce88764cc8c01411fee68834571a5b9a0a1</id>
<content type='text'>
This solves warning about the `uniform_fp_test_params` helper
being unused on M1 mac (or any other platform using GCC and not
using SSE2).

Closes #2845
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This solves warning about the `uniform_fp_test_params` helper
being unused on M1 mac (or any other platform using GCC and not
using SSE2).

Closes #2845
</pre>
</div>
</content>
</entry>
<entry>
<title>Add M1 MacOS workflow</title>
<updated>2024-04-06T18:27:14+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-06T17:53:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=355a6e273b1bc5d50fd8a066af82c579ad021834'/>
<id>355a6e273b1bc5d50fd8a066af82c579ad021834</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace last use of std::uniform_int_distribution with our own</title>
<updated>2024-04-03T11:28:26+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-02T16:13:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=bff6e35e2b239217f3940ed52429f94b745adc50'/>
<id>bff6e35e2b239217f3940ed52429f94b745adc50</id>
<content type='text'>
Our implementation should be slightly faster, and has the
advantage of being consistent between platforms. This does not
have immediate user impact, because we currently use random_device
to generate random seed for resampling, but if we decide to change
this in the future, it is one less place to fix.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Our implementation should be slightly faster, and has the
advantage of being consistent between platforms. This does not
have immediate user impact, because we currently use random_device
to generate random seed for resampling, but if we decide to change
this in the future, it is one less place to fix.
</pre>
</div>
</content>
</entry>
<entry>
<title>Optimize 64x64 extended multiplication implementation</title>
<updated>2024-04-03T11:28:25+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-02T16:09:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=d99eb8bec8de53639540820ee2a6563b88c4ba8c'/>
<id>d99eb8bec8de53639540820ee2a6563b88c4ba8c</id>
<content type='text'>
Now we use intrinsics when possible, and fallback to optimized
implementation in portable C++. The difference is about 4x when
we can use intrinsics and about 2x when we cannot.

This should speed up our Lemire's algorithm implementation nicely.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now we use intrinsics when possible, and fallback to optimized
implementation in portable C++. The difference is about 4x when
we can use intrinsics and about 2x when we cannot.

This should speed up our Lemire's algorithm implementation nicely.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use SizedUnsignedType_t to pick UnsignedType for uniform_integer_distribution</title>
<updated>2024-04-03T11:27:10+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-03T10:29:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f181de9df4c43f188ae932a412af32a0981c9067'/>
<id>f181de9df4c43f188ae932a412af32a0981c9067</id>
<content type='text'>
The previously used `make_unsigned` approach combined with the overload
set of `extendedMult` caused compilation issues on MacOS platform. By
forcing the selection to be one of `std::uintX_t` types we don't need
to complicate the overload set further.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The previously used `make_unsigned` approach combined with the overload
set of `extendedMult` caused compilation issues on MacOS platform. By
forcing the selection to be one of `std::uintX_t` types we don't need
to complicate the overload set further.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #2850 from jeremy-rifkin/jr/mention-succeed-in-loggingmd</title>
<updated>2024-03-30T14:59:43+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-03-30T14:59:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=9271083a0493fe24a56efadcef4c3d640c5dbcad'/>
<id>9271083a0493fe24a56efadcef4c3d640c5dbcad</id>
<content type='text'>
Mention SUCCEED along with FAIL in logging.md</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Mention SUCCEED along with FAIL in logging.md</pre>
</div>
</content>
</entry>
</feed>
