Author: pcc-guest Date: 2009-03-21 12:22:09 +0000 (Sat, 21 Mar 2009) New Revision: 8092
Removed: trunk/clojure/debian/patches/02-better-bytecode.patch Modified: trunk/clojure/debian/changelog Log: debian/patches/02-better-bytecode.patch: removed; applied upstream Modified: trunk/clojure/debian/changelog =================================================================== --- trunk/clojure/debian/changelog 2009-03-21 12:20:55 UTC (rev 8091) +++ trunk/clojure/debian/changelog 2009-03-21 12:22:09 UTC (rev 8092) @@ -2,6 +2,7 @@ * New upstream release. * debian/patches/01-system-asm.patch: updated + * debian/patches/02-better-bytecode.patch: removed; applied upstream -- Peter Collingbourne <[email protected]> Sat, 21 Mar 2009 12:02:43 +0000 Deleted: trunk/clojure/debian/patches/02-better-bytecode.patch =================================================================== --- trunk/clojure/debian/patches/02-better-bytecode.patch 2009-03-21 12:20:55 UTC (rev 8091) +++ trunk/clojure/debian/patches/02-better-bytecode.patch 2009-03-21 12:22:09 UTC (rev 8092) @@ -1,86 +0,0 @@ -From 9c991e251cbc27947737445847a4103b371737ae Mon Sep 17 00:00:00 2001 -From: Peter Collingbourne <[email protected]> -Date: Mon, 29 Dec 2008 01:40:19 +0000 -Subject: [PATCH] Generate bytecode compatible with stricter JVMs (e.g. gij) - ---- - src/clj/clojure/core_proxy.clj | 2 ++ - src/clj/clojure/genclass.clj | 3 +++ - src/jvm/clojure/lang/Compiler.java | 6 ++---- - 3 files changed, 7 insertions(+), 4 deletions(-) - -diff --git a/src/clj/clojure/core_proxy.clj b/src/clj/clojure/core_proxy.clj -index 8a77734..fc20cf7 100644 ---- a/src/clj/clojure/core_proxy.clj -+++ b/src/clj/clojure/core_proxy.clj -@@ -62,6 +62,7 @@ - (. gen (dup)) - (. gen (ifNull else-label)) - ;if found -+ (. gen (checkCast ifn-type)) - (. gen (loadThis)) - ;box args - (dotimes [i (count ptypes)] -@@ -125,6 +126,7 @@ - (. gen (loadThis)) - (. gen (dup)) - (. gen (getField ctype fmap imap-type)) -+ (. gen (checkCast (totype clojure.lang.IPersistentCollection))) - (. gen (loadArgs)) - (. gen (invokeInterface (totype clojure.lang.IPersistentCollection) - (. Method (getMethod "clojure.lang.IPersistentCollection cons(Object)")))) -diff --git a/src/clj/clojure/genclass.clj b/src/clj/clojure/genclass.clj -index e293fe0..e8f55b6 100644 ---- a/src/clj/clojure/genclass.clj -+++ b/src/clj/clojure/genclass.clj -@@ -181,6 +181,7 @@ - (when is-overload - (. gen (mark found-label))) - ;if found -+ (. gen (checkCast ifn-type)) - (when-not as-static - (. gen (loadThis))) - ;box args -@@ -274,6 +275,7 @@ - (emit-get-var gen init-name) - (. gen dup) - (. gen ifNull no-init-label) -+ (. gen (checkCast ifn-type)) - ;box init args - (dotimes [i (count pclasses)] - (. gen (loadArg i)) -@@ -386,6 +388,7 @@ - (emit-get-var gen main-name) - (. gen dup) - (. gen ifNull no-main-label) -+ (. gen (checkCast ifn-type)) - (. gen loadArgs) - (. gen (invokeStatic rt-type (. Method (getMethod "clojure.lang.ISeq seq(Object)")))) - (. gen (invokeInterface ifn-type (new Method "applyTo" obj-type -diff --git a/src/jvm/clojure/lang/Compiler.java b/src/jvm/clojure/lang/Compiler.java -index bb62536..961e16a 100644 ---- a/src/jvm/clojure/lang/Compiler.java -+++ b/src/jvm/clojure/lang/Compiler.java -@@ -1155,8 +1155,7 @@ static class InstanceMethodExpr extends MethodExpr{ - { - Type type = Type.getType(method.getDeclaringClass()); - target.emit(C.EXPRESSION, fn, gen); -- if(!method.getDeclaringClass().isInterface()) -- gen.checkCast(type); -+ gen.checkCast(type); - MethodExpr.emitTypedArgs(fn, gen, method.getParameterTypes(), args); - if(context == C.RETURN) - { -@@ -1179,8 +1178,7 @@ static class InstanceMethodExpr extends MethodExpr{ - { - Type type = Type.getType(method.getDeclaringClass()); - target.emit(C.EXPRESSION, fn, gen); -- if(!method.getDeclaringClass().isInterface()) -- gen.checkCast(type); -+ gen.checkCast(type); - MethodExpr.emitTypedArgs(fn, gen, method.getParameterTypes(), args); - if(context == C.RETURN) - { --- -1.5.6.5 - _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/mailman/listinfo/pkg-java-commits

