<feed xmlns='http://www.w3.org/2005/Atom'>
<title>assembler/src/errors, 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>Report all symbols involved in a cyclic dependency error</title>
<updated>2025-04-01T04:15:31Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-04-01T04:15:31Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=1400c0cc3bdd7f685d63fe174286dd106337e735'/>
<id>urn:sha1:1400c0cc3bdd7f685d63fe174286dd106337e735</id>
<content type='text'>
Without this, it's difficult to sort out a cyclic dependency error when
many large source files are involved.
</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>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>
<entry>
<title>Move report-printing structs to separate module</title>
<updated>2025-02-09T22:56:58Z</updated>
<author>
<name>Ben Bridle</name>
<email>bridle.benjamin@gmail.com</email>
</author>
<published>2025-02-09T22:56:58Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=fd6b4471955dac64b7d40b7c31992c15d52b2460'/>
<id>urn:sha1:fd6b4471955dac64b7d40b7c31992c15d52b2460</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Display name of symbol instead of full token in error messages</title>
<updated>2025-02-08T02:14:25Z</updated>
<author>
<name>Ben Bridle</name>
<email>bridle.benjamin@gmail.com</email>
</author>
<published>2025-02-08T02:14:25Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=6eddb8de2e1a2355c533b3f45786c6d073c5a424'/>
<id>urn:sha1:6eddb8de2e1a2355c533b3f45786c6d073c5a424</id>
<content type='text'>
When reporting an undefined symbol, the full token string of the symbol
was being displayed. This was fine for Bedrock, which had at most one
symbol per token, but for Torque you can have multiple symbols
extracted from the same source string. The symbol name is displayed
instead.
</content>
</entry>
<entry>
<title>Implement source unit compilation, symbol resolution, error reporting</title>
<updated>2025-02-05T00:03:36Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-02-04T23:58:02Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=80da2af821385b2fc89091e9ac37a047349da4bd'/>
<id>urn:sha1:80da2af821385b2fc89091e9ac37a047349da4bd</id>
<content type='text'>
This library can now carry out all stages of assembly from collecting
source fragments to resolving symbols to pruning unused libraries to
generating a single compiled source file.

Pretty-printing of state has also been implemented in this library.
The source tree hierarchy, symbol resolution errors, and file read
errors can all be printed in a tidy format.
</content>
</entry>
</feed>
