diff options
author | Paul Phillips <paulp@improving.org> | 2012-11-24 01:40:12 -0800 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2012-11-24 01:43:23 -0800 |
commit | 3177934fc157bb5e37797c87d20a25e2ff0311d1 (patch) | |
tree | 54177269c9fbcd4d95b3bfb6c99390f2ad478bfa /src/compiler | |
parent | b02e95288b35486eab1b1dd67934e3097fa2719f (diff) | |
download | scala-3177934fc157bb5e37797c87d20a25e2ff0311d1.tar.gz scala-3177934fc157bb5e37797c87d20a25e2ff0311d1.tar.bz2 scala-3177934fc157bb5e37797c87d20a25e2ff0311d1.zip |
Mark pattern matcher synthetics as SYNTHETIC.
Flagging synthetics accurately is important to allow for
useful static analysis.
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/UnCurry.scala | 2 | ||||
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/PatternMatching.scala | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/UnCurry.scala b/src/compiler/scala/tools/nsc/transform/UnCurry.scala index f6b55b6606..529009a058 100644 --- a/src/compiler/scala/tools/nsc/transform/UnCurry.scala +++ b/src/compiler/scala/tools/nsc/transform/UnCurry.scala @@ -369,7 +369,7 @@ abstract class UnCurry extends InfoTransform } val isDefinedAtMethodDef = { - val methSym = anonClass.newMethod(nme.isDefinedAt, fun.pos, FINAL) + val methSym = anonClass.newMethod(nme.isDefinedAt, fun.pos, FINAL | SYNTHETIC) val params = methSym newSyntheticValueParams formals methSym setInfoAndEnter MethodType(params, BooleanClass.tpe) diff --git a/src/compiler/scala/tools/nsc/typechecker/PatternMatching.scala b/src/compiler/scala/tools/nsc/typechecker/PatternMatching.scala index d73460f7e3..a8f471a396 100644 --- a/src/compiler/scala/tools/nsc/typechecker/PatternMatching.scala +++ b/src/compiler/scala/tools/nsc/typechecker/PatternMatching.scala @@ -1405,7 +1405,7 @@ trait PatternMatching extends Transform with TypingTransformers with ast.TreeDSL // assert(owner ne null); assert(owner ne NoSymbol) def freshSym(pos: Position, tp: Type = NoType, prefix: String = "x") = - NoSymbol.newTermSymbol(freshName(prefix), pos) setInfo tp + NoSymbol.newTermSymbol(freshName(prefix), pos, newFlags = SYNTHETIC) setInfo tp def newSynthCaseLabel(name: String) = NoSymbol.newLabel(freshName(name), NoPosition) setFlag treeInfo.SYNTH_CASE_FLAGS |