private void checkAmbiguities(SClassDefinition c, List<PDefinition> defs,
List<PDefinition> defs2)
{
for (PDefinition indef : defs)
{
ILexNameToken localName = indef.getName().getModifiedName(c.getName().getName());
for (PDefinition indef2 : defs2)
{
if (!indef.getLocation().equals(indef2.getLocation())
&& af.createPDefinitionAssistant().kind(indef).equals(af.createPDefinitionAssistant().kind(indef2)))
{
ILexNameToken localName2 = indef2.getName().getModifiedName(c.getName().getName());
if (af.getLexNameTokenAssistant().isEqual(localName, localName2))
{
PDefinition override = af.createPDefinitionListAssistant().findName(c.getDefinitions(), localName, NameScope.NAMESANDSTATE);
if (override == null)
{
TypeCheckerErrors.report(3276, "Ambiguous definitions inherited by "
+ c.getName().getName(), c.getLocation(), c);
TypeCheckerErrors.detail("1", indef.getName() + " "
+ indef.getLocation());
TypeCheckerErrors.detail("2", indef2.getName()
+ " " + indef2.getLocation());
}
}
}
}
}
}