{
  "module": "Test",
  "kind": "Linearity Error",
  "text": [
    { "type": "text", "content": "The variable " },
    { "type": "code", "content": "r" },
    {
      "type": "text",
      "content": " is used inconsistently in the branches of "
    },
    { "type": "text", "content": "an if" },
    { "type": "text", "content": " statement. In one branch it is " },
    { "type": "text", "content": "not yet consumed" },
    { "type": "text", "content": " while in the other it is " },
    { "type": "text", "content": "consumed" },
    { "type": "text", "content": "." }
  ],
  "span": {
    "filename": "test-programs/suites/006-linearity/005-if-false/Test.aum",
    "startp": { "line": 8, "column": 8 },
    "end": { "line": 12, "column": 15 }
  },
  "context": [
    [ 6, "    function main(): ExitCode is" ],
    [ 7, "        let r: R := R(x => 32);" ],
    [ 8, "        if true then" ],
    [ 9, "            skip;" ],
    [ 10, "        else" ],
    [ 11, "            let { x: Int32 } := r;" ],
    [ 12, "        end if;" ],
    [ 13, "        return ExitSuccess();" ],
    [ 14, "    end;" ]
  ]
}