[htdocs] bugs: Mention -D_GLIBCXX_ASSERTIONS and -D_GLIBCXX_DEBUG

Message ID 20231026171256.4139997-1-sam@gentoo.org
State Unresolved
Headers
Series [htdocs] bugs: Mention -D_GLIBCXX_ASSERTIONS and -D_GLIBCXX_DEBUG |

Checks

Context Check Description
snail/gcc-patch-check warning Git am fail log

Commit Message

Sam James Oct. 26, 2023, 5:12 p.m. UTC
  These options both enabled more checking within the C++ standard library
and can expose errors in submitted code.

-D_GLIBCXX_DEBUG is mentioned separately because while we want people to try it,
it's not always feasible because it requires the whole program and any used
libraries to also be built with it (as it breaks ABI).

Signed-off-by: Sam James <sam@gentoo.org>
---
 htdocs/bugs/index.html | 7 +++++++
 1 file changed, 7 insertions(+)
  

Comments

Jonathan Wakely Oct. 26, 2023, 7:04 p.m. UTC | #1
On Thursday, 26 October 2023, Sam James <sam@gentoo.org> wrote:
> These options both enabled more checking within the C++ standard library
> and can expose errors in submitted code.
>
> -D_GLIBCXX_DEBUG is mentioned separately because while we want people to
try it,
> it's not always feasible because it requires the whole program and any
used
> libraries to also be built with it (as it breaks ABI).
>
> Signed-off-by: Sam James <sam@gentoo.org>
> ---
>  htdocs/bugs/index.html | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/htdocs/bugs/index.html b/htdocs/bugs/index.html
> index da3d4c0d..a5a38f42 100644
> --- a/htdocs/bugs/index.html
> +++ b/htdocs/bugs/index.html
> @@ -56,6 +56,13 @@ makes a difference, or if compiling with
<code>-fsanitize=undefined</code>
>  produces any run-time errors, then your code is probably not correct.
>  </p>
>
> +<p>We also ask that for C++ code, users test their programs with
> +<code>-D_GLIBCXX_ASSERTIONS</code>. If you're able to rebuild the entire
> +program (including any libraries it uses, because it breaks ABI), please
do try

s/breaks/changes/ maybe? Breaks sounds like it's doing something bad.

> +<code>-D_GLIBCXX_DEBUG</code> which enables thorough checking throughout

It's not really throughout, just in containers and algos. Maybe "which
enables more thorough checking in parts of the C++ standard library".

> +the C++ standard library. If either of these fail, this is a strong
indicator
> +of an error in your code.</p>
> +
>  <h2>Summarized bug reporting instructions</h2>
>
>  <p>After this summary, you'll find detailed instructions that explain
> --
> 2.42.0
>
>
  
Sam James Oct. 26, 2023, 7:14 p.m. UTC | #2
Jonathan Wakely <jwakely@redhat.com> writes:

> On Thursday, 26 October 2023, Sam James <sam@gentoo.org> wrote:
>> These options both enabled more checking within the C++ standard library
>> and can expose errors in submitted code.
>>
>> -D_GLIBCXX_DEBUG is mentioned separately because while we want people to try it,
>> it's not always feasible because it requires the whole program and any used
>> libraries to also be built with it (as it breaks ABI).
>>
>> Signed-off-by: Sam James <sam@gentoo.org>
>> ---
>>  htdocs/bugs/index.html | 7 +++++++
>>  1 file changed, 7 insertions(+)
>>
>> diff --git a/htdocs/bugs/index.html b/htdocs/bugs/index.html
>> index da3d4c0d..a5a38f42 100644
>> --- a/htdocs/bugs/index.html
>> +++ b/htdocs/bugs/index.html
>> @@ -56,6 +56,13 @@ makes a difference, or if compiling with <code>-fsanitize=undefined</code>
>>  produces any run-time errors, then your code is probably not correct.
>>  </p>
>>
>> +<p>We also ask that for C++ code, users test their programs with
>> +<code>-D_GLIBCXX_ASSERTIONS</code>. If you're able to rebuild the entire
>> +program (including any libraries it uses, because it breaks ABI), please do try
>
> s/breaks/changes/ maybe? Breaks sounds like it's doing something bad.

Ah, yeah, a bad habit of mine I think.

>
>> +<code>-D_GLIBCXX_DEBUG</code> which enables thorough checking throughout
>
> It's not really throughout, just in containers and algos. Maybe "which enables more thorough checking in parts of the C++
> standard library".
>

wfm

>> +the C++ standard library. If either of these fail, this is a strong indicator
>> +of an error in your code.</p>
>> +
>>  <h2>Summarized bug reporting instructions</h2>
>>
>>  <p>After this summary, you'll find detailed instructions that explain
>> --
>> 2.42.0
>>
>>
  

Patch

diff --git a/htdocs/bugs/index.html b/htdocs/bugs/index.html
index da3d4c0d..a5a38f42 100644
--- a/htdocs/bugs/index.html
+++ b/htdocs/bugs/index.html
@@ -56,6 +56,13 @@  makes a difference, or if compiling with <code>-fsanitize=undefined</code>
 produces any run-time errors, then your code is probably not correct.
 </p>
 
+<p>We also ask that for C++ code, users test their programs with
+<code>-D_GLIBCXX_ASSERTIONS</code>. If you're able to rebuild the entire
+program (including any libraries it uses, because it breaks ABI), please do try
+<code>-D_GLIBCXX_DEBUG</code> which enables thorough checking throughout
+the C++ standard library. If either of these fail, this is a strong indicator
+of an error in your code.</p>
+
 <h2>Summarized bug reporting instructions</h2>
 
 <p>After this summary, you'll find detailed instructions that explain