Skip to content

Commit 4c0d37c

Browse files
authored
Merge pull request #4575 from dotty-staging/fix/dottydoc-ycheck
Enable `-Ycheck:all` in Dotty Doc tests
2 parents 0b55397 + 639018f commit 4c0d37c

File tree

6 files changed

+8
-4
lines changed

6 files changed

+8
-4
lines changed

compiler/src/dotty/tools/dotc/core/Comments.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ object Comments {
121121

122122
tree match {
123123
case tree: untpd.DefDef =>
124-
val newName = (tree.name.show + "$" + codePos + "$doc").toTermName
124+
val newName = ctx.freshNames.newName(tree.name, NameKinds.DocArtifactName)
125125
untpd.DefDef(newName, tree.tparams, tree.vparamss, tree.tpt, tree.rhs)
126126
case _ =>
127127
ctx.error(ProperDefinitionNotFound(), codePos)

compiler/src/dotty/tools/dotc/core/NameKinds.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -290,6 +290,7 @@ object NameKinds {
290290
val SkolemName = new UniqueNameKind("?")
291291
val LiftedTreeName = new UniqueNameKind("liftedTree")
292292
val SuperArgName = new UniqueNameKind("$superArg$")
293+
val DocArtifactName = new UniqueNameKind("$doc")
293294

294295
/** A kind of unique extension methods; Unlike other unique names, these can be
295296
* unmangled.

compiler/src/dotty/tools/dotc/transform/TreeChecker.scala

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import core.Flags._
1313
import core.Constants._
1414
import core.StdNames._
1515
import core.NameOps._
16-
import core.NameKinds.OuterSelectName
16+
import core.NameKinds.{DocArtifactName, OuterSelectName}
1717
import core.Decorators._
1818
import core.TypeErasure.isErasedType
1919
import core.Phases.Phase
@@ -379,7 +379,8 @@ class TreeChecker extends Phase with SymTransformer {
379379
x.is(Method) &&
380380
!x.isCompanionMethod &&
381381
!x.isValueClassConvertMethod &&
382-
!(x.is(Macro) && ctx.phase.refChecked)
382+
!(x.is(Macro) && ctx.phase.refChecked) &&
383+
!x.name.is(DocArtifactName)
383384

384385
val symbolsNotDefined = cls.classInfo.decls.toList.toSet.filter(isNonMagicalMethod) -- impl.body.map(_.symbol) - constr.symbol
385386

compiler/src/dotty/tools/dotc/typer/Docstrings.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ trait Docstrings { self: Typer =>
1717
*/
1818
def cookComments(syms: List[Symbol], owner: Symbol)(implicit ctx: Context): Unit =
1919
ctx.docCtx.foreach { docbase =>
20-
val relevantSyms = syms.filter(docbase.docstring(_).isDefined)
20+
val relevantSyms = syms.filter(docbase.docstring(_).exists(!_.isExpanded))
2121
relevantSyms.foreach { sym =>
2222
expandParentDocs(sym)
2323
val usecases = docbase.docstring(sym).map(_.usecases).getOrElse(Nil)

doc-tool/test/DottyDocTest.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ trait DottyDocTest extends MessageRendering {
2525
ctx.setSetting(ctx.settings.language, List("Scala2"))
2626
ctx.setSetting(ctx.settings.YkeepComments, true)
2727
ctx.setSetting(ctx.settings.YcookComments, true)
28+
ctx.setSetting(ctx.settings.Ycheck, "all" :: Nil)
2829
ctx.setSetting(ctx.settings.YnoInline, true)
2930
ctx.setSetting(ctx.settings.wikiSyntax, true)
3031
ctx.setProperty(ContextDoc, new ContextDottydoc)

doc-tool/test/MarkdownTests.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ class MarkdownTests extends DottyDocTest {
1717
ctx.setSetting(ctx.settings.language, List("Scala2"))
1818
ctx.setSetting(ctx.settings.YkeepComments, true)
1919
ctx.setSetting(ctx.settings.YnoInline, true)
20+
ctx.setSetting(ctx.settings.Ycheck, "all" :: Nil)
2021
// No wiki syntax!
2122
ctx.setSetting(ctx.settings.wikiSyntax, false)
2223
ctx.setProperty(ContextDoc, new ContextDottydoc)

0 commit comments

Comments
 (0)