Skip to content

Commit 500deff

Browse files
committed
Fix start position of tag
Caret is at open bracket. Forward port scala/scala@85136e3
1 parent 8462122 commit 500deff

File tree

3 files changed

+11
-11
lines changed

3 files changed

+11
-11
lines changed

compiler/src/dotty/tools/dotc/parsing/xml/MarkupParsers.scala

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ object MarkupParsers {
170170
}
171171

172172
def xUnparsed: Tree = {
173-
val start = curOffset
173+
val start = curOffset - 1
174174
xTakeUntil(handle.unparsed, () => Span(start, curOffset, start), "</xml:unparsed>")
175175
}
176176

@@ -276,7 +276,7 @@ object MarkupParsers {
276276
* | xmlTag1 '/' '>'
277277
*/
278278
def element: Tree = {
279-
val start = curOffset
279+
val start = curOffset - 1
280280
val (qname, attrMap) = xTag(())
281281
if (ch == '/') { // empty element
282282
xToken("/>")
@@ -363,7 +363,7 @@ object MarkupParsers {
363363
handle.isPattern = false
364364

365365
val ts = new ArrayBuffer[Tree]
366-
val start = curOffset
366+
val start = curOffset - 1
367367
content_LT(ts)
368368

369369
// parse more XML?
@@ -433,7 +433,7 @@ object MarkupParsers {
433433
* | Name [S] '/' '>'
434434
*/
435435
def xPattern: Tree = {
436-
var start = curOffset
436+
val start = curOffset - 1
437437
val qname = xName
438438
debugLastStartElement = (start, qname) :: debugLastStartElement
439439
xSpaceOpt()

tests/neg/t2275a.scala

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
object Test {
2+
if (true) {
3+
<br> // error maybe this tag isn't closed
4+
}else{ // error // error in XML content, use double brace
5+
<span>{"louenesee"}</span>
6+
}
7+
} // anypos-error

tests/untried/neg/t2275a.scala

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)