This is an automated email from the git hooks/post-receive script. ebourg-guest pushed a commit to branch master in repository ecj.
commit 779c5168f6bd8175b4f69a3395fd1319358bc1a7 Author: Matthias Klose <[email protected]> Date: Thu Aug 21 14:57:09 2014 +0200 Import Debian changes 3.10.0+3.10.0-2 ecj (3.10.0+3.10.0-2) experimental; urgency=medium * Fix Bug 438812 - Missing bridge methods in indirect child classes. Closes: #753315. --- debian/changelog | 7 +++++++ debian/patches/issue438812.diff | 26 ++++++++++++++++++++++++++ debian/patches/series | 1 + 3 files changed, 34 insertions(+) diff --git a/debian/changelog b/debian/changelog index a657e0a..e72a1c4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +ecj (3.10.0+3.10.0-2) experimental; urgency=medium + + * Fix Bug 438812 - Missing bridge methods in indirect child classes. + Closes: #753315. + + -- Matthias Klose <[email protected]> Thu, 21 Aug 2014 14:57:09 +0200 + ecj (3.10.0+3.10.0-1) experimental; urgency=medium * Upload to experimental, unstable has 3.9.0 again (see #753315). diff --git a/debian/patches/issue438812.diff b/debian/patches/issue438812.diff new file mode 100644 index 0000000..e71a61c --- /dev/null +++ b/debian/patches/issue438812.diff @@ -0,0 +1,26 @@ +# DP: https://bugs.eclipse.org/bugs/show_bug.cgi?id=438812 +# DP: Fix Bug 438812 - Missing bridge methods in indirect child classes + +--- a/src/org.eclipse.jdt.core/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java ++++ b/src/org.eclipse.jdt.core/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java +@@ -950,11 +950,15 @@ boolean isInterfaceMethodImplemented(MethodBinding inheritedMethod, MethodBindin + return false; // must hold onto ParameterizedMethod to see if a bridge method is necessary + + inheritedMethod = computeSubstituteMethod(inheritedMethod, existingMethod); +- return inheritedMethod != null +- && (TypeBinding.equalsEquals(inheritedMethod.returnType, existingMethod.returnType) // need to keep around to produce bridge methods? ... +- || (TypeBinding.notEquals(this.type, existingMethod.declaringClass) // ... not if inheriting the bridge situation from a superclass +- && !existingMethod.declaringClass.isInterface())) +- && doesMethodOverride(existingMethod, inheritedMethod); ++ if (inheritedMethod == null ++ || TypeBinding.notEquals(inheritedMethod.returnType, existingMethod.returnType)) // need to keep around to produce bridge methods? ... ++ return false; ++ ++ if (!doesMethodOverride(existingMethod, inheritedMethod)) ++ return false; ++ ++ return TypeBinding.notEquals(this.type, existingMethod.declaringClass) // ... not if inheriting the bridge situation from a superclass ++ && !existingMethod.declaringClass.isInterface(); + } + public boolean isMethodSubsignature(MethodBinding method, MethodBinding inheritedMethod) { + if (!org.eclipse.jdt.core.compiler.CharOperation.equals(method.selector, inheritedMethod.selector)) diff --git a/debian/patches/series b/debian/patches/series index 590acf3..bc7fe40 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1,3 @@ gcc-changes.diff remove-overrides.diff +issue438812.diff -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/ecj.git _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

