Modify ↓
Ticket #137 (new defect)
Pseudo class variable as argument to synchronized blocks
| Reported by: | Bernhard Haumacher (haui at haumacher dot de) | Owned by: | hauma |
|---|---|---|---|
| Priority: | normal | Milestone: | 2.0 |
| Component: | JP trafo | Version: | 1.06c |
| Severity: | major | Keywords: | |
| Cc: |
Description (last modified by hauma) (diff)
Compiler crashes if it encounters an access to the pseudo .class variable of a remote class as argument to a synchronized block.
Problem
R.class is translated to "this.class" in the context of a synchonized block argument. This is nonsense.
Evaluation
The same difficulty exists for replicated classes (see ticket:157).
Test
jp.test.TestClassVariable
todo since 1.06c.
Attachments
Change History
Note: See
TracTickets for help on using
tickets.

For replicated classes this issue is resolved by inspecting synchronization on Class objects at runtime. A synchronization on a Class object representing a replicated class is forwarded to the replicated class implementation object as either a shared, exclusive, or collective synchronization.