diff options
author | buraq <buraq@epfl.ch> | 2004-04-03 11:44:49 +0000 |
---|---|---|
committer | buraq <buraq@epfl.ch> | 2004-04-03 11:44:49 +0000 |
commit | 9278a377fd6ca500bc6a6cdedf21eb876ecbcfbc (patch) | |
tree | 1a92bd1414709b3aa758fa26bd6f460b8a0ed8ae | |
parent | 41872ffb3ba0ab406ffd853acaa66adf9ef636ba (diff) | |
download | scala-9278a377fd6ca500bc6a6cdedf21eb876ecbcfbc.tar.gz scala-9278a377fd6ca500bc6a6cdedf21eb876ecbcfbc.tar.bz2 scala-9278a377fd6ca500bc6a6cdedf21eb876ecbcfbc.zip |
fixed bug in attrib parsing
-rw-r--r-- | sources/scala/tools/scalac/ast/parser/MarkupParser.scala | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sources/scala/tools/scalac/ast/parser/MarkupParser.scala b/sources/scala/tools/scalac/ast/parser/MarkupParser.scala index e70f658f13..f12ae9f68b 100644 --- a/sources/scala/tools/scalac/ast/parser/MarkupParser.scala +++ b/sources/scala/tools/scalac/ast/parser/MarkupParser.scala @@ -235,11 +235,12 @@ class MarkupParser( unit:Unit, s:Scanner, p:Parser ) { while( s.xIsNameStart ) { val key = s.xName; s.xEQ; val delim = s.ch; - val value = delim match { + val value:Tree = delim match { case '"' | '\'' => val pos = s.pos; - s.xNext; val tmp = s.xAttributeValue( delim ); - s.xNext; s.xSpaceOpt; + s.xNext; + val tmp = s.xAttributeValue( delim ); + s.xNext; gen.mkStringLit( pos, tmp ) case '{' => s.xNext; @@ -257,6 +258,8 @@ class MarkupParser( unit:Unit, s:Scanner, p:Parser ) { if( aMap.contains( key )) s.xSyntaxError( "attribute "+key+" may only be defined once" ); aMap = aMap.update( key, value ); + if(( s.ch != '/' )&&( s.ch != '>' )) + s.xSpace; }; aMap } |