public bool CheckDefinitions (ModuleContainer module)
{
var ctx = module.Compiler;
foreach (var p in types) {
var found = PredefinedType.Resolve (module, p.Kind, p.Namespace, p.Name, p.Arity, Location.Null);
if (found == null || found == p)
continue;
var tc = found.MemberDefinition as TypeContainer;
if (tc != null) {
var ns = module.GlobalRootNamespace.GetNamespace (p.Namespace, false);
ns.ReplaceTypeWithPredefined (found, p);
tc.SetPredefinedSpec (p);
p.SetDefinition (found);
}
}
if (ctx.Report.Errors != 0)
return false;
// Set internal build-in types
Dynamic.SetDefinition (Object);
Null.SetDefinition (Object);
return true;
}
}