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

Support Kotlin default methods regardless of presented annotations #322

Open
max-kammerer opened this issue Jan 3, 2019 · 1 comment
Open

Comments

@max-kammerer
Copy link

max-kammerer commented Jan 3, 2019

Kotlin team considers to removed change that was made for https://youtrack.jetbrains.com/issue/KT-6930 with annotation generation on default methods ('foo$default', JetBrains/kotlin@fd4946e#diff-c4b3d1cabf0518d85f061842d839bd32R617).

All annotations would be removed from $default methods, it can break quasar instrumentation.

Default companion for function 'foo' with N parameter generated by next template:

fun foo(param1: Type1...., paramN: TypeN): ResultType

[static] [synthetic flag] [bridge flag]? fun foo$default(param1: Type1...paramN: typeN, mask0:Int..mask[N-1/32]: Int, object: Object)

Sample bytecode

public final class Foo {

  public final foo(Ljava/lang/String;Ljava/lang/String;)V
 
  public static synthetic foo$default(LFoo;Ljava/lang/String;Ljava/lang/String;ILjava/lang/Object;)V
}

Bridge flag was generated prior Kotlin 1.3

@woggioni
Copy link

woggioni commented Jun 3, 2020

any update on this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants