diff --git a/compiler/src/dotty/tools/backend/sjs/JSCodeGen.scala b/compiler/src/dotty/tools/backend/sjs/JSCodeGen.scala index db91dc02fd18..e22f4c9e80db 100644 --- a/compiler/src/dotty/tools/backend/sjs/JSCodeGen.scala +++ b/compiler/src/dotty/tools/backend/sjs/JSCodeGen.scala @@ -1048,9 +1048,6 @@ class JSCodeGen()(using genCtx: Context) { "Malformed parameter list: " + vparamss) val params = if (vparamss.isEmpty) Nil else vparamss.head.map(_.symbol) - val isJSClassConstructor = - sym.isClassConstructor && currentClassSym.isNonNativeJSClass - val methodName = encodeMethodSym(sym) val originalName = originalNameOfMethod(sym) @@ -1089,18 +1086,17 @@ class JSCodeGen()(using genCtx: Context) { } val methodDef = { - if (isJSClassConstructor) { + if (sym.isClassConstructor) { val body0 = genStat(rhs) - val body1 = - if (!sym.isPrimaryConstructor) body0 - else moveAllStatementsAfterSuperConstructorCall(body0) - js.MethodDef(js.MemberFlags.empty, methodName, originalName, - jsParams, jstpe.NoType, Some(body1))(optimizerHints, None) - } else if (sym.isClassConstructor) { + val body1 = { + val needsMove = currentClassSym.isNonNativeJSClass && sym.isPrimaryConstructor + if (needsMove) moveAllStatementsAfterSuperConstructorCall(body0) + else body0 + } val namespace = js.MemberNamespace.Constructor js.MethodDef(js.MemberFlags.empty.withNamespace(namespace), - methodName, originalName, jsParams, jstpe.NoType, - Some(genStat(rhs)))(optimizerHints, None) + methodName, originalName, jsParams, jstpe.NoType, Some(body1))( + optimizerHints, None) } else { val namespace = if (isMethodStaticInIR(sym)) { if (sym.isPrivate) js.MemberNamespace.PrivateStatic diff --git a/project/plugins.sbt b/project/plugins.sbt index 6f83bef934f9..e401892321ab 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -2,7 +2,7 @@ // // e.g. addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.1.0") -addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.3.0") +addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.3.1") addSbtPlugin("org.xerial.sbt" % "sbt-sonatype" % "3.6")