Skip to content

Commit d93c30e

Browse files
committed
prepare for Dotty: convert do-while to while
1 parent 86e8703 commit d93c30e

File tree

4 files changed

+19
-14
lines changed

4 files changed

+19
-14
lines changed

core/src/main/scala/scala/collection/generic/Signalling.scala

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -131,19 +131,19 @@ trait AtomicIndexFlag extends Signalling {
131131
abstract override def setIndexFlag(f: Int) = intflag.set(f)
132132
abstract override def setIndexFlagIfGreater(f: Int) = {
133133
var loop = true
134-
do {
134+
while (loop) {
135135
val old = intflag.get
136136
if (f <= old) loop = false
137137
else if (intflag.compareAndSet(old, f)) loop = false
138-
} while (loop)
138+
}
139139
}
140140
abstract override def setIndexFlagIfLesser(f: Int) = {
141141
var loop = true
142-
do {
142+
while (loop) {
143143
val old = intflag.get
144144
if (f >= old) loop = false
145145
else if (intflag.compareAndSet(old, f)) loop = false
146-
} while (loop)
146+
}
147147
}
148148
}
149149

core/src/main/scala/scala/collection/parallel/Tasks.scala

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,15 +180,16 @@ trait AdaptiveWorkStealingTasks extends Tasks {
180180
def spawnSubtasks() = {
181181
var last: AWSTWrappedTask[R, Tp] = null
182182
var head: AWSTWrappedTask[R, Tp] = this
183-
do {
183+
while ({
184184
val subtasks = head.split
185185
head = subtasks.head
186186
for (t <- subtasks.tail.reverse) {
187187
t.next = last
188188
last = t
189189
t.start()
190190
}
191-
} while (head.body.shouldSplitFurther)
191+
head.body.shouldSplitFurther
192+
}) ()
192193
head.next = last
193194
head
194195
}

junit/src/test/scala/scala/collection/concurrent/ctries_new/ConcurrentMapSpec.scala

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,11 @@ class ConcurrentMapSpec extends Spec {
7979
for (i <- 0 until sz) {
8080
val j = (offs + i) % sz
8181
var k = Int.MaxValue
82-
do {
82+
while ({
8383
if (k != Int.MaxValue) repeats += 1
8484
k = ct.getOrElse(new Wrap(j), 0)
85-
} while (!ct.replace(new Wrap(j), k, -k))
85+
!ct.replace(new Wrap(j), k, -k)
86+
}) ()
8687
}
8788
//println("Thread %d repeats: %d".format(index, repeats))
8889
}
@@ -154,13 +155,14 @@ class ConcurrentMapSpec extends Spec {
154155
for (j <- 0 until sz) {
155156
val i = (offs + j) % sz
156157
var success = false
157-
do {
158+
while ({
158159
if (ct.contains(new Wrap(i))) {
159160
success = ct.remove(new Wrap(i)) != None
160161
} else {
161162
success = ct.putIfAbsent(new Wrap(i), i) == None
162163
}
163-
} while (!success)
164+
!success
165+
}) ()
164166
}
165167
}
166168
}

junit/src/test/scala/scala/collection/concurrent/ctries_old/ConcurrentMapSpec.scala

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,11 @@ class ConcurrentMapSpec extends Spec {
7979
for (i <- 0 until sz) {
8080
val j = (offs + i) % sz
8181
var k = Int.MaxValue
82-
do {
82+
while ({
8383
if (k != Int.MaxValue) repeats += 1
8484
k = ct.getOrElse(new Wrap(j), 0)
85-
} while (!ct.replace(new Wrap(j), k, -k))
85+
!ct.replace(new Wrap(j), k, -k)
86+
}) ()
8687
}
8788
//println("Thread %d repeats: %d".format(index, repeats))
8889
}
@@ -154,13 +155,14 @@ class ConcurrentMapSpec extends Spec {
154155
for (j <- 0 until sz) {
155156
val i = (offs + j) % sz
156157
var success = false
157-
do {
158+
while ({
158159
if (ct.contains(new Wrap(i))) {
159160
success = ct.remove(new Wrap(i)) != None
160161
} else {
161162
success = ct.putIfAbsent(new Wrap(i), i) == None
162163
}
163-
} while (!success)
164+
!success
165+
}) ()
164166
}
165167
}
166168
}

0 commit comments

Comments
 (0)