Fix for Bug 355263 - [otre] avoid performance penalty due to eager creation of _OT$roleSet
also make one gc-test more robust: definitely avoid compiler optimization (use field instead of local)
diff --git a/testplugins/org.eclipse.objectteams.otdt.tests/otjld/org/eclipse/objectteams/otdt/tests/otjld/roleplaying/GC.java b/testplugins/org.eclipse.objectteams.otdt.tests/otjld/org/eclipse/objectteams/otdt/tests/otjld/roleplaying/GC.java
index ed4680e..b3db455 100644
--- a/testplugins/org.eclipse.objectteams.otdt.tests/otjld/org/eclipse/objectteams/otdt/tests/otjld/roleplaying/GC.java
+++ b/testplugins/org.eclipse.objectteams.otdt.tests/otjld/org/eclipse/objectteams/otdt/tests/otjld/roleplaying/GC.java
@@ -140,6 +140,7 @@
 			    "        }\n" +
 			    "        int baseI() -> get int i;\n" +
 			    "    }\n" +
+			    "    static Object keepBase, keepRole;\n" +
 			    "    public static void main(String[] args) {\n" +
 			    "        final Team252gcr1 t = new Team252gcr1();\n" +
 			    "        t.activate();\n" +
@@ -157,8 +158,8 @@
 			    "        bs[42].print();\n" +
 			    "        \n" +
 			    "        // null out most and expect most to be gone:\n" +
-			    "        Object keepBase = bs[42]; // unused local..\n" +
-			    "        Object keepRole = rs[0];\n" +
+			    "        keepBase = bs[42];\n" +
+			    "        keepRole = rs[0];\n" +
 			    "        rs = null;\n" +
 			    "        bs = null;        \n" +
 			    "        System.gc();\n" +