@@ -1843,12 +1843,12 @@ object Parsers {
1843
1843
def typeParamClauseOpt (ownerKind : ParamOwner .Value ): List [TypeDef ] =
1844
1844
if (in.token == LBRACKET ) typeParamClause(ownerKind) else Nil
1845
1845
1846
- /** ClsParamClauses ::= {ClsParamClause} [[nl] `(' `implicit' ClsParams `)']
1847
- * ClsParamClause ::= [nl] `(' [ClsParams] ')'
1846
+ /** ClsParamClauses ::= {ClsParamClause} [[nl] `(' `implicit' [`unused'] ClsParams `)']
1847
+ * ClsParamClause ::= [nl] `(' [`unused'] [ ClsParams] ')'
1848
1848
* ClsParams ::= ClsParam {`' ClsParam}
1849
1849
* ClsParam ::= {Annotation} [{Modifier} (`val' | `var') | `inline'] Param
1850
- * DefParamClauses ::= {DefParamClause} [[nl] `(' `implicit' DefParams `)']
1851
- * DefParamClause ::= [nl] `(' [DefParams] ')'
1850
+ * DefParamClauses ::= {DefParamClause} [[nl] `(' `implicit' [`unused'] DefParams `)']
1851
+ * DefParamClause ::= [nl] `(' [`unused'] [ DefParams] ')'
1852
1852
* DefParams ::= DefParam {`,' DefParam}
1853
1853
* DefParam ::= {Annotation} [`inline'] Param
1854
1854
* Param ::= id `:' ParamType [`=' Expr]
@@ -1907,7 +1907,6 @@ object Parsers {
1907
1907
if (in.token == RPAREN ) Nil
1908
1908
else {
1909
1909
if (in.token == IMPLICIT || in.token == UNUSED ) {
1910
- imods = EmptyModifiers
1911
1910
if (in.token == IMPLICIT ) {
1912
1911
implicitOffset = in.offset
1913
1912
imods = implicitMods(imods)
@@ -1920,12 +1919,13 @@ object Parsers {
1920
1919
}
1921
1920
def clauses (): List [List [ValDef ]] = {
1922
1921
newLineOptWhenFollowedBy(LPAREN )
1923
- if (in.token == LPAREN )
1922
+ if (in.token == LPAREN ) {
1923
+ imods = EmptyModifiers
1924
1924
paramClause() :: {
1925
1925
firstClauseOfCaseClass = false
1926
1926
if (imods is Implicit ) Nil else clauses()
1927
1927
}
1928
- else Nil
1928
+ } else Nil
1929
1929
}
1930
1930
val start = in.offset
1931
1931
val result = clauses()
0 commit comments