<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/lldb/source/Utility/DiagnosticsRendering.cpp, branch users/nico/python-2</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[lldb] Use llvm::stable_sort (NFC) (#141352)</title>
<updated>2025-05-24T16:37:29+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-05-24T16:37:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4788d5fabc54ec5f6e95d3b00a9811f90c5f94ae'/>
<id>4788d5fabc54ec5f6e95d3b00a9811f90c5f94ae</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb][NFC] Avoid an assertion failure in dwim-print (#139197)</title>
<updated>2025-05-09T20:46:35+00:00</updated>
<author>
<name>Igor Kudrin</name>
<email>ikudrin@accesssoftek.com</email>
</author>
<published>2025-05-09T20:46:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d71b6cf6a54cd0e39a70b039b489fab27274280a'/>
<id>d71b6cf6a54cd0e39a70b039b489fab27274280a</id>
<content type='text'>
With a debug build on Windows, printing inline diagnostics resulted in an
error, for example:

```
&gt; cd llvm-project\lldb\test\API\functionalities\postmortem\elf-core
&gt; lldb.exe -c altmain.core
&gt; p dummy
LLDB diagnostics will be written to ...
Please include the directory content when filing a bug report
Exception Code: 0x80000003
0x00007FF8FD6633EC, C:\llvm\build\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x13A33EC byte(s), std::_Vector_const_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt;::_Compat() + 0x6C byte(s), C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.43.34808\include\vector, line 202 + 0x5D byte(s)
0x00007FF8FD662ABE, C:\llvm\build\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x13A2ABE byte(s), std::_Vector_const_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt;::operator==() + 0x1E byte(s), C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.43.34808\include\vector, line 166 + 0x0 byte(s)
0x00007FF8FD662B2E, C:\llvm\build\\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x13A2B2E byte(s), std::_Vector_const_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt;::operator!=() + 0x1E byte(s), C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.43.34808\include\vector, line 176 + 0xF byte(s)
0x00007FF8FD65EE1C, C:\llvm\build\\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x139EE1C byte(s), std::operator!=&lt;std::_Vector_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt;,std::_Vector_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt; &gt;() + 0x3C byte(s), C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.43.34808\include\xutility, line 1947 + 0x0 byte(s)
0x00007FF8FD65D4E5, C:\llvm\build\\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x139D4E5 byte(s), lldb_private::RenderDiagnosticDetails() + 0x8F5 byte(s), C:\llvm\src\llvm-project\lldb\source\Utility\DiagnosticsRendering.cpp, line 189 + 0x25 byte(s)
...
```

The comparison operator of the iterators checks that they belong to the
same container, but `remaining_details.pop_back()` invalidates `detail`
making it incompatible with `remaining_details.rend()`.

---------

Co-authored-by: Michael Buch &lt;michaelbuch12@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With a debug build on Windows, printing inline diagnostics resulted in an
error, for example:

```
&gt; cd llvm-project\lldb\test\API\functionalities\postmortem\elf-core
&gt; lldb.exe -c altmain.core
&gt; p dummy
LLDB diagnostics will be written to ...
Please include the directory content when filing a bug report
Exception Code: 0x80000003
0x00007FF8FD6633EC, C:\llvm\build\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x13A33EC byte(s), std::_Vector_const_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt;::_Compat() + 0x6C byte(s), C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.43.34808\include\vector, line 202 + 0x5D byte(s)
0x00007FF8FD662ABE, C:\llvm\build\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x13A2ABE byte(s), std::_Vector_const_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt;::operator==() + 0x1E byte(s), C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.43.34808\include\vector, line 166 + 0x0 byte(s)
0x00007FF8FD662B2E, C:\llvm\build\\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x13A2B2E byte(s), std::_Vector_const_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt;::operator!=() + 0x1E byte(s), C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.43.34808\include\vector, line 176 + 0xF byte(s)
0x00007FF8FD65EE1C, C:\llvm\build\\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x139EE1C byte(s), std::operator!=&lt;std::_Vector_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt;,std::_Vector_iterator&lt;std::_Vector_val&lt;std::_Simple_types&lt;lldb_private::DiagnosticDetail&gt; &gt; &gt; &gt;() + 0x3C byte(s), C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.43.34808\include\xutility, line 1947 + 0x0 byte(s)
0x00007FF8FD65D4E5, C:\llvm\build\\bin\liblldb.dll(0x00007FF8FC2C0000) + 0x139D4E5 byte(s), lldb_private::RenderDiagnosticDetails() + 0x8F5 byte(s), C:\llvm\src\llvm-project\lldb\source\Utility\DiagnosticsRendering.cpp, line 189 + 0x25 byte(s)
...
```

The comparison operator of the iterators checks that they belong to the
same container, but `remaining_details.pop_back()` invalidates `detail`
making it incompatible with `remaining_details.rend()`.

---------

Co-authored-by: Michael Buch &lt;michaelbuch12@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] Expose structured errors in SBError (#120784)</title>
<updated>2024-12-20T21:02:54+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>aprantl@apple.com</email>
</author>
<published>2024-12-20T21:02:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d9cc37fea7b02954079ca59e8f7f28cffacc7e9e'/>
<id>d9cc37fea7b02954079ca59e8f7f28cffacc7e9e</id>
<content type='text'>
Building on top of previous work that exposed expression diagnostics via
SBCommandReturnObject, this patch generalizes the support to expose any
SBError as machine-readable structured data. One use-case of this is to
allow IDEs to better visualize expression diagnostics.

rdar://139997604</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Building on top of previous work that exposed expression diagnostics via
SBCommandReturnObject, this patch generalizes the support to expose any
SBError as machine-readable structured data. One use-case of this is to
allow IDEs to better visualize expression diagnostics.

rdar://139997604</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] Refactor helper by using iterators and in-place edits (NFC) (#116876)</title>
<updated>2024-11-19T21:02:47+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>aprantl@apple.com</email>
</author>
<published>2024-11-19T21:02:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=174899f738b31216750ac59562475966b0b0be42'/>
<id>174899f738b31216750ac59562475966b0b0be42</id>
<content type='text'>
Based on post-commit review feedback by Felipe Piovezan!</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Based on post-commit review feedback by Felipe Piovezan!</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] Improve rendering of inline diagnostics on the same column (#116727)</title>
<updated>2024-11-19T17:13:00+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>aprantl@apple.com</email>
</author>
<published>2024-11-19T17:13:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6b4f67545d87d5305cbbc20a678fb97ede995579'/>
<id>6b4f67545d87d5305cbbc20a678fb97ede995579</id>
<content type='text'>
depends on https://github.com/llvm/llvm-project/pull/116711

[lldb] Improve rendering of inline diagnostics on the same column by
fixing the indentation and printing these annotations in the original
order.

Before

    a+b+c;
    ^ ^ ^
    | | error: 3
    | |note: 2b
    | error: 2a
    error: 1

After

    a+b+c;
    ^ ^ ^
    | | error: 3
    | error: 2a
    | note: 2b
    error: 1</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
depends on https://github.com/llvm/llvm-project/pull/116711

[lldb] Improve rendering of inline diagnostics on the same column by
fixing the indentation and printing these annotations in the original
order.

Before

    a+b+c;
    ^ ^ ^
    | | error: 3
    | |note: 2b
    | error: 2a
    error: 1

After

    a+b+c;
    ^ ^ ^
    | | error: 3
    | error: 2a
    | note: 2b
    error: 1</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] Fix a positioning bug in diagnostics output (#116711)</title>
<updated>2024-11-19T16:58:49+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>aprantl@apple.com</email>
</author>
<published>2024-11-19T16:58:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8b2dff960d9d987c583c3a6d5729f01d101dc401'/>
<id>8b2dff960d9d987c583c3a6d5729f01d101dc401</id>
<content type='text'>
The old code did not take the indentation into account.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The old code did not take the indentation into account.</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] Fix the sorting function for diagnostics (#113220)</title>
<updated>2024-10-21T21:03:49+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>aprantl@apple.com</email>
</author>
<published>2024-10-21T21:03:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=74e1554d7b4013a975cf5fb8df64a6419bb14a45'/>
<id>74e1554d7b4013a975cf5fb8df64a6419bb14a45</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] Fix offset calculation when printing diagnostics in multiple ranges (#112466)</title>
<updated>2024-10-16T16:46:35+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>aprantl@apple.com</email>
</author>
<published>2024-10-16T16:46:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8046f15dfaaa8726b058a3483175890ca95832af'/>
<id>8046f15dfaaa8726b058a3483175890ca95832af</id>
<content type='text'>
depends on https://github.com/llvm/llvm-project/pull/112451</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
depends on https://github.com/llvm/llvm-project/pull/112451</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] Fix a crash when two diagnostics are on the same column or in … (#112451)</title>
<updated>2024-10-16T16:45:39+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>aprantl@apple.com</email>
</author>
<published>2024-10-16T16:45:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=889e6ad24b6df4f8d5232d4ecbd8eb492717f1b7'/>
<id>889e6ad24b6df4f8d5232d4ecbd8eb492717f1b7</id>
<content type='text'>
…reverse order

The second inner loop (only) was missing the check for offset &gt; column.
Also this patch sorts the diagnostics before printing them.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
…reverse order

The second inner loop (only) was missing the check for offset &gt; column.
Also this patch sorts the diagnostics before printing them.</pre>
</div>
</content>
</entry>
<entry>
<title>Support inline diagnostics in CommandReturnObject (#110901)</title>
<updated>2024-10-11T16:08:52+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>aprantl@apple.com</email>
</author>
<published>2024-10-11T16:08:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=089227feaf0efb5e540783a5542655e25669e7d8'/>
<id>089227feaf0efb5e540783a5542655e25669e7d8</id>
<content type='text'>
and implement them for dwim-print (a.k.a. `p`) as an example.

The next step will be to expose them as structured data in
SBCommandReturnObject.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
and implement them for dwim-print (a.k.a. `p`) as an example.

The next step will be to expose them as structured data in
SBCommandReturnObject.</pre>
</div>
</content>
</entry>
</feed>
