diff options
author | Martin Odersky <odersky@gmail.com> | 2007-03-12 12:03:59 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2007-03-12 12:03:59 +0000 |
commit | 31af03b80e39f171033453ccd5fec7a3d7bf152a (patch) | |
tree | d38aac13cd1589e7230888386a6b9bade3148b52 /src | |
parent | d8448a3b19b7e3c307b665189457bd65445ff4e7 (diff) | |
download | scala-31af03b80e39f171033453ccd5fec7a3d7bf152a.tar.gz scala-31af03b80e39f171033453ccd5fec7a3d7bf152a.tar.bz2 scala-31af03b80e39f171033453ccd5fec7a3d7bf152a.zip |
fixed bugs 987/988
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/ast/parser/Parsers.scala | 2 | ||||
-rw-r--r-- | src/compiler/scala/tools/nsc/symtab/Types.scala | 2 |
2 files changed, 3 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 fadd37f66c..0cb0babfcf 100644 --- a/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala +++ b/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala @@ -972,7 +972,7 @@ trait Parsers requires SyntaxAnalyzer { val topinfo = opstack.head opstack = opstack.tail return Select( - reduceStack(true, base, topinfo.operand, 0, true), + stripParens(reduceStack(true, base, topinfo.operand, 0, true)), topinfo.operator.encode).setPos(topinfo.pos) } } diff --git a/src/compiler/scala/tools/nsc/symtab/Types.scala b/src/compiler/scala/tools/nsc/symtab/Types.scala index 01000dd7b2..546d650ce4 100644 --- a/src/compiler/scala/tools/nsc/symtab/Types.scala +++ b/src/compiler/scala/tools/nsc/symtab/Types.scala @@ -1083,6 +1083,8 @@ trait Types requires SymbolTable { closureDepthCache = maxDepth(closureCache) } } + if (closureCache eq null) + throw new TypeError("illegal cyclic reference involving " + sym) closureCache } |