diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 19405db61066..303922719b5b 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1169,7 +1169,7 @@ jobs: needs: [build-msi-package] with: # Ensure that version starts with prefix 3. - # In the future it can be adapted to compare with with git tag or version set in the project/Build.scala + # In the future it can be adapted to compare with git tag or version set in the project/Build.scala version: "3." java-version: 8 diff --git a/compiler/src/dotty/tools/backend/jvm/BCodeBodyBuilder.scala b/compiler/src/dotty/tools/backend/jvm/BCodeBodyBuilder.scala index 565ad72c0d9d..35b24ab57b00 100644 --- a/compiler/src/dotty/tools/backend/jvm/BCodeBodyBuilder.scala +++ b/compiler/src/dotty/tools/backend/jvm/BCodeBodyBuilder.scala @@ -1143,7 +1143,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder { * - Every time when generating an ATHROW, a new basic block is started. * - During classfile writing, such basic blocks are found to be dead: no branches go there * - Eliminating dead code would probably require complex shifts in the output byte buffer - * - But there's an easy solution: replace all code in the dead block with with + * - But there's an easy solution: replace all code in the dead block with * `nop; nop; ... nop; athrow`, making sure the bytecode size stays the same * - The corresponding stack frame can be easily generated: on entering a dead the block, * the frame requires a single Throwable on the stack. diff --git a/compiler/src/dotty/tools/dotc/printing/Printer.scala b/compiler/src/dotty/tools/dotc/printing/Printer.scala index 297dc31ea94a..9f485ee84cda 100644 --- a/compiler/src/dotty/tools/dotc/printing/Printer.scala +++ b/compiler/src/dotty/tools/dotc/printing/Printer.scala @@ -71,7 +71,7 @@ abstract class Printer { def changePrec(prec: Precedence)(op: => Text): Text = if (prec < this.prec) atPrec(prec) ("(" ~ op ~ ")") else atPrec(prec)(op) - /** The name, possibly with with namespace suffix if debugNames is set: + /** The name, possibly with namespace suffix if debugNames is set: * /L for local names, /V for other term names, /T for type names */ def nameString(name: Name): String diff --git a/compiler/src/dotty/tools/dotc/typer/Applications.scala b/compiler/src/dotty/tools/dotc/typer/Applications.scala index 17be2acc7378..6bb95e20fcaf 100644 --- a/compiler/src/dotty/tools/dotc/typer/Applications.scala +++ b/compiler/src/dotty/tools/dotc/typer/Applications.scala @@ -1348,7 +1348,7 @@ trait Applications extends Compatibility { tree } - /** Is `tp` a unary function type or an overloaded type with with only unary function + /** Is `tp` a unary function type or an overloaded type with only unary function * types as alternatives? */ def isUnary(tp: Type)(using Context): Boolean = tp match { diff --git a/docs/_docs/reference/experimental/better-fors.md b/docs/_docs/reference/experimental/better-fors.md index 7add425caf51..a4c42c9fb380 100644 --- a/docs/_docs/reference/experimental/better-fors.md +++ b/docs/_docs/reference/experimental/better-fors.md @@ -8,7 +8,7 @@ The `betterFors` language extension improves the usability of `for`-comprehensio The extension is enabled by the language import `import scala.language.experimental.betterFors` or by setting the command line option `-language:experimental.betterFors`. -The biggest user facing change is the new ability to start `for`-comprehensions with with aliases. This means that the following previously invalid code is now valid: +The biggest user facing change is the new ability to start `for`-comprehensions with aliases. This means that the following previously invalid code is now valid: ```scala for diff --git a/tests/pos-with-compiler-cc/backend/jvm/BCodeBodyBuilder.scala b/tests/pos-with-compiler-cc/backend/jvm/BCodeBodyBuilder.scala index 6f067a0e5ef0..da6d213351b7 100644 --- a/tests/pos-with-compiler-cc/backend/jvm/BCodeBodyBuilder.scala +++ b/tests/pos-with-compiler-cc/backend/jvm/BCodeBodyBuilder.scala @@ -1103,7 +1103,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder { * - Every time when generating an ATHROW, a new basic block is started. * - During classfile writing, such basic blocks are found to be dead: no branches go there * - Eliminating dead code would probably require complex shifts in the output byte buffer - * - But there's an easy solution: replace all code in the dead block with with + * - But there's an easy solution: replace all code in the dead block with * `nop; nop; ... nop; athrow`, making sure the bytecode size stays the same * - The corresponding stack frame can be easily generated: on entering a dead the block, * the frame requires a single Throwable on the stack. diff --git a/tests/pos-with-compiler-cc/dotc/printing/Printer.scala b/tests/pos-with-compiler-cc/dotc/printing/Printer.scala index b9da874cf9ae..eff283b345ce 100644 --- a/tests/pos-with-compiler-cc/dotc/printing/Printer.scala +++ b/tests/pos-with-compiler-cc/dotc/printing/Printer.scala @@ -70,7 +70,7 @@ abstract class Printer extends Pure { def changePrec(prec: Precedence)(op: => Text): Text = if (prec < this.prec) atPrec(prec) ("(" ~ op ~ ")") else atPrec(prec)(op) - /** The name, possibly with with namespace suffix if debugNames is set: + /** The name, possibly with namespace suffix if debugNames is set: * /L for local names, /V for other term names, /T for type names */ def nameString(name: Name): String diff --git a/tests/pos-with-compiler-cc/dotc/typer/Applications.scala b/tests/pos-with-compiler-cc/dotc/typer/Applications.scala index aed6c55f8ad8..6ffbf0465120 100644 --- a/tests/pos-with-compiler-cc/dotc/typer/Applications.scala +++ b/tests/pos-with-compiler-cc/dotc/typer/Applications.scala @@ -1182,7 +1182,7 @@ trait Applications extends Compatibility { tree } - /** Is `tp` a unary function type or an overloaded type with with only unary function + /** Is `tp` a unary function type or an overloaded type with only unary function * types as alternatives? */ def isUnary(tp: Type)(using Context): Boolean = tp match {