aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2015-10-30 17:22:01 +0100
committerMartin Odersky <odersky@gmail.com>2015-10-30 18:20:49 +0100
commitf0c2a901ad1cafe08deff2d715b1fa8d663812a3 (patch)
treea182a95b9017fe1f8c6c80ce20befc835e93d25b /src/dotty/tools/dotc
parentedfb6e72076b216c4762b52a5b9558fd9d106148 (diff)
downloaddotty-f0c2a901ad1cafe08deff2d715b1fa8d663812a3.tar.gz
dotty-f0c2a901ad1cafe08deff2d715b1fa8d663812a3.tar.bz2
dotty-f0c2a901ad1cafe08deff2d715b1fa8d663812a3.zip
Fix #879
Don't insert a constructor call when typechecking Java classes.
Diffstat (limited to 'src/dotty/tools/dotc')
-rw-r--r--src/dotty/tools/dotc/parsing/JavaParsers.scala4
-rw-r--r--src/dotty/tools/dotc/typer/Typer.scala2
2 files changed, 3 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/parsing/JavaParsers.scala b/src/dotty/tools/dotc/parsing/JavaParsers.scala
index 7b9d29ce3..2457400bb 100644
--- a/src/dotty/tools/dotc/parsing/JavaParsers.scala
+++ b/src/dotty/tools/dotc/parsing/JavaParsers.scala
@@ -145,9 +145,9 @@ object JavaParsers {
// ------------- general parsing ---------------------------
/** skip parent or brace enclosed sequence of things */
- def skipAhead(): Unit = {
+ def skipAhead(openBraces: Int = 0): Unit = {
var nparens = 0
- var nbraces = 0
+ var nbraces = openBraces
do {
in.token match {
case LPAREN =>
diff --git a/src/dotty/tools/dotc/typer/Typer.scala b/src/dotty/tools/dotc/typer/Typer.scala
index 3ca728895..569e4f7d5 100644
--- a/src/dotty/tools/dotc/typer/Typer.scala
+++ b/src/dotty/tools/dotc/typer/Typer.scala
@@ -1027,7 +1027,7 @@ class Typer extends Namer with TypeAssigner with Applications with Implicits wit
*/
def ensureConstrCall(cls: ClassSymbol, parents: List[Tree])(implicit ctx: Context): List[Tree] = {
val firstParent :: otherParents = parents
- if (firstParent.isType && !(cls is Trait))
+ if (firstParent.isType && !(cls is Trait) && !cls.is(JavaDefined))
typed(untpd.New(untpd.TypedSplice(firstParent), Nil)) :: otherParents
else parents
}