diff options
author | buraq <buraq@epfl.ch> | 2004-06-25 17:29:50 +0000 |
---|---|---|
committer | buraq <buraq@epfl.ch> | 2004-06-25 17:29:50 +0000 |
commit | d4e3c78e738e37a0ba5fa5eb8b5196a8556d2c53 (patch) | |
tree | eda1c098f09aa6283333550d05a86d541a030f6a /sources/scalac | |
parent | f3129f0da6487fd6a33fc40ee1d19a1c6c5de06b (diff) | |
download | scala-d4e3c78e738e37a0ba5fa5eb8b5196a8556d2c53.tar.gz scala-d4e3c78e738e37a0ba5fa5eb8b5196a8556d2c53.tar.bz2 scala-d4e3c78e738e37a0ba5fa5eb8b5196a8556d2c53.zip |
namespaces
Diffstat (limited to 'sources/scalac')
-rw-r--r-- | sources/scalac/transformer/matching/BerrySethi.java | 7 | ||||
-rw-r--r-- | sources/scalac/transformer/matching/Label.java | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/sources/scalac/transformer/matching/BerrySethi.java b/sources/scalac/transformer/matching/BerrySethi.java index a97552702a..9e9186e1f8 100644 --- a/sources/scalac/transformer/matching/BerrySethi.java +++ b/sources/scalac/transformer/matching/BerrySethi.java @@ -1,3 +1,5 @@ +/** $Id */ + package scalac.transformer.matching ; import scalac.Unit ; @@ -365,16 +367,19 @@ class BerrySethi { this.posMap.put( pat, i ); this.labelAt.put( i, label ); if( label != Label.DefaultLabel ) { + /* if( this.labels.contains( label ) ) { switch(label) { case TreeLabel(Apply(_, Tree[] args)): if( args.length > 0 ) { - unit.error(pat.pos, "sorry, this version of scalac cannot handle this pattern correctly"); + unit.warning(pat.pos, "if this pattern in nondeterminism, it will not compile correctly"); } } } + */ this.labels.add( label ); } + } /** overriden in BindingBerrySethi diff --git a/sources/scalac/transformer/matching/Label.java b/sources/scalac/transformer/matching/Label.java index f03321cb22..30a105dec4 100644 --- a/sources/scalac/transformer/matching/Label.java +++ b/sources/scalac/transformer/matching/Label.java @@ -31,7 +31,7 @@ public class Label { return lit.value.hashCode(); case TreeLabel( Tree pat ): // if pat is an Apply, than this case can only be correctly - // handled if it has no arguments...or there are no collisions + // handled there are no other similar Applys (nondeterminism) return pat.type().hashCode(); case TypeLabel( Type type ): return type.hashCode(); |