Mihaela Chirea - SAOC 2020 Milestone 3 Update 2 - Improving DMD as a Library

Mihaela Chirea chireamihaela99 at gmail.com
Sun Dec 13 00:24:50 UTC 2020


Hello!

Here is an update of the progress made since the last update:
- Worked on the FileManager
- Checked the locations of all AST nodes produced by the parser. 
Besides VarDeclaration and FuncDeclaration that start with the 
names and skip the types and storage classes (as mentioned here 
[1]), CallExp also seems to start at a weird position: skips the 
function name and sets loc to the location of '(':

foo(1, 2); // starts at column 4
1.foo(2); // starts at column 6

Next steps:
- Finish integrating the FileManager into the compiler
- Start looking into hiding the TypeInfo nodes when not needed [2]
- Insert a UserAttributeDeclarationItem node (as suggested 
here[3]) to preserve the location of user defined attributes

The tasks I planned for this project can be found here [4]

[1] 
https://forum.dlang.org/post/oqbvebbgpyeyxadgisfb@forum.dlang.org
[2] 
https://forum.dlang.org/post/iopxhnudlrgiqwjxzihe@forum.dlang.org
[3] 
https://forum.dlang.org/post/ymtjsccajclfhjrwjcrj@forum.dlang.org
[4] 
https://forum.dlang.org/post/kfcxcjauafpcrmfuajam@forum.dlang.org




More information about the Digitalmars-d mailing list