fix SWFOverride handling
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/ff178488 Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/ff178488 Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/ff178488 Branch: refs/heads/master Commit: ff178488cdce68ca46fa3b7aa91d180b5bbd0e61 Parents: 2f5a375 Author: Alex Harui <[email protected]> Authored: Tue May 30 12:49:42 2017 -0700 Committer: Alex Harui <[email protected]> Committed: Tue May 30 12:49:49 2017 -0700 ---------------------------------------------------------------------- .../org/apache/flex/compiler/internal/targets/SWFTarget.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/ff178488/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java ---------------------------------------------------------------------- diff --git a/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java b/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java index 06f932a..144ba5f 100644 --- a/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java +++ b/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java @@ -443,6 +443,9 @@ public abstract class SWFTarget extends Target implements ISWFTarget { String methodName = method.getMethodName(); if (methodName == null) continue; + // match getter with getter methodInfo + if (trait.isGetter() && method.getReturnType().getBaseName().equals(IASLanguageConstants.void_)) continue; + if (trait.isSetter() && (!method.getReturnType().getBaseName().equals(IASLanguageConstants.void_))) continue; if (methodName.equals(trait.getName().getBaseName())) { String[] keys = meta.getKeys(); @@ -479,7 +482,6 @@ public abstract class SWFTarget extends Target implements ISWFTarget method.setReturnType(name); foundName = true; changedABC = true; - break metas; } } if (!foundName) @@ -494,7 +496,6 @@ public abstract class SWFTarget extends Target implements ISWFTarget namePool.add(name); method.setReturnType(name); changedABC = true; - break metas; } } else if (keys[i].equals(IMetaAttributeConstants.NAME_SWFOVERRIDE_PARAMS)) @@ -556,9 +557,9 @@ public abstract class SWFTarget extends Target implements ISWFTarget } } method.setParamTypes(newList); - break metas; } } + break metas; } } }
