diff options
author | Paul Phillips <paulp@improving.org> | 2012-04-05 15:50:10 -0700 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2012-04-05 22:51:29 -0700 |
commit | 296b7061ccef8600c011140fa6fd64afec244ed0 (patch) | |
tree | 852bfad96dc8b980b18a7869640f4c400566baa5 /src/compiler/scala/tools/nsc/typechecker/Typers.scala | |
parent | 2b89c3459d1d9a9aa9dd5aba75847274d6f74129 (diff) | |
download | scala-296b7061ccef8600c011140fa6fd64afec244ed0.tar.gz scala-296b7061ccef8600c011140fa6fd64afec244ed0.tar.bz2 scala-296b7061ccef8600c011140fa6fd64afec244ed0.zip |
A boatload of work on Symbols and Flags.
Finally my dream of orderliness is within sight.
It's all pretty self-explanatory. More polymorphism, more immutable
identity, more invariants.
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/Typers.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/Typers.scala | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Typers.scala b/src/compiler/scala/tools/nsc/typechecker/Typers.scala index 36c81b09cd..76e1d40af9 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Typers.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Typers.scala @@ -1922,7 +1922,7 @@ trait Typers extends Modes with Adaptations with PatMatVirtualiser { rhs1 = checkDead(rhs1) if (!isPastTyper && meth.owner.isClass && - meth.paramss.exists(ps => ps.exists(_.hasDefaultFlag) && isRepeatedParamType(ps.last.tpe))) + meth.paramss.exists(ps => ps.exists(_.hasDefault) && isRepeatedParamType(ps.last.tpe))) StarWithDefaultError(meth) if (!isPastTyper) { @@ -2492,7 +2492,7 @@ trait Typers extends Modes with Adaptations with PatMatVirtualiser { (e.sym.isType || inBlock || (e.sym.tpe matches e1.sym.tpe) || e.sym.isMacro && e1.sym.isMacro)) // default getters are defined twice when multiple overloads have defaults. an // error for this is issued in RefChecks.checkDefaultsInOverloaded - if (!e.sym.isErroneous && !e1.sym.isErroneous && !e.sym.hasDefaultFlag && + if (!e.sym.isErroneous && !e1.sym.isErroneous && !e.sym.hasDefault && !e.sym.hasAnnotation(BridgeClass) && !e1.sym.hasAnnotation(BridgeClass)) { log("Double definition detected:\n " + ((e.sym.getClass, e.sym.info, e.sym.ownerChain)) + "\n " + @@ -3106,7 +3106,7 @@ trait Typers extends Modes with Adaptations with PatMatVirtualiser { for (sym <- names) { // make sure the flags are up to date before erroring (jvm/t3415 fails otherwise) sym.initialize - if (!sym.hasAnnotation(AnnotationDefaultAttr) && !sym.hasDefaultFlag) + if (!sym.hasAnnotation(AnnotationDefaultAttr) && !sym.hasDefault) reportAnnotationError(AnnotationMissingArgError(ann, annType, sym)) } |