This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 201983 - [pull up method] introduces behavioral change: disable overloading + accessibiity
Summary: [pull up method] introduces behavioral change: disable overloading + accessib...
Status: RESOLVED WONTFIX
Alias: None
Product: java
Classification: Unclassified
Component: Refactoring (show other bugs)
Version: 7.0.1
Hardware: PC Mac OS X
: P4 normal (vote)
Assignee: Jan Becicka
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-09-12 02:22 UTC by GustavoSoares
Modified: 2016-07-07 07:18 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description GustavoSoares 2011-09-12 02:22:07 UTC
Create the classes:

package p2;
import p1.*;
public class C extends A {
}
package p1;
public class A {
  long k(  long a){
    return 2;
  }
}
package p1;
public class B extends A {
  private long k(  int a){
    return 1;
  }
  public long test(){
    return m();
  }
  public long m(){
    return new B().k(2);
  }
}

apply the pull up method refactoring to m 

package p2;
import p1.*;
public class C extends A {
}


package p1;
public class A {
  long k(  long a){
    return 2;
  }

    public long m() {
        return new B().k(2);
    }
}


package p1;
public class B extends A {
  private long k(  int a){
    return 1;
  }
  public long test(){
    return m();
  }
}

The transformation changes behavior. After the transformation the test method returns 2 instead of 1
Comment 1 Martin Balin 2016-07-07 07:18:48 UTC
This old bug may not be relevant anymore. If you can still reproduce it in 8.2 development builds please reopen this issue.

Thanks for your cooperation,
NetBeans IDE 8.2 Release Boss