Add overriding method of a default method to signature files
Currently, the signature file elides overrides of a default method, as they are not essential for the compilation of the stubs. However, in some scenarios, the overrides of a default method may be essential for the compilation of the reverse dependency of the stubs. In the scenario seen below: ``` // API interface ApiInterface { public default void bar() {}; } class ApiClass implements AnotherParentInterface{ public void bar() {} } // App depending on the API interface AppInterface { public void bar(); } public class AppClass extends ApiClass implements AppInterface { } ``` Removal of `ApiClass.bar()` will lead to not overriding an abstract method `AppInterface.bar()` compilation error in `AppClass`. Therefore, this change adds the overrides of a default method to the signature files. Ignore-AOSP-First: The file change is caused by a metalava update that is already present in AOSP. However, because this file is not used in AOSP it does not have this change. Making this change in AOSP first would break ump as the change would merge down into ump without the matching Metalava change. So, the change needs to be made in ump first along with the Metalava change. After that it can be CP'd to AOSP in order to keep them consistent if necessary. Test: checkapi Bug: 299366704 Change-Id: I2364aea70c692e577e6057e13cd761a472b7aea4
Loading
Please register or sign in to comment