You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@polygene.apache.org by "Niclas Hedhman (JIRA)" <ji...@apache.org> on 2017/05/15 06:12:04 UTC

[jira] [Commented] (POLYGENE-251) Support Java 8 default methods on interfaces

    [ https://issues.apache.org/jira/browse/POLYGENE-251?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16010010#comment-16010010 ] 

Niclas Hedhman commented on POLYGENE-251:
-----------------------------------------

I am looking at the problem with interface default methods and that Concerns/SideEffects doesn't work.

It is related to the issue that there is no Mixin in the regular sense. The MethodHandle approach was added to the invocation side of things, but declaration-wise we need a MixinModel that represents default methods. The missing bit goes into org/apache/polygene/runtime/bootstrap/CompositeAssemblyImpl.java:343 (return null).

> Support Java 8 default methods on interfaces
> --------------------------------------------
>
>                 Key: POLYGENE-251
>                 URL: https://issues.apache.org/jira/browse/POLYGENE-251
>             Project: Polygene
>          Issue Type: Bug
>            Reporter: Paul Merlin
>            Assignee: Niclas Hedhman
>            Priority: Blocker
>             Fix For: 3.0
>
>
> The following composite declaration:
> {code}
> public interface DefaultMethods
> {
>     default String sayHello( String name )
>     {
>         return "Hello, " + name + '!';
>     }
> }
> {code}
> fails at assembly with:
> {code}
> Composition Problems Report:
>     message: No implementation found for method 
>     method: String sayHello(String name)
> {code}
> See {{InterfaceDefaultMethodsTest}} in {{core/runtime}}
> Also see POLYGENE-120 for some preliminary investigation.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)