| Summary: | [otmodel][assist] completion proposals for implicitly inherited elements have no additional info | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Tools] Objectteams | Reporter: | Stephan Herrmann <stephan.herrmann> | ||||||
| Component: | OTDT | Assignee: | Stephan Herrmann <stephan.herrmann> | ||||||
| Status: | VERIFIED FIXED | QA Contact: | |||||||
| Severity: | normal | ||||||||
| Priority: | P3 | ||||||||
| Version: | 0.7.1 | ||||||||
| Target Milestone: | 0.8 M3 | ||||||||
| Hardware: | Other | ||||||||
| OS: | Linux | ||||||||
| Whiteboard: | |||||||||
| Attachments: |
|
||||||||
|
Description
Stephan Herrmann
Created attachment 180110 [details]
tests & fix
The immediate issue is fixed by making JavaProject.findType smarter:
If member type is not found locally, also climb up the team-super-chain
to find an inherited role, collecting all candidates for creation of
a PhantomType.
PhantomType had to be extended to handle multiple tsuper roles.
This is necessary so that method lookup will be able to find methods
from all tsupers.
Note, that testNewExpression1() throws some JavaModelExceptions(not present)
because getElementInfo() is attempted on a SourceType representing a
phantom role. This issue should be tracked separately.
Patch has been committed as r925 - r927 Field tests show that the following case is still not handled: - role is real (=not phantom) - method is inherited from tsuper It shows that the copied method is used for the proposal, from which no javadoc can be found. Reopening. Created attachment 180219 [details]
additional fix
This patch fixes the latest issue by using the copyInheritanceSrc
during completion.
Test included.
additional fix has been committed as r935, r936 Note that the fix bug 326969 is required for some tests to pass. Verified for 0.8 M3 using build 201011100445 |