Thanks for reporting this. I’ve found and fixed the problem.
The Pragma view collects its entries while parsing the project. If a source file contained a syntax error, Studio was discarding every pragma it had already recognised in that file. That’s why the pragma in MutableString appeared while both pragmas in TextFileReader were missing. Whether the class was referenced elsewhere made no difference.
Studio will now preserve valid pragmas from a file even when other code in that file cannot yet be parsed. This is especially important while a class is still being developed.
The Pragma Unused args result will continue to be omitted intentionally because Unused is a compiler directive rather than a user-facing annotation.
The fix has been completed and will be included in the next release. Thanks again for the clear screenshots, they made the pattern much easier to identify.
https://feedback.objo.dev/bug/942