Skip to content

Commit a24625f

Browse files
committed
Import all flags in the backend
1 parent c46ab15 commit a24625f

File tree

6 files changed

+70
-70
lines changed

6 files changed

+70
-70
lines changed

compiler/src/dotty/tools/backend/jvm/BCodeAsmCommon.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package dotty.tools
22
package backend
33
package jvm
44

5-
import dotty.tools.dotc.core.Flags
5+
import dotty.tools.dotc.core.Flags._
66
import dotty.tools.dotc.core.Symbols._
77

88
/**
@@ -57,7 +57,7 @@ final class BCodeAsmCommon[I <: DottyBackendInterface](val interface: I) {
5757
assert(classSym.isClass, classSym)
5858
def enclosingMethod(sym: Symbol): Option[Symbol] = {
5959
if (sym.isClass || sym == NoSymbol) None
60-
else if (sym.is(Flags.Method)) Some(sym)
60+
else if (sym.is(Method)) Some(sym)
6161
else enclosingMethod(sym.originalOwner.originalLexicallyEnclosingClass)
6262
}
6363
enclosingMethod(classSym.originalOwner.originalLexicallyEnclosingClass)

compiler/src/dotty/tools/backend/jvm/BCodeBodyBuilder.scala

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import dotty.tools.dotc.ast.tpd
1212
import dotty.tools.dotc.CompilationUnit
1313
import dotty.tools.dotc.core.Constants._
1414
import dotty.tools.dotc.core.Decorators._
15-
import dotty.tools.dotc.core.Flags
15+
import dotty.tools.dotc.core.Flags.{Label => LabelFlag, _}
1616
import dotty.tools.dotc.core.Types._
1717
import dotty.tools.dotc.core.StdNames.{nme, str}
1818
import dotty.tools.dotc.core.Symbols._
@@ -353,7 +353,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
353353
generatedType = genApply(app, expectedType)
354354

355355
case This(qual) =>
356-
val symIsModuleClass = tree.symbol.is(Flags.ModuleClass)
356+
val symIsModuleClass = tree.symbol.is(ModuleClass)
357357
assert(tree.symbol == claszSymbol || symIsModuleClass,
358358
s"Trying to access the this of another class: tree.symbol = ${tree.symbol}, class symbol = $claszSymbol compilation unit: $cunit")
359359
if (symIsModuleClass && tree.symbol != claszSymbol) {
@@ -367,7 +367,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
367367
}
368368

369369
case DesugaredSelect(Ident(nme.EMPTY_PACKAGE), module) =>
370-
assert(tree.symbol.is(Flags.Module), s"Selection of non-module from empty package: $tree sym: ${tree.symbol} at: ${tree.span}")
370+
assert(tree.symbol.is(Module), s"Selection of non-module from empty package: $tree sym: ${tree.symbol} at: ${tree.span}")
371371
genLoadModule(tree)
372372

373373
case DesugaredSelect(qualifier, _) =>
@@ -379,7 +379,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
379379

380380
// receiverClass is used in the bytecode to access the field. using sym.owner may lead to IllegalAccessError
381381
def receiverClass = qualifier.tpe.widenDealias.typeSymbol
382-
if (sym.is(Flags.Module)) {
382+
if (sym.is(Module)) {
383383
genLoadQualUnlessElidable()
384384
genLoadModule(tree)
385385
} else if (sym.isStaticMember) {
@@ -398,8 +398,8 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
398398
val desugared = cachedDesugarIdent(t)
399399
desugared match {
400400
case None =>
401-
if (!sym.is(Flags.Package)) {
402-
if (sym.is(Flags.Module)) genLoadModule(sym)
401+
if (!sym.is(Package)) {
402+
if (sym.is(Module)) genLoadModule(sym)
403403
else locals.load(sym)
404404
}
405405
case Some(t) =>
@@ -544,7 +544,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
544544

545545
private def genReturn(r: Return): Unit = {
546546
val expr: Tree = r.expr
547-
val fromSym: Symbol = if (r.from.symbol.is(Flags.Label)) r.from.symbol else NoSymbol
547+
val fromSym: Symbol = if (r.from.symbol.is(LabelFlag)) r.from.symbol else NoSymbol
548548

549549
if (NoSymbol == fromSym) {
550550
// return from enclosing method
@@ -571,8 +571,8 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
571571
}
572572
} else {
573573
// return from labeled
574-
assert(fromSym.is(Flags.Label), fromSym)
575-
assert(!fromSym.is(Flags.Method), fromSym)
574+
assert(fromSym.is(LabelFlag), fromSym)
575+
assert(!fromSym.is(Method), fromSym)
576576

577577
/* TODO At the moment, we disregard cleanups, because by construction we don't have return-from-labels
578578
* that cross cleanup boundaries. However, in theory such crossings are valid, so we should take care
@@ -776,7 +776,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
776776
} else { // normal method call
777777
val invokeStyle =
778778
if (sym.isStaticMember) InvokeStyle.Static
779-
else if (sym.is(Flags.Private) || sym.isClassConstructor) InvokeStyle.Special
779+
else if (sym.is(Private) || sym.isClassConstructor) InvokeStyle.Special
780780
else InvokeStyle.Virtual
781781

782782
if (invokeStyle.hasInstance) genLoadQualifier(fun)
@@ -1030,7 +1030,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
10301030

10311031
def genLoadModule(tree: Tree): BType = {
10321032
val module = (
1033-
if (!tree.symbol.is(Flags.PackageClass)) tree.symbol
1033+
if (!tree.symbol.is(PackageClass)) tree.symbol
10341034
else tree.symbol.info.member(nme.PACKAGE).symbol match {
10351035
case NoSymbol => abort(s"SI-5604: Cannot use package as value: $tree")
10361036
case s => abort(s"SI-5604: found package class where package object expected: $tree")
@@ -1353,7 +1353,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
13531353
* not using the rich equality is possible (their own equals method will do ok.)
13541354
*/
13551355
val mustUseAnyComparator: Boolean = {
1356-
val areSameFinals = l.tpe.typeSymbol.is(Flags.Final) && r.tpe.typeSymbol.is(Flags.Final) && (l.tpe =:= r.tpe)
1356+
val areSameFinals = l.tpe.typeSymbol.is(Final) && r.tpe.typeSymbol.is(Final) && (l.tpe =:= r.tpe)
13571357
// todo: remove
13581358
def isMaybeBoxed(sym: Symbol): Boolean = {
13591359
(sym == defn.ObjectClass) ||
@@ -1369,7 +1369,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
13691369
case Literal(Constant(null)) => true
13701370
case _ => false
13711371
}
1372-
def isNonNullExpr(t: Tree): Boolean = t.isInstanceOf[Literal] || ((t.symbol ne null) && t.symbol.is(Flags.Module))
1372+
def isNonNullExpr(t: Tree): Boolean = t.isInstanceOf[Literal] || ((t.symbol ne null) && t.symbol.is(Module))
13731373

13741374
if (mustUseAnyComparator) {
13751375
val equalsMethod: Symbol = {
@@ -1440,7 +1440,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
14401440
val isInterface = isEmittedInterface(lambdaTarget.owner)
14411441
val invokeStyle =
14421442
if (lambdaTarget.isStaticMember) asm.Opcodes.H_INVOKESTATIC
1443-
else if (lambdaTarget.is(Flags.Private) || lambdaTarget.isClassConstructor) asm.Opcodes.H_INVOKESPECIAL
1443+
else if (lambdaTarget.is(Private) || lambdaTarget.isClassConstructor) asm.Opcodes.H_INVOKESPECIAL
14441444
else if (isInterface) asm.Opcodes.H_INVOKEINTERFACE
14451445
else asm.Opcodes.H_INVOKEVIRTUAL
14461446

@@ -1504,7 +1504,7 @@ trait BCodeBodyBuilder extends BCodeSkelBuilder {
15041504
* which we represent as classes.
15051505
*/
15061506
private def isEmittedInterface(sym: Symbol): Boolean = sym.isInterface ||
1507-
sym.is(Flags.JavaDefined) && (toDenot(sym).isAnnotation || sym.is(Flags.ModuleClass) && (sym.companionClass.is(Flags.PureInterface)) || sym.companionClass.is(Flags.Trait))
1507+
sym.is(JavaDefined) && (toDenot(sym).isAnnotation || sym.is(ModuleClass) && (sym.companionClass.is(PureInterface)) || sym.companionClass.is(Trait))
15081508

15091509
}
15101510

compiler/src/dotty/tools/backend/jvm/BCodeHelpers.scala

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import dotty.tools.dotc.core.Annotations.Annotation
1515
import dotty.tools.dotc.core.Constants._
1616
import dotty.tools.dotc.core.Contexts.Context
1717
import dotty.tools.dotc.core.Decorators._
18-
import dotty.tools.dotc.core.Flags
18+
import dotty.tools.dotc.core.Flags._
1919
import dotty.tools.dotc.core.Names.Name
2020
import dotty.tools.dotc.core.NameKinds.ExpandedName
2121
import dotty.tools.dotc.core.Signature
@@ -225,7 +225,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
225225
// If the `sym` is a java module class, we use the java class instead. This ensures that we
226226
// register the class (instead of the module class) in innerClassBufferASM.
227227
// The two symbols have the same name, so the resulting internalName is the same.
228-
val classSym = if (sym.is(Flags.JavaDefined) && sym.is(Flags.ModuleClass)) sym.linkedClass else sym
228+
val classSym = if (sym.is(JavaDefined) && sym.is(ModuleClass)) sym.linkedClass else sym
229229
getClassBTypeAndRegisterInnerClass(classSym).internalName
230230
}
231231

@@ -269,7 +269,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
269269
* must-single-thread
270270
*/
271271
final def asmMethodType(msym: Symbol): MethodBType = {
272-
assert(msym.is(Flags.Method), s"not a method-symbol: $msym")
272+
assert(msym.is(Method), s"not a method-symbol: $msym")
273273
val resT: BType =
274274
if (msym.isClassConstructor || msym.isConstructor) UNIT
275275
else toTypeKind(msym.info.resultType)
@@ -343,7 +343,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
343343

344344

345345
private def shouldEmitAnnotation(annot: Annotation): Boolean = {
346-
annot.symbol.is(Flags.JavaDefined) &&
346+
annot.symbol.is(JavaDefined) &&
347347
retentionPolicyOf(annot) != AnnotationRetentionSourceAttr
348348
}
349349

@@ -378,7 +378,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
378378
av.visit(name, typeToTypeKind(t.args.head.tpe.classSymbol.denot.info)(bcodeStore)(innerClasesStore).toASMType)
379379
case Ident(nme.WILDCARD) =>
380380
// An underscore argument indicates that we want to use the default value for this parameter, so do not emit anything
381-
case t: tpd.RefTree if t.symbol.denot.owner.isAllOf(Flags.JavaEnumTrait) =>
381+
case t: tpd.RefTree if t.symbol.denot.owner.isAllOf(JavaEnumTrait) =>
382382
val edesc = innerClasesStore.typeDescriptor(t.tpe) // the class descriptor of the enumeration class.
383383
val evalue = t.symbol.javaSimpleName // value the actual enumeration value.
384384
av.visitEnum(name, edesc, evalue)
@@ -482,7 +482,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
482482
def getGenericSignature(sym: Symbol, owner: Symbol): String = {
483483
ctx.atPhase(ctx.erasurePhase) {
484484
val memberTpe =
485-
if (sym.is(Flags.Method)) sym.denot.info
485+
if (sym.is(Method)) sym.denot.info
486486
else owner.denot.thisType.memberInfo(sym)
487487
getGenericSignatureHelper(sym, owner, memberTpe).orNull
488488
}
@@ -509,7 +509,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
509509
// TODO: evaluate the other flags we might be dropping on the floor here.
510510
// TODO: ACC_SYNTHETIC ?
511511
val flags = GenBCodeOps.PublicStatic | (
512-
if (m.is(Flags.JavaVarargs)) asm.Opcodes.ACC_VARARGS else 0
512+
if (m.is(JavaVarargs)) asm.Opcodes.ACC_VARARGS else 0
513513
)
514514

515515
// TODO needed? for(ann <- m.annotations) { ann.symbol.initialize }
@@ -563,7 +563,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
563563
* must-single-thread
564564
*/
565565
def addForwarders(jclass: asm.ClassVisitor, jclassName: String, moduleClass: Symbol): Unit = {
566-
assert(moduleClass.is(Flags.ModuleClass), moduleClass)
566+
assert(moduleClass.is(ModuleClass), moduleClass)
567567
ctx.debuglog(s"Dumping mirror class for object: $moduleClass")
568568

569569
val linkedClass = moduleClass.companionClass
@@ -572,11 +572,11 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
572572
}
573573
ctx.debuglog(s"Potentially conflicting names for forwarders: $conflictingNames")
574574

575-
for (m0 <- sortedMembersBasedOnFlags(moduleClass.info, required = Flags.Method, excluded = Flags.ExcludedForwarder)) {
576-
val m = if (m0.is(Flags.Bridge)) m0.nextOverriddenSymbol else m0
575+
for (m0 <- sortedMembersBasedOnFlags(moduleClass.info, required = Method, excluded = ExcludedForwarder)) {
576+
val m = if (m0.is(Bridge)) m0.nextOverriddenSymbol else m0
577577
if (m == NoSymbol)
578578
ctx.log(s"$m0 is a bridge method that overrides nothing, something went wrong in a previous phase.")
579-
else if (m.isType || m.is(Flags.Deferred) || (m.owner eq defn.ObjectClass) || m.isConstructor || m.name.is(ExpandedName))
579+
else if (m.isType || m.is(Deferred) || (m.owner eq defn.ObjectClass) || m.isConstructor || m.name.is(ExpandedName))
580580
ctx.debuglog(s"No forwarder for '$m' from $jclassName to '$moduleClass'")
581581
else if (conflictingNames(m.name))
582582
ctx.log(s"No forwarder for $m due to conflict with ${linkedClass.info.member(m.name)}")
@@ -592,7 +592,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
592592
/** The members of this type that have all of `required` flags but none of `excluded` flags set.
593593
* The members are sorted by name and signature to guarantee a stable ordering.
594594
*/
595-
private def sortedMembersBasedOnFlags(tp: Type, required: Flags.Flag, excluded: Flags.FlagSet): List[Symbol] = {
595+
private def sortedMembersBasedOnFlags(tp: Type, required: Flag, excluded: FlagSet): List[Symbol] = {
596596
// The output of `memberNames` is a Set, sort it to guarantee a stable ordering.
597597
val names = tp.memberNames(takeAllFilter).toSeq.sorted
598598
val buffer = mutable.ListBuffer[Symbol]()
@@ -667,7 +667,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
667667
* must-single-thread
668668
*/
669669
def genMirrorClass(moduleClass: Symbol, cunit: CompilationUnit): asm.tree.ClassNode = {
670-
assert(moduleClass.is(Flags.ModuleClass))
670+
assert(moduleClass.is(ModuleClass))
671671
assert(moduleClass.companionClass == NoSymbol, moduleClass)
672672
innerClassBufferASM.clear()
673673
this.cunit = cunit
@@ -690,7 +690,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
690690
null /* SourceDebugExtension */)
691691
}
692692

693-
val ssa = None // getAnnotPickle(mirrorName, if (moduleClass.is(Flags.Module)) moduleClass.companionClass else moduleClass.companionModule)
693+
val ssa = None // getAnnotPickle(mirrorName, if (moduleClass.is(Module)) moduleClass.companionClass else moduleClass.companionModule)
694694
mirrorClass.visitAttribute(if (ssa.isDefined) pickleMarkerLocal else pickleMarkerForeign)
695695
emitAnnotations(mirrorClass, moduleClass.annotations ++ ssa)
696696

@@ -892,7 +892,7 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
892892
}
893893

894894
wrap {
895-
if (sym.is(Flags.Method)) {
895+
if (sym.is(Method)) {
896896
CheckClassAdapter.checkMethodSignature(sig)
897897
}
898898
else if (sym.isTerm) {
@@ -914,9 +914,9 @@ trait BCodeHelpers extends BCodeIdiomatic with BytecodeWriters {
914914
// generic information could disappear as a consequence of a seemingly
915915
// unrelated change.
916916
ctx.base.settings.YnoGenericSig.value
917-
|| sym.is(Flags.Artifact)
918-
|| sym.isAllOf(Flags.LiftedMethod)
919-
|| sym.is(Flags.Bridge)
917+
|| sym.is(Artifact)
918+
|| sym.isAllOf(LiftedMethod)
919+
|| sym.is(Bridge)
920920
)
921921

922922
private def getStaticForwarderGenericSignature(sym: Symbol, moduleClass: Symbol): String = {

compiler/src/dotty/tools/backend/jvm/BCodeSkelBuilder.scala

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import dotty.tools.dotc.ast.tpd
1313
import dotty.tools.dotc.CompilationUnit
1414
import dotty.tools.dotc.core.Annotations.Annotation
1515
import dotty.tools.dotc.core.Decorators._
16-
import dotty.tools.dotc.core.Flags
16+
import dotty.tools.dotc.core.Flags._
1717
import dotty.tools.dotc.core.StdNames.str
1818
import dotty.tools.dotc.core.Symbols._
1919
import dotty.tools.dotc.core.Types.Type
@@ -106,7 +106,7 @@ trait BCodeSkelBuilder extends BCodeHelpers {
106106

107107
initJClass(cnode)
108108

109-
val methodSymbols = for (f <- cd.symbol.info.decls.toList if f.is(Flags.Method) && f.isTerm && !f.is(Flags.Module)) yield f
109+
val methodSymbols = for (f <- cd.symbol.info.decls.toList if f.is(Method) && f.isTerm && !f.is(Module)) yield f
110110
val hasStaticCtor = methodSymbols exists (_.isStaticConstructor)
111111
if (!hasStaticCtor) {
112112
// but needs one ...
@@ -117,7 +117,7 @@ trait BCodeSkelBuilder extends BCodeHelpers {
117117

118118
val optSerial: Option[Long] =
119119
claszSymbol.getAnnotation(defn.SerialVersionUIDAnnot).flatMap { annot =>
120-
if (claszSymbol.is(Flags.Trait)) {
120+
if (claszSymbol.is(Trait)) {
121121
ctx.error("@SerialVersionUID does nothing on a trait", annot.tree.sourcePos)
122122
None
123123
} else {
@@ -184,13 +184,13 @@ trait BCodeSkelBuilder extends BCodeHelpers {
184184

185185
} else {
186186

187-
val skipStaticForwarders = (claszSymbol.isInterface || claszSymbol.is(Flags.Module) || ctx.settings.XnoForwarders.value)
187+
val skipStaticForwarders = (claszSymbol.isInterface || claszSymbol.is(Module) || ctx.settings.XnoForwarders.value)
188188
if (!skipStaticForwarders) {
189189
val lmoc = claszSymbol.companionModule
190190
// add static forwarders if there are no name conflicts; see bugs #363 and #1735
191191
if (lmoc != NoSymbol) {
192192
// it must be a top level class (name contains no $s)
193-
val isCandidateForForwarders = (lmoc.is(Flags.Module)) && lmoc.isStatic
193+
val isCandidateForForwarders = (lmoc.is(Module)) && lmoc.isStatic
194194
if (isCandidateForForwarders) {
195195
ctx.log(s"Adding static forwarders from '$claszSymbol' to implementations in '$lmoc'")
196196
addForwarders(cnode, thisName, lmoc.moduleClass)
@@ -254,11 +254,11 @@ trait BCodeSkelBuilder extends BCodeHelpers {
254254
* backend emits them as static).
255255
* No code is needed for this module symbol.
256256
*/
257-
for (f <- claszSymbol.info.decls.filter(p => p.isTerm && !p.is(Flags.Method))) {
257+
for (f <- claszSymbol.info.decls.filter(p => p.isTerm && !p.is(Method))) {
258258
val javagensig = getGenericSignature(f, claszSymbol)
259259
val flags = javaFieldFlags(f)
260260

261-
assert(!f.isStaticMember || !claszSymbol.isInterface || !f.is(Flags.Mutable),
261+
assert(!f.isStaticMember || !claszSymbol.isInterface || !f.is(Mutable),
262262
s"interface $claszSymbol cannot have non-final static field $f")
263263

264264
val jfield = new asm.tree.FieldNode(
@@ -305,7 +305,7 @@ trait BCodeSkelBuilder extends BCodeHelpers {
305305
*/
306306
var jumpDest: immutable.Map[ /* Labeled or LabelDef */ Symbol, asm.Label ] = null
307307
def programPoint(labelSym: Symbol): asm.Label = {
308-
assert(labelSym.is(Flags.Label), s"trying to map a non-label symbol to an asm.Label, at: ${labelSym.span}")
308+
assert(labelSym.is(Label), s"trying to map a non-label symbol to an asm.Label, at: ${labelSym.span}")
309309
jumpDest.getOrElse(labelSym, {
310310
val pp = new asm.Label
311311
jumpDest += (labelSym -> pp)
@@ -388,7 +388,7 @@ trait BCodeSkelBuilder extends BCodeHelpers {
388388
*/
389389
def makeLocal(tk: BType, name: String, tpe: Type, pos: Span): Symbol = {
390390

391-
val locSym = ctx.newSymbol(methSymbol, name.toTermName, Flags.Synthetic, tpe, NoSymbol, pos)
391+
val locSym = ctx.newSymbol(methSymbol, name.toTermName, Synthetic, tpe, NoSymbol, pos)
392392
makeLocal(locSym, tk)
393393
locSym
394394
}
@@ -404,7 +404,7 @@ trait BCodeSkelBuilder extends BCodeHelpers {
404404

405405
private def makeLocal(sym: Symbol, tk: BType): Local = {
406406
assert(nxtIdx != -1, "not a valid start index")
407-
val loc = Local(tk, sym.javaSimpleName, nxtIdx, sym.is(Flags.Synthetic))
407+
val loc = Local(tk, sym.javaSimpleName, nxtIdx, sym.is(Synthetic))
408408
val existing = slots.put(sym, loc)
409409
if (existing.isDefined)
410410
ctx.error("attempt to create duplicate local var.", ctx.source.atSpan(sym.span))
@@ -565,7 +565,7 @@ trait BCodeSkelBuilder extends BCodeHelpers {
565565
}
566566

567567
val isNative = methSymbol.hasAnnotation(NativeAttr)
568-
val isAbstractMethod = (methSymbol.is(Flags.Deferred) || (methSymbol.owner.isInterface && ((methSymbol.is(Flags.Deferred)) || methSymbol.isClassConstructor)))
568+
val isAbstractMethod = (methSymbol.is(Deferred) || (methSymbol.owner.isInterface && ((methSymbol.is(Deferred)) || methSymbol.isClassConstructor)))
569569
val flags = GenBCodeOps.mkFlags(
570570
javaFlags(methSymbol),
571571
if (isAbstractMethod) asm.Opcodes.ACC_ABSTRACT else 0,

0 commit comments

Comments
 (0)