Skip to content

Commit ed9f4b2

Browse files
committed
Allow new capture syntax only if capture checking is enabled
1 parent 3927cec commit ed9f4b2

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

compiler/src/dotty/tools/dotc/parsing/Parsers.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1453,7 +1453,7 @@ object Parsers {
14531453
}
14541454

14551455
def capturesAndResult(core: () => Tree): Tree =
1456-
if in.token == LBRACE && in.offset == in.lastOffset
1456+
if Feature.ccEnabled && in.token == LBRACE && in.offset == in.lastOffset
14571457
then CapturesAndResult(captureSet(), core())
14581458
else core()
14591459

@@ -1685,7 +1685,7 @@ object Parsers {
16851685
* or followed by a token that cannot start an infix type.
16861686
* Otherwise it is treated as an infix operator.
16871687
*/
1688-
private def isTrailingUpArrow =
1688+
private def isCaptureUpArrow =
16891689
val ahead = in.lookahead
16901690
ahead.token == LBRACE
16911691
|| ahead.isIdent(nme.PUREARROW)
@@ -1699,7 +1699,7 @@ object Parsers {
16991699
refinedTypeRest(atSpan(startOffset(t)) {
17001700
RefinedTypeTree(rejectWildcardType(t), refinement(indentOK = true))
17011701
})
1702-
else if in.isIdent(nme.UPARROW) && isTrailingUpArrow then
1702+
else if Feature.ccEnabled && in.isIdent(nme.UPARROW) && isCaptureUpArrow then
17031703
val upArrowStart = in.offset
17041704
in.nextToken()
17051705
def cs =

0 commit comments

Comments
 (0)