Skip to content
New issue

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

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

Already on GitHub? Sign in 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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in 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