diff options
author | Den Shabalin <den.shabalin@gmail.com> | 2013-08-21 12:27:45 +0200 |
---|---|---|
committer | Den Shabalin <den.shabalin@gmail.com> | 2013-08-28 13:03:53 +0200 |
commit | b65d67d71c962523cca625a80553571408b2a3e6 (patch) | |
tree | 27f31b4d7b1f8fb88aa7ed1fdd8f200bb47341de /src | |
parent | a24fc60deed8fbed062ecd6ff96e434349cca75d (diff) | |
download | scala-b65d67d71c962523cca625a80553571408b2a3e6.tar.gz scala-b65d67d71c962523cca625a80553571408b2a3e6.tar.bz2 scala-b65d67d71c962523cca625a80553571408b2a3e6.zip |
deprecate early type defs
This feature is neither properly supported by Scala compiler
nor a part of the language spec and therefore should be removed.
Due to source compatiblity with 2.10 we need to deprecate it first.
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/ast/parser/Parsers.scala | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala b/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala index 94270e4cf3..e5101a27a8 100644 --- a/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala +++ b/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala @@ -2800,9 +2800,10 @@ self => case vdef @ ValDef(mods, _, _, _) if !mods.isDeferred => List(copyValDef(vdef)(mods = mods | Flags.PRESUPER)) case tdef @ TypeDef(mods, name, tparams, rhs) => + deprecationWarning(tdef.pos.point, "early type members are deprecated. Move them to the regular body: the semantics are the same.") List(treeCopy.TypeDef(tdef, mods | Flags.PRESUPER, name, tparams, rhs)) case stat if !stat.isEmpty => - syntaxError(stat.pos, "only type definitions and concrete field definitions allowed in early object initialization section", skipIt = false) + syntaxError(stat.pos, "only concrete field definitions allowed in early object initialization section", skipIt = false) List() case _ => List() } |