From 153c70b5b64344db5a97a3de23e91e49f57ac337 Mon Sep 17 00:00:00 2001 From: wpopielarski Date: Wed, 21 Oct 2015 16:58:20 +0200 Subject: Multi output problem with delambdafied compilation User code compilation with -Ybackend:GenBCode -Ydelambdafy:method fails for projects with multiple output directories. The problem has its root in a fact that some `lambdaClass` symbols the `associatedFile` field is not set. It can be done in Delambdafy.scala (`makeAnonymousClass` method) and is working for following lambda examples: {{{ package acme object Delambdafy { type -->[D, I] = PartialFunction[D, I] def main(args: Array[String]): Unit = { val result = List(1, 2, 4).map { a => val list = List("1", "2", "3").map { _ + "test" } list.find { _ == a.toString + "test" } } lazy val _foo = foo(result) { case x::xs if x isDefined => x.get.length case _ => 0 } lazy val bar: Int => Int = { case 2 => 13 case _ => val v = List(1).map(_ + 42).head v + 1 } } def foo(b: List[Option[String]])(a: List[Option[String]] => Int): Int = a(b) } }}} but is NOT working for following lambda: {{{ package acme object Delambdafy { type -->[D, I] = PartialFunction[D, I] def main(args: Array[String]): Unit = { lazy val _baz = baz { case 1 => val local = List(1).map(_ + 1) local.head } } def baz[T](f: Any --> Any): Any => Any = f } }}} so that's why source of compilation unit is used to determine output directory in case when source file is not found for symbol. --- .../scala/tools/nsc/backend/jvm/BCodeHelpers.scala | 29 +++++++++++++++------- .../tools/nsc/backend/jvm/BytecodeWriters.scala | 3 +++ 2 files changed, 23 insertions(+), 9 deletions(-) (limited to 'src/compiler/scala/tools') diff --git a/src/compiler/scala/tools/nsc/backend/jvm/BCodeHelpers.scala b/src/compiler/scala/tools/nsc/backend/jvm/BCodeHelpers.scala index 65a6b82570..813180a8c7 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/BCodeHelpers.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/BCodeHelpers.scala @@ -35,15 +35,26 @@ abstract class BCodeHelpers extends BCodeIdiomatic with BytecodeWriters { /* * must-single-thread */ - def getOutFolder(csym: Symbol, cName: String, cunit: CompilationUnit): _root_.scala.tools.nsc.io.AbstractFile = { - try { - outputDirectory(csym) - } catch { - case ex: Throwable => - reporter.error(cunit.body.pos, s"Couldn't create file for class $cName\n${ex.getMessage}") - null - } - } + def getOutFolder(csym: Symbol, cName: String, cunit: CompilationUnit): _root_.scala.tools.nsc.io.AbstractFile = Option { + try { + outputDirectory(csym) + } catch { + case ex: Throwable => + reporter.warning(cunit.body.pos, s"Couldn't find output folder for symbol source ${csym.name}. Dropping to compliation unit source.\n${ex.getMessage}") + null + } + }.orElse { Option { + try { + outputDirectory(cunit.source) + } catch { + case ex: Throwable => + reporter.warning(cunit.body.pos, s"Couldn't find output folder for compilation unit $cName\n${ex.getMessage}") + null + } + }}.orElse { + reporter.error(cunit.body.pos, s"Couldn't create file for class $cName") + None + }.orNull var pickledBytes = 0 // statistics diff --git a/src/compiler/scala/tools/nsc/backend/jvm/BytecodeWriters.scala b/src/compiler/scala/tools/nsc/backend/jvm/BytecodeWriters.scala index 1d29fdee10..e4fcb729a2 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/BytecodeWriters.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/BytecodeWriters.scala @@ -25,6 +25,9 @@ trait BytecodeWriters { def outputDirectory(sym: Symbol): AbstractFile = settings.outputDirs outputDirFor enteringFlatten(sym.sourceFile) + def outputDirectory(cunitSource: scala.reflect.internal.util.SourceFile): AbstractFile = + settings.outputDirs outputDirFor cunitSource.file + /** * @param clsName cls.getName */ -- cgit v1.2.3 From 65b60c8e9ed9c1b9ee343ddd52ef70f89e59889f Mon Sep 17 00:00:00 2001 From: wpopielarski Date: Thu, 5 Nov 2015 10:31:02 +0100 Subject: Allows to propagate fatal errors when output folder not found. --- .../scala/tools/nsc/backend/jvm/BCodeHelpers.scala | 28 +++++++--------------- .../tools/nsc/backend/jvm/BytecodeWriters.scala | 3 --- 2 files changed, 8 insertions(+), 23 deletions(-) (limited to 'src/compiler/scala/tools') diff --git a/src/compiler/scala/tools/nsc/backend/jvm/BCodeHelpers.scala b/src/compiler/scala/tools/nsc/backend/jvm/BCodeHelpers.scala index 813180a8c7..1b97681743 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/BCodeHelpers.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/BCodeHelpers.scala @@ -35,26 +35,14 @@ abstract class BCodeHelpers extends BCodeIdiomatic with BytecodeWriters { /* * must-single-thread */ - def getOutFolder(csym: Symbol, cName: String, cunit: CompilationUnit): _root_.scala.tools.nsc.io.AbstractFile = Option { - try { - outputDirectory(csym) - } catch { - case ex: Throwable => - reporter.warning(cunit.body.pos, s"Couldn't find output folder for symbol source ${csym.name}. Dropping to compliation unit source.\n${ex.getMessage}") - null - } - }.orElse { Option { - try { - outputDirectory(cunit.source) - } catch { - case ex: Throwable => - reporter.warning(cunit.body.pos, s"Couldn't find output folder for compilation unit $cName\n${ex.getMessage}") - null - } - }}.orElse { - reporter.error(cunit.body.pos, s"Couldn't create file for class $cName") - None - }.orNull + def getOutFolder(csym: Symbol, cName: String, cunit: CompilationUnit): _root_.scala.tools.nsc.io.AbstractFile = + _root_.scala.util.Try { + outputDirectory(csym) + }.recover { + case ex: Throwable => + reporter.error(cunit.body.pos, s"Couldn't create file for class $cName\n${ex.getMessage}") + null + }.get var pickledBytes = 0 // statistics diff --git a/src/compiler/scala/tools/nsc/backend/jvm/BytecodeWriters.scala b/src/compiler/scala/tools/nsc/backend/jvm/BytecodeWriters.scala index e4fcb729a2..1d29fdee10 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/BytecodeWriters.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/BytecodeWriters.scala @@ -25,9 +25,6 @@ trait BytecodeWriters { def outputDirectory(sym: Symbol): AbstractFile = settings.outputDirs outputDirFor enteringFlatten(sym.sourceFile) - def outputDirectory(cunitSource: scala.reflect.internal.util.SourceFile): AbstractFile = - settings.outputDirs outputDirFor cunitSource.file - /** * @param clsName cls.getName */ -- cgit v1.2.3 From 9688625afddfcbbfae121a6a27c0b44edd95efa0 Mon Sep 17 00:00:00 2001 From: wpopielarski Date: Thu, 5 Nov 2015 10:37:31 +0100 Subject: Sets source for newly created lambda class This source is then used to figure out output folder for compilation product. --- src/compiler/scala/tools/nsc/transform/Delambdafy.scala | 1 + 1 file changed, 1 insertion(+) (limited to 'src/compiler/scala/tools') diff --git a/src/compiler/scala/tools/nsc/transform/Delambdafy.scala b/src/compiler/scala/tools/nsc/transform/Delambdafy.scala index ea8c1cbaf6..8e323de623 100644 --- a/src/compiler/scala/tools/nsc/transform/Delambdafy.scala +++ b/src/compiler/scala/tools/nsc/transform/Delambdafy.scala @@ -294,6 +294,7 @@ abstract class Delambdafy extends Transform with TypingTransformers with ast.Tre val name = unit.freshTypeName(s"$oldClassPart$suffix".replace("$anon", "$nestedInAnon")) val lambdaClass = pkg newClassSymbol(name, originalFunction.pos, FINAL | SYNTHETIC) addAnnotation SerialVersionUIDAnnotation + lambdaClass.associatedFile = unit.source.file // make sure currentRun.compiles(lambdaClass) is true (AddInterfaces does the same for trait impl classes) currentRun.symSource(lambdaClass) = funOwner.sourceFile lambdaClass setInfo ClassInfoType(parents, newScope, lambdaClass) -- cgit v1.2.3 From 167f79ca1ee300860a4dfc570a03590496764f88 Mon Sep 17 00:00:00 2001 From: Seth Tisue Date: Sat, 7 Nov 2015 17:30:26 -0500 Subject: less confusing wording for a dependent method type error note to reviewers: the error messages in this file are over the place about whether they're called "parameter sections", or "argument lists", or what, so there's no point in being picky about that here for context see SI-823 --- src/compiler/scala/tools/nsc/typechecker/ContextErrors.scala | 2 +- test/files/neg/depmet_1.check | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'src/compiler/scala/tools') diff --git a/src/compiler/scala/tools/nsc/typechecker/ContextErrors.scala b/src/compiler/scala/tools/nsc/typechecker/ContextErrors.scala index b0bd9977a8..727f09290a 100644 --- a/src/compiler/scala/tools/nsc/typechecker/ContextErrors.scala +++ b/src/compiler/scala/tools/nsc/typechecker/ContextErrors.scala @@ -1190,7 +1190,7 @@ trait ContextErrors { def IllegalDependentMethTpeError(sym: Symbol)(context: Context) = { val errorAddendum = - ": parameter appears in the type of another parameter in the same section or an earlier one" + ": parameter may only be referenced in a subsequent parameter section" issueSymbolTypeError(sym, "illegal dependent method type" + errorAddendum)(context) } diff --git a/test/files/neg/depmet_1.check b/test/files/neg/depmet_1.check index 7a4f845fd5..15498568c5 100644 --- a/test/files/neg/depmet_1.check +++ b/test/files/neg/depmet_1.check @@ -1,7 +1,7 @@ -depmet_1.scala:2: error: illegal dependent method type: parameter appears in the type of another parameter in the same section or an earlier one +depmet_1.scala:2: error: illegal dependent method type: parameter may only be referenced in a subsequent parameter section def precise0(y: x.type)(x: String): Unit = {} ^ -depmet_1.scala:3: error: illegal dependent method type: parameter appears in the type of another parameter in the same section or an earlier one +depmet_1.scala:3: error: illegal dependent method type: parameter may only be referenced in a subsequent parameter section def precise1(x: String, y: x.type): Unit = {} ^ depmet_1.scala:4: error: not found: value y -- cgit v1.2.3 From 4c3e766ee17afdb44ceeeb764adc660e2a501e9f Mon Sep 17 00:00:00 2001 From: Seth Tisue Date: Wed, 11 Nov 2015 19:51:43 -0500 Subject: it's Scaladoc, not "ScalaDoc" or "Scala doc" renaming the existing ScalaDoc and ScalaDocReporter classes might break stuff, sadly, but at least we can fix the rest --- src/compiler/scala/tools/nsc/Global.scala | 2 +- src/compiler/scala/tools/nsc/Reporting.scala | 2 +- src/compiler/scala/tools/nsc/settings/Warnings.scala | 2 +- src/compiler/scala/tools/nsc/typechecker/Implicits.scala | 6 +++--- src/interactive/scala/tools/nsc/interactive/Global.scala | 2 +- src/scaladoc/scala/tools/nsc/doc/ScaladocAnalyzer.scala | 4 ++-- src/scaladoc/scala/tools/nsc/doc/Settings.scala | 2 +- test/disabled/presentation/akka/src/akka/actor/Supervisor.scala | 2 +- test/files/neg/macro-without-xmacros-a.check | 2 +- test/files/neg/macro-without-xmacros-b.check | 2 +- test/files/neg/t6040.check | 2 +- test/files/neg/t6120.check | 2 +- test/files/neg/t6952.check | 2 +- test/files/neg/t8736-c.check | 2 +- test/scaladoc/resources/links.scala | 2 +- test/scaladoc/run/links.scala | 2 +- 16 files changed, 19 insertions(+), 19 deletions(-) (limited to 'src/compiler/scala/tools') diff --git a/src/compiler/scala/tools/nsc/Global.scala b/src/compiler/scala/tools/nsc/Global.scala index 936bed7c8f..a618b080c8 100644 --- a/src/compiler/scala/tools/nsc/Global.scala +++ b/src/compiler/scala/tools/nsc/Global.scala @@ -231,7 +231,7 @@ class Global(var currentSettings: Settings, var reporter: Reporter) /** Called from parser, which signals hereby that a method definition has been parsed. */ def signalParseProgress(pos: Position) {} - /** Called by ScalaDocAnalyzer when a doc comment has been parsed. */ + /** Called by ScaladocAnalyzer when a doc comment has been parsed. */ def signalParsedDocComment(comment: String, pos: Position) = { // TODO: this is all very broken (only works for scaladoc comments, not regular ones) // --> add hooks to parser and refactor Interactive global to handle comments directly diff --git a/src/compiler/scala/tools/nsc/Reporting.scala b/src/compiler/scala/tools/nsc/Reporting.scala index 4e7a527a5a..e01c536ad1 100644 --- a/src/compiler/scala/tools/nsc/Reporting.scala +++ b/src/compiler/scala/tools/nsc/Reporting.scala @@ -78,7 +78,7 @@ trait Reporting extends scala.reflect.internal.Reporting { self: ast.Positions w s"""| |This can be achieved by adding the import clause 'import $fqname' |or by setting the compiler option -language:$featureName. - |See the Scala docs for value $fqname for a discussion + |See the Scaladoc for value $fqname for a discussion |why the feature $req be explicitly enabled.""".stripMargin ) reportedFeature += featureTrait diff --git a/src/compiler/scala/tools/nsc/settings/Warnings.scala b/src/compiler/scala/tools/nsc/settings/Warnings.scala index 59cc13c64e..f570037760 100644 --- a/src/compiler/scala/tools/nsc/settings/Warnings.scala +++ b/src/compiler/scala/tools/nsc/settings/Warnings.scala @@ -49,7 +49,7 @@ trait Warnings { val NullaryOverride = LintWarning("nullary-override", "Warn when non-nullary `def f()' overrides nullary `def f'.", true) val InferAny = LintWarning("infer-any", "Warn when a type argument is inferred to be `Any`.", true) val MissingInterpolator = LintWarning("missing-interpolator", "A string literal appears to be missing an interpolator id.") - val DocDetached = LintWarning("doc-detached", "A ScalaDoc comment appears to be detached from its element.") + val DocDetached = LintWarning("doc-detached", "A Scaladoc comment appears to be detached from its element.") val PrivateShadow = LintWarning("private-shadow", "A private field (or class parameter) shadows a superclass field.") val TypeParameterShadow = LintWarning("type-parameter-shadow", "A local type parameter shadows a type already in scope.") val PolyImplicitOverload = LintWarning("poly-implicit-overload", "Parameterized overloaded implicit methods are not visible as view bounds.") diff --git a/src/compiler/scala/tools/nsc/typechecker/Implicits.scala b/src/compiler/scala/tools/nsc/typechecker/Implicits.scala index 494e1e49b7..509ce59104 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Implicits.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Implicits.scala @@ -588,10 +588,10 @@ trait Implicits { if (Statistics.canEnable) Statistics.incCounter(matchingImplicits) // workaround for deficient context provided by ModelFactoryImplicitSupport#makeImplicitConstraints - val isScalaDoc = context.tree == EmptyTree + val isScaladoc = context.tree == EmptyTree val itree0 = atPos(pos.focus) { - if (isLocalToCallsite && !isScalaDoc) { + if (isLocalToCallsite && !isScaladoc) { // SI-4270 SI-5376 Always use an unattributed Ident for implicits in the local scope, // rather than an attributed Select, to detect shadowing. Ident(info.name) @@ -628,7 +628,7 @@ trait Implicits { // for instance, if we have `class C[T]` and `implicit def conv[T: Numeric](c: C[T]) = ???` // then Scaladoc will give us something of type `C[T]`, and it would like to know // that `conv` is potentially available under such and such conditions - case tree if isImplicitMethodType(tree.tpe) && !isScalaDoc => + case tree if isImplicitMethodType(tree.tpe) && !isScaladoc => applyImplicitArgs(tree) case tree => tree } diff --git a/src/interactive/scala/tools/nsc/interactive/Global.scala b/src/interactive/scala/tools/nsc/interactive/Global.scala index 6600fea2d8..27a02c46a2 100644 --- a/src/interactive/scala/tools/nsc/interactive/Global.scala +++ b/src/interactive/scala/tools/nsc/interactive/Global.scala @@ -80,7 +80,7 @@ trait InteractiveAnalyzer extends Analyzer { val existingDerivedSym = owningInfo.decl(sym.name.toTermName).filter(sym => sym.isSynthetic && sym.isMethod) existingDerivedSym.alternatives foreach (owningInfo.decls.unlink) val defTree = tree match { - case dd: DocDef => dd.definition // See SI-9011, Scala IDE's presentation compiler incorporates ScalaDocGlobal with InterativeGlobal, so we have to unwrap DocDefs. + case dd: DocDef => dd.definition // See SI-9011, Scala IDE's presentation compiler incorporates ScaladocGlobal with InteractiveGlobal, so we have to unwrap DocDefs. case _ => tree } enterImplicitWrapper(defTree.asInstanceOf[ClassDef]) diff --git a/src/scaladoc/scala/tools/nsc/doc/ScaladocAnalyzer.scala b/src/scaladoc/scala/tools/nsc/doc/ScaladocAnalyzer.scala index cbf8ff22ba..8ea8c4deff 100644 --- a/src/scaladoc/scala/tools/nsc/doc/ScaladocAnalyzer.scala +++ b/src/scaladoc/scala/tools/nsc/doc/ScaladocAnalyzer.scala @@ -125,9 +125,9 @@ abstract class ScaladocSyntaxAnalyzer[G <: Global](val global: G) extends Syntax } else if (in.ch == '*') { docBuffer = null in.next - val scalaDoc = ("/**", "*/") + val scaladoc = ("/**", "*/") if (in.ch == '*') - docBuffer = new StringBuilder(scalaDoc._1) + docBuffer = new StringBuilder(scaladoc._1) do { do { if (in.ch != '*' && in.ch != SU) { diff --git a/src/scaladoc/scala/tools/nsc/doc/Settings.scala b/src/scaladoc/scala/tools/nsc/doc/Settings.scala index 067b2b2c29..90efa4e595 100644 --- a/src/scaladoc/scala/tools/nsc/doc/Settings.scala +++ b/src/scaladoc/scala/tools/nsc/doc/Settings.scala @@ -45,7 +45,7 @@ class Settings(error: String => Unit, val printMsg: String => Unit = println(_)) val docfooter = StringSetting ( "-doc-footer", "footer", - "A footer on every ScalaDoc page, by default the EPFL/Typesafe copyright notice. Can be overridden with a custom footer.", + "A footer on every Scaladoc page, by default the EPFL/Typesafe copyright notice. Can be overridden with a custom footer.", "" ) diff --git a/test/disabled/presentation/akka/src/akka/actor/Supervisor.scala b/test/disabled/presentation/akka/src/akka/actor/Supervisor.scala index 4a1309faef..bec3c83f1a 100644 --- a/test/disabled/presentation/akka/src/akka/actor/Supervisor.scala +++ b/test/disabled/presentation/akka/src/akka/actor/Supervisor.scala @@ -95,7 +95,7 @@ case class SupervisorFactory(val config: SupervisorConfig) { * wire the children together using 'link', 'spawnLink' etc. and set the 'trapExit' flag in the * children that should trap error signals and trigger restart. *

- * See the ScalaDoc for the SupervisorFactory for an example on how to declaratively wire up children. + * See the Scaladoc for the SupervisorFactory for an example on how to declaratively wire up children. * * @author Jonas Bonér */ diff --git a/test/files/neg/macro-without-xmacros-a.check b/test/files/neg/macro-without-xmacros-a.check index ec194be3a9..65445d80dd 100644 --- a/test/files/neg/macro-without-xmacros-a.check +++ b/test/files/neg/macro-without-xmacros-a.check @@ -2,7 +2,7 @@ Macros_2.scala:5: error: macro definition needs to be enabled by making the implicit value scala.language.experimental.macros visible. This can be achieved by adding the import clause 'import scala.language.experimental.macros' or by setting the compiler option -language:experimental.macros. -See the Scala docs for value scala.language.experimental.macros for a discussion +See the Scaladoc for value scala.language.experimental.macros for a discussion why the feature needs to be explicitly enabled. def foo(x: Int): Int = macro foo_impl ^ diff --git a/test/files/neg/macro-without-xmacros-b.check b/test/files/neg/macro-without-xmacros-b.check index c97850f0a9..e3c1010d50 100644 --- a/test/files/neg/macro-without-xmacros-b.check +++ b/test/files/neg/macro-without-xmacros-b.check @@ -2,7 +2,7 @@ Macros_2.scala:3: error: macro definition needs to be enabled by making the implicit value scala.language.experimental.macros visible. This can be achieved by adding the import clause 'import scala.language.experimental.macros' or by setting the compiler option -language:experimental.macros. -See the Scala docs for value scala.language.experimental.macros for a discussion +See the Scaladoc for value scala.language.experimental.macros for a discussion why the feature needs to be explicitly enabled. def foo(x: Int): Int = macro Impls.foo_impl ^ diff --git a/test/files/neg/t6040.check b/test/files/neg/t6040.check index 16c90ede7e..350f796d18 100644 --- a/test/files/neg/t6040.check +++ b/test/files/neg/t6040.check @@ -2,7 +2,7 @@ t6040.scala:1: error: extension of type scala.Dynamic needs to be enabled by making the implicit value scala.language.dynamics visible. This can be achieved by adding the import clause 'import scala.language.dynamics' or by setting the compiler option -language:dynamics. -See the Scala docs for value scala.language.dynamics for a discussion +See the Scaladoc for value scala.language.dynamics for a discussion why the feature needs to be explicitly enabled. class X extends Dynamic ^ diff --git a/test/files/neg/t6120.check b/test/files/neg/t6120.check index a7d17e29cf..f432fde32f 100644 --- a/test/files/neg/t6120.check +++ b/test/files/neg/t6120.check @@ -2,7 +2,7 @@ t6120.scala:5: warning: postfix operator bippy should be enabled by making the implicit value scala.language.postfixOps visible. This can be achieved by adding the import clause 'import scala.language.postfixOps' or by setting the compiler option -language:postfixOps. -See the Scala docs for value scala.language.postfixOps for a discussion +See the Scaladoc for value scala.language.postfixOps for a discussion why the feature should be explicitly enabled. def f = null == null bippy ^ diff --git a/test/files/neg/t6952.check b/test/files/neg/t6952.check index 1a591d02c6..acee0e7d60 100644 --- a/test/files/neg/t6952.check +++ b/test/files/neg/t6952.check @@ -2,7 +2,7 @@ t6952.scala:2: error: extension of type scala.Dynamic needs to be enabled by making the implicit value scala.language.dynamics visible. This can be achieved by adding the import clause 'import scala.language.dynamics' or by setting the compiler option -language:dynamics. -See the Scala docs for value scala.language.dynamics for a discussion +See the Scaladoc for value scala.language.dynamics for a discussion why the feature needs to be explicitly enabled. trait B extends Dynamic ^ diff --git a/test/files/neg/t8736-c.check b/test/files/neg/t8736-c.check index 06b2228543..7debb6d515 100644 --- a/test/files/neg/t8736-c.check +++ b/test/files/neg/t8736-c.check @@ -2,7 +2,7 @@ t8736-c.scala:4: warning: higher-kinded type should be enabled by making the implicit value scala.language.higherKinds visible. This can be achieved by adding the import clause 'import scala.language.higherKinds' or by setting the compiler option -language:higherKinds. -See the Scala docs for value scala.language.higherKinds for a discussion +See the Scaladoc for value scala.language.higherKinds for a discussion why the feature should be explicitly enabled. def hk[M[_]] = ??? ^ diff --git a/test/scaladoc/resources/links.scala b/test/scaladoc/resources/links.scala index ecac9c63cf..8e000ab979 100644 --- a/test/scaladoc/resources/links.scala +++ b/test/scaladoc/resources/links.scala @@ -1,6 +1,6 @@ // that would be: // SI-5079 "Scaladoc can't link to an object (only a class or trait)" -// SI-4497 "Links in ScalaDoc - Spec and implementation unsufficient" +// SI-4497 "Links in Scaladoc - Spec and implementation unsufficient" // SI-4224 "Wiki-links should support method targets" // SI-3695 "support non-fully-qualified type links in scaladoc comments" // SI-6487 "Scaladoc can't link to inner classes" diff --git a/test/scaladoc/run/links.scala b/test/scaladoc/run/links.scala index 64441c2d95..01db66aec3 100644 --- a/test/scaladoc/run/links.scala +++ b/test/scaladoc/run/links.scala @@ -3,7 +3,7 @@ import scala.tools.nsc.doc.model._ import scala.tools.partest.ScaladocModelTest // SI-5079 "Scaladoc can't link to an object (only a class or trait)" -// SI-4497 "Links in ScalaDoc - Spec and implementation unsufficient" +// SI-4497 "Links in Scaladoc - Spec and implementation unsufficient" // SI-4224 "Wiki-links should support method targets" // SI-3695 "support non-fully-qualified type links in scaladoc comments" // SI-6487 "Scaladoc can't link to inner classes" -- cgit v1.2.3