Siegfried Pammer
be565b5b4c
Store locations at print time; derive sequence points from nodes
...
Source locations were virtual, computed by recursing to the first and last
child, whose leftmost and rightmost leaves are token nodes; sequence-point
coordinates likewise came from reconstructed token nodes. Store locations as
fields assigned while printing, and derive sequence-point coordinates from the
surrounding real nodes plus the decompiler's fixed formatting, so neither
depends on token children. The using/foreach await modifier becomes a plain
bool field. Characterization gates lock the emitted locations and PDB
coordinates, which are unchanged.
Assisted-by: Claude:claude-opus-4-8:Claude Code
2 weeks ago
Siegfried Pammer
77d9ee73e9
Fix IDE2000 globally
6 months ago
Peter Crabtree
e1e16b64f5
dev: Strip BOM mark from text files
10 months ago
Kirill Osenkov
7992d148e8
Generate sequence points for expression-bodied properties and indexers
3 years ago
Siegfried Pammer
7e913e056b
Exclude artificial ILInstructions from PDB generation
5 years ago
Siegfried Pammer
06243c8244
Fix #2177 : PDB Generation is confused by enhanced using statements
...
(cherry picked from commit 65a5af2c99 )
6 years ago
Siegfried Pammer
65a5af2c99
Fix #2177 : PDB Generation is confused by enhanced using statements
6 years ago
dotnet format
0d9f871a4f
#2128 : Reformat the whole code base.
6 years ago
Siegfried Pammer
c9f5e5dd33
Refactor ForeachStatement to support deconstruction
6 years ago
Siegfried Pammer
d27c0226b4
Fix #2010 : NullReferenceException in SequencePointBuilder.VisitCatchClause()
6 years ago
Siegfried Pammer
794be9a5b4
Fix SequencePointBuilder.VisitCatchClause: do not create a sequence point from the catch-token to the closing brace.
6 years ago
Siegfried Pammer
24810cb2e8
use ILInstruction.StartILOffset instead of ILRanges.First().Start
...
Co-Authored-By: Daniel Grunwald <daniel@danielgrunwald.de>
6 years ago
Siegfried Pammer
4db41f69db
Fix #1919 : Use unmapped IL offsets at the start of a catch-block for the 'exception specifier' sequence point.
6 years ago
Siegfried Pammer
ba5c645257
Add TryCatchHandler annotation to CatchClause
6 years ago
Jackson Davis
6ab1f98fa3
Expand the range of sequence points out the closest empty ilstack
...
or implicit sequence point without creating overlapping sequence points.
If such a location cannot be found do, nothing. Fill in the
gaps with hidden sequence points.
Also emit a sequence point for
the prolog to account for seqeunce point there emitted by the C#
compiler. Without this, the debugger can stop there on a step in
using the original pdb, then decompile resulting in a no-code at this
location failure.
6 years ago
Siegfried Pammer
c2a2cf43f2
Fix #1482 : SequencePointBuilder fails with an assertion when trying to create sequence points for LINQ expressions
6 years ago
Siegfried Pammer
3f108cea37
#1482 : Fix sequence points of LINQ select and where.
6 years ago
Siegfried Pammer
67b7ad362a
Started documenting SequencePointBuilder
6 years ago
Siegfried Pammer
e4fda5c2e4
Rename HasILRange to ILRangeIsEmpty to properly reflect its implementation.
6 years ago
Siegfried Pammer
74f3b2a0dd
Fix #1712 : Invalid SequencePointsBlob when generating PDB: Filter duplicate IL range assignments.
7 years ago
Siegfried Pammer
c1fca21e8a
Make ILRange field private - introduce public API for IL range manipulation.
7 years ago
Daniel Grunwald
6a47826fe2
Add sequence point on closing brace if there's an implicit void return.
7 years ago
Siegfried Pammer
bcfb3742eb
Clean up PEFile, move Pdb related types to DebugInfo namespace
8 years ago
Siegfried Pammer
adca1f8867
Port ILFunction and SequencePointBuilder
8 years ago
Siegfried Pammer
87ced033ba
Rename Dom -> Metadata; Remove bogus abstraction
9 years ago
Siegfried Pammer
cb9787098f
Finished port of UI (Analyzers still excluded) and Disassembler
9 years ago
Siegfried Pammer
4511043815
SequencePointBuilder: add support for fixed-statement
9 years ago
Siegfried Pammer
a0ed791567
SequencePointBuilder: add support for if-statement, while-statement and do-while-statement
9 years ago
Siegfried Pammer
4ca4d97011
Improve SequencePointBuilder
9 years ago
Siegfried Pammer
2169d44c81
Implement sequence points for using statement.
9 years ago
Daniel Grunwald
d2b6651507
ILAst: show unused IL ranges
9 years ago
Siegfried Pammer
f890900d4d
Fix AddToSequencePoint for ILFunction
9 years ago
Siegfried Pammer
84592fcc6f
Prevent SequencePointBuilder from combining sequence points of lambda expressions.
9 years ago
Daniel Grunwald
3aca47d1f5
Allow decompiling whole assembly in IL + C# mode.
9 years ago
Daniel Grunwald
9d7fb0627d
Add hidden sequence points for unmapped code.
9 years ago
Daniel Grunwald
bc430a9358
Support SwitchStatement in SequencePointBuilder.
9 years ago
Daniel Grunwald
4347fab625
Add SequencePointBuilder.
9 years ago