Bug 550863 - private access among nest mates is incompatible with copy
inheritance
- similar adjustment for private role methods
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/MessageSend.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/MessageSend.java
index 06d7389..a4e9a19 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/MessageSend.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/MessageSend.java
@@ -746,6 +746,9 @@
{
boolean useNesting = currentScope.enclosingSourceType().isNestmateOf(codegenBinding.declaringClass) &&
!(this.receiver instanceof QualifiedSuperReference);
+//{ObjectTeams: nesting a la JEP 181 doesn't help for private role methods
+ useNesting &= !this.actualReceiverType.isRole();
+// SH}
// depth is set for both implicit and explicit access (see MethodBinding#canBeSeenBy)
if (!useNesting &&
TypeBinding.notEquals(currentScope.enclosingSourceType(), codegenBinding.declaringClass)){