chapel
chapel copied to clipboard
CLS: Enum values print as dyno ids instead of their name
Using the dyno syntax printer prints enums as IDs. This is a problem for tools which use this, like the language server.
Consider the following code, where block comments indicate CLS inlay hints
enum M {
A, B
}
param a /*param value is foo.M@0*/ = M.A;
record R {
param p;
}
var b /*: R(foo.M@1)*/ = new R(M.B);
Instead, the enum printer should print the name of the enum (and possible the value of the enum, if applicable)
enum M {
A, B=3
}
param a /*param value is M.A*/ = M.A;
record R {
param p;
}
var b /*: R(M.B)*/ = new R(M.B);