From 29d2d29b7a5a54b1666294c576b85d38f1dd0989 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Wed, 12 Mar 2014 15:43:35 +0100 Subject: Fix for #55 Distringuish between ModifierFlags -- which can appear in trees -- and SourceModifierFlags -- which are modifiers according to the language spec. --- src/dotty/tools/dotc/core/Flags.scala | 6 +++++- src/dotty/tools/dotc/printing/RefinedPrinter.scala | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/dotty/tools/dotc/core/Flags.scala b/src/dotty/tools/dotc/core/Flags.scala index 8e17fb01d..b9e901735 100644 --- a/src/dotty/tools/dotc/core/Flags.scala +++ b/src/dotty/tools/dotc/core/Flags.scala @@ -395,10 +395,14 @@ object Flags { // --------- Combined Flag Sets and Conjunctions ---------------------- /** Flags representing source modifiers */ - final val ModifierFlags = + final val SourceModifierFlags = commonFlags(Private, Protected, Abstract, Final, Sealed, Case, Implicit, Override, AbsOverride, Lazy) + /** Flags representing modifiers that can appear in trees */ + final val ModifierFlags = + SourceModifierFlags | Trait | Module | Param | Synthetic | Package + /** Flags representing access rights */ final val AccessFlags = Private | Protected | Local diff --git a/src/dotty/tools/dotc/printing/RefinedPrinter.scala b/src/dotty/tools/dotc/printing/RefinedPrinter.scala index 5231ccd93..0d84a9e61 100644 --- a/src/dotty/tools/dotc/printing/RefinedPrinter.scala +++ b/src/dotty/tools/dotc/printing/RefinedPrinter.scala @@ -15,7 +15,7 @@ class RefinedPrinter(_ctx: Context) extends PlainPrinter(_ctx) { override protected def recursionLimitExceeded() = {} - protected val PrintableFlags = (ModifierFlags | Label | Module).toCommonFlags + protected val PrintableFlags = (SourceModifierFlags | Label | Module).toCommonFlags /** The closest enclosing DefDef, TypeDef, or ClassDef node */ private var currentOwner: untpd.Tree = untpd.EmptyTree -- cgit v1.2.3