[ecj] 85/145: Import Debian changes 3.10.0+3.10.0-2

Emmanuel Bourg ebourg-guest at moszumanska.debian.org
Tue Mar 27 23:11:32 BST 2018


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 <doko at debian.org>
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 <doko at debian.org>  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



More information about the pkg-java-commits mailing list