<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/include/internal/catch_fatal_condition.cpp, branch v2.13.7</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>Fixed [dis]engage_platform declarations mismatch</title>
<updated>2021-04-13T17:50:32+00:00</updated>
<author>
<name>Matteo Beniamino</name>
</author>
<published>2021-04-13T08:46:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=469a7173951eb490c933bef1b214a0e4492b4686'/>
<id>469a7173951eb490c933bef1b214a0e4492b4686</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Significantly refactor fatal error handling</title>
<updated>2021-04-04T16:09:26+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2021-03-27T16:54:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=8f277a54c0b9c1d1024dedcb2dec1d206971e745'/>
<id>8f277a54c0b9c1d1024dedcb2dec1d206971e745</id>
<content type='text'>
Because new glibc has changed `MINSIGSTKSZ` to be a syscall instead
of being constant, the signal posix handling needed changes, as it
used the value in constexpr context, for deciding size of an array.
It would be simple to fix it by having the handler determine the
signal handling stack size and allocate the memory every time the
handler is being installed, but that would add another allocation
and a syscall every time a test case is entered.

Instead, I split apart the idea of preparing fatal error handlers,
and engaging them, so that the memory can be allocated only once
and still be guarded by RAII.

Also turns out that Catch2's use of `MINSIGSTKSZ` was wrong, and
we should've been using `SIGSTKSZ` the whole time, which we use now.

Closes #2178
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Because new glibc has changed `MINSIGSTKSZ` to be a syscall instead
of being constant, the signal posix handling needed changes, as it
used the value in constexpr context, for deciding size of an array.
It would be simple to fix it by having the handler determine the
signal handling stack size and allocate the memory every time the
handler is being installed, but that would add another allocation
and a syscall every time a test case is entered.

Instead, I split apart the idea of preparing fatal error handlers,
and engaging them, so that the memory can be allocated only once
and still be guarded by RAII.

Also turns out that Catch2's use of `MINSIGSTKSZ` was wrong, and
we should've been using `SIGSTKSZ` the whole time, which we use now.

Closes #2178
</pre>
</div>
</content>
</entry>
<entry>
<title>static constexpr: storage class first</title>
<updated>2019-08-07T00:17:16+00:00</updated>
<author>
<name>Axel Huebl</name>
</author>
<published>2019-08-07T00:17:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=820b1f12bf04a5df1ac86893cecee67dcfb4a607'/>
<id>820b1f12bf04a5df1ac86893cecee67dcfb4a607</id>
<content type='text'>
Seen with PGI compiler for `static constexpr`:
```
warning: storage class is not first
```
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Seen with PGI compiler for `static constexpr`:
```
warning: storage class is not first
```
</pre>
</div>
</content>
</entry>
<entry>
<title>Suppress warning caused by ntstatus.h inclusion</title>
<updated>2019-03-19T23:57:56+00:00</updated>
<author>
<name>Alex Alabuzhev</name>
</author>
<published>2019-03-19T23:55:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=05319653492410481b90205515cc5e8b57b388fc'/>
<id>05319653492410481b90205515cc5e8b57b388fc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Ensure stack size for POSIX signal handling is sufficient</title>
<updated>2018-05-29T20:29:04+00:00</updated>
<author>
<name>BiCapitalization</name>
</author>
<published>2018-05-27T16:12:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=88d7b8da25e9975793099bb4003a6f6729913e70'/>
<id>88d7b8da25e9975793099bb4003a6f6729913e70</id>
<content type='text'>
Until now, the stack size for POSIX signal handling was determined by
the implementation defined limit `STKSZ`, which in some cases turned out
to be insufficient, leading to stack overflow inside the signal handler.
The new size, which was determined experimentally, is the larger of 32kb
or `MINSTKSZ`.

Fixes #1225
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Until now, the stack size for POSIX signal handling was determined by
the implementation defined limit `STKSZ`, which in some cases turned out
to be insufficient, leading to stack overflow inside the signal handler.
The new size, which was determined experimentally, is the larger of 32kb
or `MINSTKSZ`.

Fixes #1225
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix 'defined but not used' warning</title>
<updated>2018-03-01T12:37:23+00:00</updated>
<author>
<name>Tomas Zeman</name>
</author>
<published>2018-02-28T15:17:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=865d5f59b49c3e823c471dc2022116a10f33b0c4'/>
<id>865d5f59b49c3e823c471dc2022116a10f33b0c4</id>
<content type='text'>
The warning occurred when !CATCH_CONFIG_WINDOWS_SEH
&amp;&amp; !CATCH_CONFIG_POSIX_SIGNALS.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The warning occurred when !CATCH_CONFIG_WINDOWS_SEH
&amp;&amp; !CATCH_CONFIG_POSIX_SIGNALS.
</pre>
</div>
</content>
</entry>
<entry>
<title>Simplify logic selecting between signal handling/SEH/nothing</title>
<updated>2018-02-23T13:56:07+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2018-02-23T13:56:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=7b6e49d7957359e5b8108b6008c733af0e60d403'/>
<id>7b6e49d7957359e5b8108b6008c733af0e60d403</id>
<content type='text'>
It was a bit of a mess previously
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It was a bit of a mess previously
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixes for cygwin</title>
<updated>2018-02-01T16:14:20+00:00</updated>
<author>
<name>philsquared</name>
</author>
<published>2018-02-01T16:14:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=5713381d060e94647d110227e2943c0aa9951401'/>
<id>5713381d060e94647d110227e2943c0aa9951401</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Enable Werror for dev builds</title>
<updated>2017-11-21T17:55:28+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2017-11-21T14:23:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=87c125ecb89724afb52f05170e44e3995733066a'/>
<id>87c125ecb89724afb52f05170e44e3995733066a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed templated StringRef ctor and added StringRef literal</title>
<updated>2017-11-21T11:08:39+00:00</updated>
<author>
<name>Phil Nash</name>
</author>
<published>2017-11-21T11:08:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=e4a898eaaa0f0458cd5d9f6d63a311366aa8eb0a'/>
<id>e4a898eaaa0f0458cd5d9f6d63a311366aa8eb0a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
