Bug 224715 - Missing abstract problem methods should be tagged as synthetic methods
Summary: Missing abstract problem methods should be tagged as synthetic methods
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.4   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.4 M7   Edit
Assignee: Olivier Thomann CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 224685
  Show dependency tree
 
Reported: 2008-03-28 15:00 EDT by Olivier Thomann CLA
Modified: 2008-04-29 10:44 EDT (History)
3 users (show)

See Also:


Attachments
Proposed fix (1019 bytes, patch)
2008-03-28 15:28 EDT, Olivier Thomann CLA
no flags Details | Diff
Proposed fix (1.93 KB, patch)
2008-04-02 14:08 EDT, Olivier Thomann CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Olivier Thomann CLA 2008-03-28 15:00:56 EDT
When the compiler creates the missing abstract method (problem method), it should also tag them as synthetic methods. Without this, any tooling (including API tooling) cannot make a difference between an actual method defined in the class and the one added because it is missing.
See bug 224685 in API tooling land where a wrong delta (ADDED method) is reported when the method is not defined in the source.
Comment 1 Olivier Thomann CLA 2008-03-28 15:28:44 EDT
Created attachment 94047 [details]
Proposed fix
Comment 2 Olivier Thomann CLA 2008-03-28 15:29:30 EDT
I can take care of this one.
Philippe, let me know if you believe this makes sense.
Comment 3 Philipe Mulet CLA 2008-03-28 19:03:17 EDT
Pls go ahead. 
Comment 4 Olivier Thomann CLA 2008-03-28 21:36:44 EDT
All tests passed successfully with this patch.
Kent, do you see anything wrong with this patch? It is more about secondary errors that I am worried about.
Comment 5 Olivier Thomann CLA 2008-03-31 13:03:32 EDT
Released for 3.4M7.
Comment 6 Olivier Thomann CLA 2008-03-31 13:35:14 EDT
Added regression test org.eclipse.jdt.core.tests.builder.ErrorsTests#test0106
Comment 7 Olivier Thomann CLA 2008-04-02 14:08:47 EDT
Created attachment 94589 [details]
Proposed fix

New fix that sets the AccSynthetic bit directly when the method binding is created for the missing abstract problem methods.
This needs to be applied after the first patch as it removes the first change in the ClassFile class.
Comment 8 Kent Johnson CLA 2008-04-29 10:44:21 EDT
Verified for 3.4M7 using I20080429-0100