Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

VM change: Undeclared static setter calls: Compile time error becomes static warning per spec, 10.16 #3094

Closed
gbracha opened this issue May 16, 2012 · 5 comments
Assignees
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends.
Milestone

Comments

@gbracha
Copy link
Contributor

gbracha commented May 16, 2012

Spec section 10.16 has changed its handling of static setters (assignment)

If there is no class C in the enclosing lexical scope of the assignment, or if C does not declare, implicitly or explicitly, a setter v, then a NoSuchMethodError is thrown. Otherwise, the expression e is evaluated to an object o. Then, the setter C.v is invoked with its formal parameter bound to o. The value of the assignment expression is o.

It is a static warning if there is no class C in the enclosing lexical scope of the assignment, or if C does not declare, implicitly or explicitly, a setter v.

So, what was once a compile-time error is now a warning. Consequently, the situation where the warning arises need sto be handled dynamically via a NoSuchMethodError.

@scheglov
Copy link
Contributor

Marked this as blocking #3093.

@iposva-google
Copy link
Contributor

Added this to the M1 milestone.
Marked this as being blocked by #3093.
Unmarked this as being blocked by #3093.

@iposva-google
Copy link
Contributor

Set owner to @crelier.
Added Accepted label.

@crelier
Copy link
Contributor

crelier commented Sep 28, 2012

Added Started label.

@crelier
Copy link
Contributor

crelier commented Oct 4, 2012

Fixed at r13208.


Added Fixed label.

@gbracha gbracha added Type-Defect area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. labels Oct 4, 2012
@gbracha gbracha added this to the M1 milestone Oct 4, 2012
This issue was closed.
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends.
Projects
None yet
Development

No branches or pull requests

4 participants