commit | 037d8d8a9d07b4598f05bd3821eea415d2b32d4c | [log] [tgz] |
---|---|---|
author | Dan N. Christensen <dan@celticdanes.net> | Sat Apr 06 14:06:50 2019 +0200 |
committer | Roland Grunberg <rgrunber@redhat.com> | Thu May 16 15:39:51 2019 -0400 |
tree | f62fe90e1995ae1020085b0fcb7289fb71c9dd81 | |
parent | 3702ee4e16dd089b54b55d49247e8b484d881660 [diff] |
Fix bug 488942: [extract method] Extract method fails to handle side effect in loops - Add re-entry analysis for nested loops in InputFlowAnalyzer. This works for all loop types (for, enhanced_for, do and while loops.) - Add a test "A_test735" for the bug that is fixed. Before only iterating the outermost loop was analyzed. Therefore it was not discovered that variables changed in the extracted code inside a nested loop could be read in the next iteration of the inner loop. For variables declared outside the outermost loop this was saved by the re-entry analysis of the outermost loop, as the changed variable is also read in the re-entry of the outermost loop (in the initial iteration of the nested loop). Therefore the end result was OK, even though it did not pick up the read of the variable on re-entry of the nested loop. However for variables declared inside the outermost loop the variable goes out of scope and a new instance is used in the re-entry of the outermost loop. Therefore only a re-entry analysis of the nested loop itself can discover that the changed variable is read. Change-Id: I1152af0c52a6ac01e71a7d5e5a0aa079b4a777a6 Signed-off-by: Dan N. Christensen <dan@celticdanes.net>
Thanks for your interest in this project.
The JDT UI implements the user interface for the Java IDE. This includes views like Package Explorer and JUnit, the Java and properties files editors, Java search, and refactorings. Website: http://www.eclipse.org/jdt/ui/
Contributions to JDT UI are most welcome. There are many ways to contribute, from entering high quality bug reports, to contributing code or documentation changes. For a complete guide, see the [How to Contribute] 1 page on the team wiki.
Information regarding source code management, builds, coding standards, and more.
Before your contribution can be accepted by the project, you need to create and electronically sign the Eclipse Foundation Contributor License Agreement (CLA).
Public forum for Eclipse JDT users.
This project uses Bugzilla to track ongoing development and issues.
Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome!
Contact the project developers via the project's “dev” list.