Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDennis Wagelaar2014-07-07 04:38:21 -0400
committerDennis Wagelaar2014-07-07 04:38:21 -0400
commitdf73a2e2504f09d29d1551dc34bc2e66b356cf65 (patch)
treecf884058bbab9173185b07137fabb6950656fbde /plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse
parent583fe3805c36951ffc76e1951bb0f5b1e641da6b (diff)
downloadorg.eclipse.atl-df73a2e2504f09d29d1551dc34bc2e66b356cf65.tar.gz
org.eclipse.atl-df73a2e2504f09d29d1551dc34bc2e66b356cf65.tar.xz
org.eclipse.atl-df73a2e2504f09d29d1551dc34bc2e66b356cf65.zip
Fix bug: ByteCodeSwitch used wrong Set class for boxing method call
results.
Diffstat (limited to 'plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse')
-rw-r--r--plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/jit/ByteCodeSwitch.java8
1 files changed, 3 insertions, 5 deletions
diff --git a/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/jit/ByteCodeSwitch.java b/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/jit/ByteCodeSwitch.java
index 15d6024a..be9ee145 100644
--- a/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/jit/ByteCodeSwitch.java
+++ b/plugins/org.eclipse.m2m.atl.emftvm/src/org/eclipse/m2m/atl/emftvm/jit/ByteCodeSwitch.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2011-2013 Dennis Wagelaar, Vrije Universiteit Brussel.
+ * Copyright (c) 2011-2014 Dennis Wagelaar, Vrije Universiteit Brussel.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -92,7 +92,6 @@ import org.eclipse.m2m.atl.emftvm.util.EnumLiteral;
import org.eclipse.m2m.atl.emftvm.util.LazyCollection;
import org.eclipse.m2m.atl.emftvm.util.LazyList;
import org.eclipse.m2m.atl.emftvm.util.LazyListOnList;
-import org.eclipse.m2m.atl.emftvm.util.LazySet;
import org.eclipse.m2m.atl.emftvm.util.NativeTypes;
import org.eclipse.m2m.atl.emftvm.util.StackFrame;
import org.eclipse.m2m.atl.emftvm.util.VMException;
@@ -2134,11 +2133,11 @@ public class ByteCodeSwitch extends EmftvmSwitch<MethodVisitor> implements Opcod
invokeVirt(EnumConversionList.class, "cache", EnumConversionList.class); // enumlist.cache(): [..., enumlist]
label(ifModelNull); // [..., enumlist]
}
- } else if (Set.class.isAssignableFrom(cls)) {
+ } else if (java.util.Set.class.isAssignableFrom(cls)) {
new_(EnumConversionSetOnSet.class); // new EnumConversionSetOnSet: [..., val, enumset]
dup_x1(); // [..., enumset, val, enumset]
swap(); // [..., enumset, enumset, val]
- invokeCons(EnumConversionSetOnSet.class, Set.class); // enumset.<init>(val): [..., enumset]
+ invokeCons(EnumConversionSetOnSet.class, java.util.Set.class); // enumset.<init>(val): [..., enumset]
if (EObject.class.isAssignableFrom(selfCls)) {
final Label ifModelNull = new Label();
aload(2); // env: [..., enumset, env]
@@ -2148,7 +2147,6 @@ public class ByteCodeSwitch extends EmftvmSwitch<MethodVisitor> implements Opcod
invokeVirt(EnumConversionSetOnSet.class, "cache", EnumConversionSetOnSet.class); // enumlist.cache(): [..., enumset]
label(ifModelNull); // [..., enumset]
}
- invokeVirt(LazyCollection.class, "asSet", LazySet.class); // enumlist.asSet(): [..., enumset]
} else {
new_(EnumConversionList.class); // new EnumConversionList: [..., val, enumlist]
dup_x1(); // [..., enumlist, val, enumlist]

Back to the top