public override void OnSuperLiteralExpression(SuperLiteralExpression node)
{
if (!AstUtil.IsTargetOfMethodInvocation(node))
{
node.ExpressionType = _currentMethod.DeclaringType.BaseType;
return;
}
if (EntityType.Constructor == _currentMethod.EntityType)
{
// TODO: point to super ctor
node.Entity = _currentMethod;
return;
}
if (null == _currentMethod.Overriden)
{
Error(node,
CompilerErrorFactory.MethodIsNotOverride(node, _currentMethod));
return;
}
node.Entity = _currentMethod.Overriden;
}