summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2014-12-08 14:34:01 +0100
committerGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2014-12-08 14:34:01 +0100
commit3115f885ff269b15eed307e5966bf2aec03904ab (patch)
tree79d886126455821d0993ab4541e7ffeff4160fa0
parenta908ded364a6f8b664c6b02552a909c143d21b19 (diff)
parent736293ab0977a79175ed025149263456526dc561 (diff)
downloadscala-3115f885ff269b15eed307e5966bf2aec03904ab.tar.gz
scala-3115f885ff269b15eed307e5966bf2aec03904ab.tar.bz2
scala-3115f885ff269b15eed307e5966bf2aec03904ab.zip
Merge pull request #4186 from som-snytt/issue/9027-backport
SI-9027 Backport xml parser fix
-rw-r--r--bincompat-backward.whitelist.conf6
-rw-r--r--bincompat-forward.whitelist.conf5
-rwxr-xr-xsrc/compiler/scala/tools/nsc/ast/parser/MarkupParsers.scala11
3 files changed, 16 insertions, 6 deletions
diff --git a/bincompat-backward.whitelist.conf b/bincompat-backward.whitelist.conf
index 2d3c20370d..5ddad1fbf0 100644
--- a/bincompat-backward.whitelist.conf
+++ b/bincompat-backward.whitelist.conf
@@ -100,6 +100,12 @@ filter {
{
matchName="scala.reflect.runtime.SymbolLoaders.isInvalidClassName"
problemName=MissingMethodProblem
+ },
+
+ {
+ matchName="scala.xml.dtd.ElementValidator.scala$xml$dtd$ElementValidator$$find$2"
+ problemName=IncompatibleMethTypeProblem
}
]
}
+
diff --git a/bincompat-forward.whitelist.conf b/bincompat-forward.whitelist.conf
index d8a91f3ae8..c9cf4f74b9 100644
--- a/bincompat-forward.whitelist.conf
+++ b/bincompat-forward.whitelist.conf
@@ -182,6 +182,11 @@ filter {
# only accessible from util.parsing.combinator package
matchName="scala.util.parsing.combinator.SubSequence"
problemName=MissingClassProblem
+ },
+
+ {
+ matchName="scala.xml.dtd.ElementValidator.scala$xml$dtd$ElementValidator$$find$2"
+ problemName=IncompatibleMethTypeProblem
}
]
}
diff --git a/src/compiler/scala/tools/nsc/ast/parser/MarkupParsers.scala b/src/compiler/scala/tools/nsc/ast/parser/MarkupParsers.scala
index 553a2088a6..a27bf6bea2 100755
--- a/src/compiler/scala/tools/nsc/ast/parser/MarkupParsers.scala
+++ b/src/compiler/scala/tools/nsc/ast/parser/MarkupParsers.scala
@@ -349,13 +349,12 @@ trait MarkupParsers {
content_LT(ts)
// parse more XML ?
- if (charComingAfter(xSpaceOpt) == '<') {
- xSpaceOpt
- while (ch == '<') {
- nextch
+ if (charComingAfter(xSpaceOpt()) == '<') {
+ do {
+ xSpaceOpt()
+ nextch()
ts append element
- xSpaceOpt
- }
+ } while (charComingAfter(xSpaceOpt()) == '<')
handle.makeXMLseq(r2p(start, start, curOffset), ts)
}
else {