Community
Participate
Working Groups
Build 20041012 When inheriting a public member from a restricted type, through a legal type, it should be diagnosed as an access violation as well (even though no direct reference to restricted type)
Attempted a fix, that: - propagates access restrictions from types to their methods and fields; - checks such access restrictions; - reports a new series of errors associated to illegal access to constructors, methods and fields. A case of interest has been raised by the double diagnostic on types and constructors when the latter is invoked implicitly. The fix avoids this for access restrictions. Side effects: - deprecation detection suffered from the double diagnostic described above; this has been removed and tests have been aligned accordingly; - breakages in the SuppressWarnings behavior have raised an investigation of the severity of deprecated references within javadoc tags; the fix changes the behavior in that it takes the min severity of those (instead of the max). The three attachment that follow give the fix. A review with other team members is planned for tomorrow, and the fix provided so far should not be considered as a release candidate.
Created attachment 22702 [details] Fix draft - see WORK task tags for review
Created attachment 22703 [details] Tests - part added, part aligned according to the fix side effects -compiler
Created attachment 22704 [details] Tests - part added, part aligned according to the fix side effects - model
+1 for RC3 Dirk - would you vote for this to be fixed ? Without it, we have a hole in our access restriction story (when inherited members).
Discussing with Dirk, we agreed to defer this one to a later stage, since it is not a critical defect, but rather an enhancement.
Good candidate for 3.1.1
Refreshed patches to catch up with 3.1 maintenance branch. Still needs review. (Note: since we do not add any problem IDs, the patch should apply to HEAD unchanged.)
Not for 3.1.1, will release this into 3.2
(In reply to comment #1) ... > Side effects: ... > - breakages in the SuppressWarnings behavior have raised an investigation of > the severity of deprecated references within javadoc tags; the fix changes > the behavior in that it takes the min severity of those (instead of the > max). Thinking a second time over the issue, reverted back to the previous behavior in this area, the UI delivering a consistent user experience.
Created attachment 32416 [details] New proposal, sync'd with v_631 level, workspace unified format
Added the test class AccessRestrictionsTests to show typical use cases.
This fix triggers a full rebuild of the workspace.
Verified for 3.2 M5 using build I20060214-0010