Skip to content

Commit 6289100

Browse files
committed
arg descs for * and ** were wrong
1 parent 07bf719 commit 6289100

File tree

1 file changed

+4
-19
lines changed

1 file changed

+4
-19
lines changed

src/main/java/org/jruby/prism/builder/IRBuilderPrism.java

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1748,17 +1748,8 @@ private void buildParameters(ParametersNode parameters) {
17481748
addArgumentDescription(ArgumentType.nokey, null);
17491749
// I don't think we need to slurp up anything to **nil so no recv instr here.
17501750
} else if (parameters.keyword_rest instanceof KeywordRestParameterNode kwrest) {
1751-
RubySymbol key;
1752-
ArgumentType type;
1753-
if (kwrest.name == null) {
1754-
key = symbol(STAR_STAR);
1755-
type = ArgumentType.anonkeyrest;
1756-
} else {
1757-
key = symbol(kwrest.name);
1758-
type = ArgumentType.keyrest;
1759-
}
1760-
1761-
addArgumentDescription(type, key);
1751+
RubySymbol key = kwrest.name == null ? symbol(STAR_STAR) : symbol(kwrest.name);
1752+
addArgumentDescription(ArgumentType.keyrest, key);
17621753

17631754
addInstr(new ReceiveKeywordRestArgInstr(getNewLocalVariable(key, 0), keywords));
17641755
}
@@ -2149,14 +2140,8 @@ protected void receiveNonBlockArgs(ParametersNode args, Variable keywords, boole
21492140
RubySymbol argName;
21502141

21512142
if (args.rest instanceof RestParameterNode restArg) {
2152-
// FIXME: how do we annotate generated AST types to have isAnonymous etc...
2153-
if (restArg.name == null) {
2154-
argName = symbol("*");
2155-
addArgumentDescription(ArgumentType.anonrest, argName);
2156-
} else {
2157-
argName = symbol(restArg.name);
2158-
addArgumentDescription(ArgumentType.rest, argName);
2159-
}
2143+
argName = restArg.name == null ? symbol("*") : symbol(restArg.name);
2144+
addArgumentDescription(ArgumentType.rest, argName);
21602145
} else { // ImplicitRestNode (*,)
21612146
argName = null;
21622147
}

0 commit comments

Comments
 (0)