<feed xmlns='http://www.w3.org/2005/Atom'>
<title>assembler/src/reports, branch v2.3.0</title>
<subtitle>Rust library for parsing assembly languages</subtitle>
<id>https://code.benbridle.com/assembler/atom?h=v2.3.0</id>
<link rel='self' href='https://code.benbridle.com/assembler/atom?h=v2.3.0'/>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/'/>
<updated>2025-04-27T00:38:40Z</updated>
<entry>
<title>Replace ansi library with inked library</title>
<updated>2025-04-27T00:38:40Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-04-27T00:38:40Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=c13c1f2748598343e01128c3f734df309aa4a26d'/>
<id>urn:sha1:c13c1f2748598343e01128c3f734df309aa4a26d</id>
<content type='text'>
The inked library handles colours correctly on Windows. The log library
has also been updated to the newer version which uses inked internally.
</content>
</entry>
<entry>
<title>Don't print original source in redefinition errors</title>
<updated>2025-03-24T21:59:30Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-24T21:59:30Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=34ca33d86fd47ca912751bd8578e66f449639a7c'/>
<id>urn:sha1:34ca33d86fd47ca912751bd8578e66f449639a7c</id>
<content type='text'>
The source context of the original definition of a redefined symbol was
being printed when reporting a redefinition error. Since only the
source code containing the redefinition was available, if the original
definition was in a different file then the source context of the
original definition would just pull from this source code and the
context shown would be completely nonsensical.
</content>
</entry>
<entry>
<title>Large restructure</title>
<updated>2025-03-17T22:50:29Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-17T22:50:19Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=f8a694267d3981b0437c05fc248406116ea9ec06'/>
<id>urn:sha1:f8a694267d3981b0437c05fc248406116ea9ec06</id>
<content type='text'>
Files were moved to be better organised, error messages were changed to
be more general, and a Compiler type was added to the library.
</content>
</entry>
<entry>
<title>Implement source chains</title>
<updated>2025-03-11T03:18:01Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-11T03:18:01Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=a9e9dd452e23fa2e816df926a56c1f743eb32488'/>
<id>urn:sha1:a9e9dd452e23fa2e816df926a56c1f743eb32488</id>
<content type='text'>
A SourceSpan can now contain a child SourceSpan, ad infinitum, in order
to represent a chain of locations. The report_source_issue function
has been changed to print the entire chain, instead of just one
SourceSpan.

The report_source_issue function has also been changed to correctly
print SourceSpans that extend across multiple source lines.
</content>
</entry>
<entry>
<title>Make output of report_source_issue more concise</title>
<updated>2025-03-10T03:31:06Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-10T03:31:06Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=6fb6f2836232fe78dce507fa899629bbefb7b449'/>
<id>urn:sha1:6fb6f2836232fe78dce507fa899629bbefb7b449</id>
<content type='text'>
Instead of displaying two locations for the same error, only show the
in_merged source location if there is no in_source location.
</content>
</entry>
<entry>
<title>Create struct for reporting unused definitions</title>
<updated>2025-02-13T07:23:25Z</updated>
<author>
<name>Ben Bridle</name>
<email>bridle.benjamin@gmail.com</email>
</author>
<published>2025-02-13T07:23:25Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=e717e32badebcd34f590e1e58d6417ebf8c8d973'/>
<id>urn:sha1:e717e32badebcd34f590e1e58d6417ebf8c8d973</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Create struct for reporting in detail the symbols in a resolver</title>
<updated>2025-02-09T23:57:52Z</updated>
<author>
<name>Ben Bridle</name>
<email>bridle.benjamin@gmail.com</email>
</author>
<published>2025-02-09T23:57:52Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=6ceec5361c80b466f4a2a3719efb09ad6d6efa99'/>
<id>urn:sha1:6ceec5361c80b466f4a2a3719efb09ad6d6efa99</id>
<content type='text'>
This is used for debugging symbol definition and resolution issues.
</content>
</entry>
<entry>
<title>Track related symbols in resolver</title>
<updated>2025-02-09T23:44:42Z</updated>
<author>
<name>Ben Bridle</name>
<email>bridle.benjamin@gmail.com</email>
</author>
<published>2025-02-09T23:42:33Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=8ddf72ad0252f17913540a2e767966899a29d1b6'/>
<id>urn:sha1:8ddf72ad0252f17913540a2e767966899a29d1b6</id>
<content type='text'>
As well as the already-implemented tracking of the existing definition
of redefinitions, the resolver will now also track the definition that
resolves each reference, and the references resolved by each definition.
Instead of using tuples to hold this information, named wrapper structs
have been created for each category.
</content>
</entry>
<entry>
<title>Import from the log and ansi crates once in the reports module</title>
<updated>2025-02-09T23:37:16Z</updated>
<author>
<name>Ben Bridle</name>
<email>bridle.benjamin@gmail.com</email>
</author>
<published>2025-02-09T23:37:16Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=1c9e795245c5da0ea896a4824fb41c9542857ecc'/>
<id>urn:sha1:1c9e795245c5da0ea896a4824fb41c9542857ecc</id>
<content type='text'>
This is tidier than duplicate imports in every file of the module.
</content>
</entry>
<entry>
<title>Simplify infallible indexing operations in resolver</title>
<updated>2025-02-09T23:34:56Z</updated>
<author>
<name>Ben Bridle</name>
<email>bridle.benjamin@gmail.com</email>
</author>
<published>2025-02-09T23:34:56Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=dedd999b8f923641dce512c21db5528d32356cc6'/>
<id>urn:sha1:dedd999b8f923641dce512c21db5528d32356cc6</id>
<content type='text'>
Indexing into a resolver with a pointer from the same resolver should
never fail, and if it does we don't want to silently squash the error.
</content>
</entry>
</feed>
