www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - [SAOC 2023] dfmt rewrite - Weekly update #7

Hi all,

This week has been a ton of debugging. Firstly, the codebase 
refused to compile with `ASTCodegen` due to missing dependencies. 
Later, upon managing to compile, the binary was crashing with a 
segfault. It took a considerably long debugging session to figure 
out the correct compiler flags to make the binary work. In the 
process, we also discovered that the frontend was not being 
initialised properly, leading to crashes originating with the 
file manager while processing input.

All of this has been sorted out, and we now have a fully working 
dfmt binary that uses the AST generated by `ASTCodegen`. At the 
moment, it doesn't really do much apart from walking the AST, but 
this is a big step towards being able to implement the formatting 
passes. The next step would be to reproduce the source code by 
implementing the visitors for all possible AST nodes and writing 
the tokens properly.
Nov 03 2023