import org.simantics.scl.compiler.elaboration.modules.TypeClassInstance;
import org.simantics.scl.compiler.elaboration.modules.TypeClassMethod;
import org.simantics.scl.compiler.errors.ErrorLog;
+import org.simantics.scl.compiler.errors.Locations;
import org.simantics.scl.compiler.internal.codegen.references.IVal;
import org.simantics.scl.compiler.internal.codegen.references.Val;
import org.simantics.scl.compiler.internal.codegen.ssa.SSAModule;
decomposed.parameters[i].setVal(parameterVals[i]);
w.return_(decomposed.body.toVal(compilationContext.environment, w));
} catch(RuntimeException e) {
- errorLog.setExceptionPosition(value.getExpression().location);
+ long location = value.getExpression().location;
+ if(location == Locations.NO_LOCATION)
+ location = value.definitionLocation;
+ errorLog.setExceptionPosition(location);
throw e;
}
}