brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.9 KiB · 7a59131 Raw
146 lines · plain
1# RUN: clangd -lit-test < %s | FileCheck -strict-whitespace %s2{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":123,"rootPath":"clangd","capabilities":{"textDocument":{"codeAction":{"codeActionLiteralSupport":{}}},"workspace":{"workspaceEdit":{"documentChanges":true}}},"trace":"off"}}3---4{"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"test:///foo.c","languageId":"c","version":1,"text":"int main(int i, char **a) { if (i = 2) {}}"}}}5#      CHECK:    "method": "textDocument/publishDiagnostics",6# CHECK-NEXT:  "params": {7# CHECK-NEXT:    "diagnostics": [8# CHECK-NEXT:      {9# CHECK-NEXT:        "code": "-Wparentheses",10# CHECK-NEXT:        "message": "Using the result of an assignment as a condition without parentheses (fixes available)",11# CHECK-NEXT:        "range": {12# CHECK-NEXT:          "end": {13# CHECK-NEXT:            "character": 37,14# CHECK-NEXT:            "line": 015# CHECK-NEXT:          },16# CHECK-NEXT:          "start": {17# CHECK-NEXT:            "character": 32,18# CHECK-NEXT:            "line": 019# CHECK-NEXT:          }20# CHECK-NEXT:        },21# CHECK-NEXT:        "severity": 2,22# CHECK-NEXT:        "source": "clang"23# CHECK-NEXT:      }24# CHECK-NEXT:    ],25# CHECK-NEXT:    "uri": "file://{{.*}}/foo.c",26# CHECK-NEXT:    "version": 127# CHECK-NEXT:  }28---29{"jsonrpc":"2.0","id":2,"method":"textDocument/codeAction","params":{"textDocument":{"uri":"test:///foo.c"},"range":{"start":{"line":0,"character":13},"end":{"line":0,"character":35}},"context":{"diagnostics":[{"range":{"start": {"line": 0, "character": 32}, "end": {"line": 0, "character": 37}},"severity":2,"message":"Using the result of an assignment as a condition without parentheses (fixes available)", "code": "-Wparentheses", "source": "clang"}]}}}30#      CHECK:  "id": 2,31# CHECK-NEXT:  "jsonrpc": "2.0",32# CHECK-NEXT:  "result": [33# CHECK-NEXT:    {34# CHECK-NEXT:      "diagnostics": [35# CHECK-NEXT:        {36# CHECK-NEXT:          "code": "-Wparentheses",37# CHECK-NEXT:          "message": "Using the result of an assignment as a condition without parentheses (fixes available)",38# CHECK-NEXT:          "range": {39# CHECK-NEXT:            "end": {40# CHECK-NEXT:              "character": 37,41# CHECK-NEXT:              "line": 042# CHECK-NEXT:            },43# CHECK-NEXT:            "start": {44# CHECK-NEXT:              "character": 32,45# CHECK-NEXT:              "line": 046# CHECK-NEXT:            }47# CHECK-NEXT:          },48# CHECK-NEXT:          "severity": 2,49# CHECK-NEXT:          "source": "clang"50# CHECK-NEXT:        }51# CHECK-NEXT:      ],52# CHECK-NEXT:      "edit": {53# CHECK-NEXT:        "documentChanges": [54# CHECK-NEXT:          {55# CHECK-NEXT:            "edits": [56# CHECK-NEXT:              {57# CHECK-NEXT:                "newText": "(",58# CHECK-NEXT:                "range": {59# CHECK-NEXT:                  "end": {60# CHECK-NEXT:                    "character": 32,61# CHECK-NEXT:                    "line": 062# CHECK-NEXT:                  },63# CHECK-NEXT:                  "start": {64# CHECK-NEXT:                    "character": 32,65# CHECK-NEXT:                    "line": 066# CHECK-NEXT:                  }67# CHECK-NEXT:                }68# CHECK-NEXT:              },69# CHECK-NEXT:              {70# CHECK-NEXT:                "newText": ")",71# CHECK-NEXT:                "range": {72# CHECK-NEXT:                  "end": {73# CHECK-NEXT:                    "character": 37,74# CHECK-NEXT:                    "line": 075# CHECK-NEXT:                  },76# CHECK-NEXT:                  "start": {77# CHECK-NEXT:                    "character": 37,78# CHECK-NEXT:                    "line": 079# CHECK-NEXT:                  }80# CHECK-NEXT:                }81# CHECK-NEXT:              }82# CHECK-NEXT:            ],83# CHECK-NEXT:            "textDocument": {84# CHECK-NEXT:              "uri": "file://{{.*}}/foo.c",85# CHECK-NEXT:              "version": 186# CHECK-NEXT:            }87# CHECK-NEXT:          }88# CHECK-NEXT:        ]89# CHECK-NEXT:      },90# CHECK-NEXT:      "kind": "quickfix",91# CHECK-NEXT:      "title": "place parentheses around the assignment to silence this warning"92# CHECK-NEXT:    },93# CHECK-NEXT:    {94# CHECK-NEXT:      "diagnostics": [95# CHECK-NEXT:        {96# CHECK-NEXT:          "code": "-Wparentheses",97# CHECK-NEXT:          "message": "Using the result of an assignment as a condition without parentheses (fixes available)",98# CHECK-NEXT:          "range": {99# CHECK-NEXT:            "end": {100# CHECK-NEXT:              "character": 37,101# CHECK-NEXT:              "line": 0102# CHECK-NEXT:            },103# CHECK-NEXT:            "start": {104# CHECK-NEXT:              "character": 32,105# CHECK-NEXT:              "line": 0106# CHECK-NEXT:            }107# CHECK-NEXT:          },108# CHECK-NEXT:          "severity": 2,109# CHECK-NEXT:          "source": "clang"110# CHECK-NEXT:        }111# CHECK-NEXT:      ],112# CHECK-NEXT:      "edit": {113# CHECK-NEXT:        "documentChanges": [114# CHECK-NEXT:          {115# CHECK-NEXT:            "edits": [116# CHECK-NEXT:              {117# CHECK-NEXT:                "newText": "==",118# CHECK-NEXT:                "range": {119# CHECK-NEXT:                  "end": {120# CHECK-NEXT:                    "character": 35,121# CHECK-NEXT:                    "line": 0122# CHECK-NEXT:                  },123# CHECK-NEXT:                  "start": {124# CHECK-NEXT:                    "character": 34,125# CHECK-NEXT:                    "line": 0126# CHECK-NEXT:                  }127# CHECK-NEXT:                }128# CHECK-NEXT:              }129# CHECK-NEXT:            ],130# CHECK-NEXT:            "textDocument": {131# CHECK-NEXT:              "uri": "file://{{.*}}/foo.c",132# CHECK-NEXT:              "version": 1133# CHECK-NEXT:            }134# CHECK-NEXT:          }135# CHECK-NEXT:        ]136# CHECK-NEXT:      },137# CHECK-NEXT:      "kind": "quickfix",138# CHECK-NEXT:      "title": "use '==' to turn this assignment into an equality comparison"139# CHECK-NEXT:    }140# CHECK-NEXT:  ]141---142{"jsonrpc":"2.0","id":4,"method":"shutdown"}143---144{"jsonrpc":"2.0","method":"exit"}145 146