mirror of
https://github.com/dart-lang/sdk
synced 2024-09-19 15:01:29 +00:00
[dart2js] Ignore abstract isMemberSignature procedures.
Change-Id: Idaa47742d44fbf10e8053f9049650e9a9d3aca0d Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139141 Reviewed-by: Johnni Winther <johnniwinther@google.com> Reviewed-by: Sigmund Cherem <sigmund@google.com> Commit-Queue: Joshua Litt <joshualitt@google.com>
This commit is contained in:
parent
98d09f8f78
commit
2972e22f01
|
@ -388,7 +388,8 @@ class KClassEnvImpl implements KClassEnv {
|
|||
|
||||
void addProcedure(ir.Procedure member,
|
||||
{bool includeStatic, bool includeNoSuchMethodForwarders}) {
|
||||
if (member.isForwardingStub && member.isAbstract) {
|
||||
if ((member.isMemberSignature || member.isForwardingStub) &&
|
||||
member.isAbstract) {
|
||||
// Skip abstract forwarding stubs. These are never emitted but they
|
||||
// might shadow the inclusion of a mixed in method in code like:
|
||||
//
|
||||
|
@ -403,7 +404,8 @@ class KClassEnvImpl implements KClassEnv {
|
|||
// `Mixin.method` is inherited by `Class`.
|
||||
return;
|
||||
}
|
||||
if (member.isForwardingStub && cls.isAnonymousMixin) {
|
||||
if ((member.isMemberSignature || member.isForwardingStub) &&
|
||||
cls.isAnonymousMixin) {
|
||||
return;
|
||||
}
|
||||
if (!includeStatic && member.isStatic) return;
|
||||
|
|
Loading…
Reference in a new issue