intel / intel/dml-language-server
Evaluate templates in isolation
- Dominant language
- Rust
- Stars
- 9
- Forks
- 9
- PR merge metrics
- No merged PRs in 30d
Description
In DMLC, templates are only evaluated as they are part of other objects. Meaning unused templates get largely unanalyzed.
When writing templates, it would be handy to have templates evaluate all or part of themselves locally. This should of course not be a full evaluation of a template as if it was an object (abstract methods and parameters are ok). but inheritance order, type problems, and naming conflicts could all be found in isolation.
Similarly, files that are not imported from a device file are currently not semantically analyzed either. But it should be possible to find internal errors of those files, and goto def/ref etc. within them and to files they import.
Special handling will be needed for errors detected within files/templates analyzed in only this manner. In particular errors found that could be fixed when concretely instantiating the template or importing the file, should be modified to a corresponding warning instead.
Contributor guide
Assessment
This issue has not been assessed yet.