X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Finternal%2Fparsing%2Ftypes%2FTApplyAst.java;h=3c77000757f67b96d56a2f4f6a5125888a4a8300;hp=c1b2d43723e744f780983627d7d1f3480db55897;hb=a8758de5bc19e5adb3f618d3038743a164f09912;hpb=12d9af17384d960b75d58c3935d2b7b46d93e87b diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/parsing/types/TApplyAst.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/parsing/types/TApplyAst.java index c1b2d4372..3c7700075 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/parsing/types/TApplyAst.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/parsing/types/TApplyAst.java @@ -4,6 +4,7 @@ import java.util.Arrays; import org.simantics.scl.compiler.elaboration.contexts.TypeTranslationContext; import org.simantics.scl.compiler.elaboration.modules.TypeAlias; +import org.simantics.scl.compiler.elaboration.modules.TypeDescriptor; import org.simantics.scl.compiler.environment.AmbiguousNameException; import org.simantics.scl.compiler.environment.Environments; import org.simantics.scl.compiler.internal.types.TypeElaborationContext; @@ -38,9 +39,11 @@ public class TApplyAst extends TypeAst { public Type toType(TypeTranslationContext context, Kind expectedKind) { if(function instanceof TVarAst) { String name = ((TVarAst)function).name; - TypeAlias alias; + TypeAlias alias = null; try { - alias = Environments.getTypeAlias(context.getEnvironment(), name); + TypeDescriptor tdesc = Environments.getTypeDescriptor(context.getEnvironment(), name); + if(tdesc instanceof TypeAlias) + alias = (TypeAlias)tdesc; } catch (AmbiguousNameException e) { context.getErrorLog().log(location, e.getMessage()); return Types.metaVar(Kinds.STAR);