This commit is contained in:
nub31
2026-02-23 18:35:08 +01:00
parent 583c01201f
commit 76efc84984
4 changed files with 34 additions and 48 deletions

View File

@@ -399,13 +399,13 @@ public class Generator
private string EmitExpressionEnumLiteral(TypedNodeExpressionEnumLiteral expression)
{
var enumType = (NubTypeEnumVariant)expression.Type;
var enumType = (NubTypeEnum)expression.Type;
if (!moduleGraph.TryResolveType(enumType.Module, enumType.EnumName, true, out var info))
if (!moduleGraph.TryResolveType(enumType.Module, enumType.Name, true, out var info))
throw new UnreachableException();
var enumInfo = (Module.TypeInfoEnum)info;
var tag = enumInfo.Variants.ToList().FindIndex(x => x.Name == enumType.VariantName);
var tag = enumInfo.Variants.ToList().FindIndex(x => x.Name == expression.EnumVariant);
var initializerValues = new Dictionary<string, string>();
@@ -417,7 +417,7 @@ public class Generator
var initializerStrings = initializerValues.Select(x => $".{x.Key} = {x.Value}");
return $"({CType(expression.Type)}){{ .tag = {tag}, .{enumType.VariantName} = {{{string.Join(", ", initializerStrings)}}} }}";
return $"({CType(expression.Type)}){{ .tag = {tag}, .{expression.EnumVariant} = {{ {string.Join(", ", initializerStrings)} }} }}";
}
private string EmitExpressionMemberAccess(TypedNodeExpressionMemberAccess expression)