on master help sign in
Fix some offset problems when parsing GLSL
commit38fdd8acdffd86f5d26a1f31b5ce1590ffd41062 authorEvan Czaplicki <evancz@users.noreply.github.com> dateFri 3 May 2019, 14:25 (7 years ago) parent12f395e
1 file changed+4−4
compiler/src/Parse/Shader.hs+4−4
compiler/src/Parse/Shader.hs+4−4
@@ -58,14 +58,14 @@ parseBlock =
5858 then
5959 let
6060 (# status, newPos, newRow, newCol #) =
61− eatShader pos6 end row col
61+ eatShader pos6 end row (col + 6)
6262 in
6363 case status of
6464 Good ->
6565 let
66− !block = Utf8.fromPtr pos newPos
66+ !block = Utf8.fromPtr pos6 newPos
6767 !source = Utf8.toChars block
68− !newState = P.State (plusPtr newPos 2) end indent newRow newCol
68+ !newState = P.State (plusPtr newPos 2) end indent newRow (newCol + 2)
6969 in
7070 cok source newState
7171
@@ -89,7 +89,7 @@ eatShader pos end row col =
8989 else
9090 let !word = P.unsafeIndex pos in
9191 if word == 0x007C {- | -} && P.isWord (plusPtr pos 1) end 0x5D {- ] -} then
92− (# Good, pos, row, col + 2 #)
92+ (# Good, pos, row, col #)
9393
9494 else if word == 0x0A {- \n -} then
9595 eatShader (plusPtr pos 1) end (row + 1) 1