This is an automated email from the ASF dual-hosted git repository.

paulk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git


The following commit(s) were added to refs/heads/master by this push:
     new 9366276  GROOVY-10262: MethodNode#getText can output incorrect 
modifiers
9366276 is described below

commit 9366276da64a201b5ab4fbde30401f4d39382cf4
Author: Paul King <[email protected]>
AuthorDate: Sun Sep 26 22:58:45 2021 +1000

    GROOVY-10262: MethodNode#getText can output incorrect modifiers
---
 src/main/java/org/codehaus/groovy/ast/MethodNode.java | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/main/java/org/codehaus/groovy/ast/MethodNode.java 
b/src/main/java/org/codehaus/groovy/ast/MethodNode.java
index 7dfb98a..af4a26e 100644
--- a/src/main/java/org/codehaus/groovy/ast/MethodNode.java
+++ b/src/main/java/org/codehaus/groovy/ast/MethodNode.java
@@ -22,6 +22,7 @@ import org.apache.groovy.ast.tools.MethodNodeUtils;
 import org.codehaus.groovy.ast.stmt.BlockStatement;
 import org.codehaus.groovy.ast.stmt.Statement;
 
+import java.lang.reflect.Modifier;
 import java.util.List;
 import java.util.Optional;
 
@@ -286,7 +287,8 @@ public class MethodNode extends AnnotatedNode {
         String retType = AstToTextHelper.getClassText(returnType);
         String exceptionTypes = 
AstToTextHelper.getThrowsClauseText(exceptions);
         String params = AstToTextHelper.getParametersText(parameters);
-        return AstToTextHelper.getModifiersText(modifiers) + " " + retType + " 
" + name + "(" + params + ") " + exceptionTypes + " { ... }";
+        int mask = this instanceof ConstructorNode ? 
Modifier.constructorModifiers() : Modifier.methodModifiers();
+        return AstToTextHelper.getModifiersText(modifiers & mask) + " " + 
retType + " " + name + "(" + params + ") " + exceptionTypes + " { ... }";
     }
 
     @Override

Reply via email to