[clang-tools-extra] Calculate symbol tags Overrides and Implements (PR #181997)

via cfe-commits cfe-commits at lists.llvm.org
Wed Feb 18 03:56:24 PST 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

* 3120 tests passed
* 7 tests skipped
* 1 test failed

## Failed Tests
(click on a test name to see its output)

### Clangd
<details>
<summary>Clangd.Clangd/symbol-tags.test</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 3
clangd -lit-test < /home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clangd/test/symbol-tags.test | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clangd/test/symbol-tags.test
# executed command: clangd -lit-test
# .---command stderr------------
# | I[11:42:35.669] clangd version 23.0.0git (https://github.com/llvm/llvm-project f7362d98c6e75632de8a8ea2d48fe058d7fd3e95)
# | I[11:42:35.670] Features: linux+debug
# | I[11:42:35.670] PID: 232705
# | I[11:42:35.670] Working directory: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/clang/tools/extra/clangd/test
# | I[11:42:35.670] argv[0]: clangd
# | I[11:42:35.670] argv[1]: -lit-test
# | I[11:42:35.670] Starting LSP over stdin/stdout
# | V[11:42:35.670] <<< {
# |   "id": 0,
# |   "jsonrpc": "2.0",
# |   "method": "initialize",
# |   "params": {
# |     "capabilities": {
# |       "textDocument": {
# |         "documentSymbol": {
# |           "hierarchicalDocumentSymbolSupport": true
# |         }
# |       },
# |       "workspace": {
# |         "symbol": {
# |           "symbolKind": {
# |             "valueSet": [
# |               1,
# |               2,
# |               3,
# |               4,
# |               5,
# |               6,
# |               7,
# |               8,
# |               9,
# |               10,
# |               11,
# |               12,
# |               13,
# |               14,
# |               15,
# |               16,
# |               17,
# |               18,
# |               19,
# |               20,
# |               21,
# |               22,
# |               23,
# |               24,
# |               25,
# |               26
# |             ]
# |           }
# |         }
# |       }
# |     },
# |     "processId": 123,
# |     "rootPath": "clangd",
# |     "trace": "off"
# |   }
# | }
# | 
# | I[11:42:35.670] <-- initialize(0)
# | I[11:42:35.670] --> reply:initialize(0) 0 ms
# | V[11:42:35.670] >>> {
# |   "id": 0,
# |   "jsonrpc": "2.0",
# |   "result": {
# |     "capabilities": {
# |       "astProvider": true,
# |       "callHierarchyProvider": true,
# |       "clangdInlayHintsProvider": true,
# |       "codeActionProvider": true,
# |       "compilationDatabase": {
# |         "automaticReload": true
# |       },
# |       "completionProvider": {
# |         "resolveProvider": false,
# |         "triggerCharacters": [
# |           ".",
# |           "<",
# |           ">",
# |           ":",
# |           "\"",
# |           "/",
# |           "*"
# |         ]
# |       },
# |       "declarationProvider": true,
# |       "definitionProvider": true,
# |       "documentFormattingProvider": true,
# |       "documentHighlightProvider": true,
# |       "documentLinkProvider": {
# |         "resolveProvider": false
# |       },
# |       "documentOnTypeFormattingProvider": {
# |         "firstTriggerCharacter": "\n",
# |         "moreTriggerCharacter": []
# |       },
# |       "documentRangeFormattingProvider": {
# |         "rangesSupport": true
# |       },
# |       "documentSymbolProvider": true,
# |       "executeCommandProvider": {
# |         "commands": [
# |           "clangd.applyFix",
# |           "clangd.applyRename",
# |           "clangd.applyTweak"
# |         ]
# |       },
# |       "foldingRangeProvider": true,
# |       "hoverProvider": true,
# |       "implementationProvider": true,
# |       "inactiveRegionsProvider": true,
# |       "inlayHintProvider": true,
# |       "memoryUsageProvider": true,
# |       "referencesProvider": true,
# |       "renameProvider": true,
# |       "selectionRangeProvider": true,
# |       "semanticTokensProvider": {
# |         "full": {
# |           "delta": true
# |         },
# |         "legend": {
# |           "tokenModifiers": [
# |             "declaration",
# |             "definition",
# |             "deprecated",
# |             "deduced",
# |             "readonly",
# |             "static",
# |             "abstract",
# |             "virtual",
# |             "dependentName",
# |             "defaultLibrary",
# |             "usedAsMutableReference",
# |             "usedAsMutablePointer",
# |             "constructorOrDestructor",
# |             "userDefined",
# |             "functionScope",
# |             "classScope",
# |             "fileScope",
# |             "globalScope"
# |           ],
# |           "tokenTypes": [
# |             "variable",
# |             "variable",
# |             "parameter",
# |             "function",
# |             "method",
# |             "function",
# |             "property",
# |             "variable",
# |             "class",
# |             "interface",
# |             "enum",
# |             "enumMember",
# |             "type",
# |             "type",
# |             "unknown",
# |             "namespace",
# |             "typeParameter",
# |             "concept",
# |             "type",
# |             "macro",
# |             "modifier",
# |             "operator",
# |             "bracket",
# |             "label",
# |             "comment"
# |           ]
# |         },
# |         "range": false
# |       },
# |       "signatureHelpProvider": {
# |         "triggerCharacters": [
# |           "(",
# |           ")",
# |           "{",
# |           "}",
# |           "<",
# |           ">",
# |           ","
# |         ]
# |       },
# |       "standardTypeHierarchyProvider": true,
# |       "textDocumentSync": {
# |         "change": 2,
# |         "openClose": true,
# |         "save": true
# |       },
# |       "typeDefinitionProvider": true,
# |       "typeHierarchyProvider": true,
# |       "workspaceSymbolProvider": true
# |     },
# |     "serverInfo": {
# |       "name": "clangd",
# |       "version": "clangd version 23.0.0git (https://github.com/llvm/llvm-project f7362d98c6e75632de8a8ea2d48fe058d7fd3e95) linux+debug x86_64-unknown-linux-gnu"
# |     }
# |   }
# | }
# | 
# | V[11:42:35.670] <<< {
# |   "jsonrpc": "2.0",
# |   "method": "textDocument/didOpen",
# |   "params": {
# |     "textDocument": {
# |       "languageId": "cpp",
# |       "text": "class A {\n virtual void f() const = 0;\n};",
# |       "uri": "test:///main.cpp",
# |       "version": 1
# |     }
# |   }
# | }
# | 
# | I[11:42:35.670] <-- textDocument/didOpen
# | I[11:42:35.671] Failed to find compilation database for /clangd-test/main.cpp
# | I[11:42:35.671] ASTWorker building file /clangd-test/main.cpp version 1 with command clangd fallback
# | [/clangd-test]
# | /opt/llvm/bin/clang -resource-dir=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23 -- /clangd-test/main.cpp
# | E[11:42:35.671] VFS: failed to set CWD to /clangd-test: No such file or directory
# | V[11:42:35.673] Driver produced command: cc1 -cc1 -triple x86_64-unknown-linux-gnu -fsyntax-only -disable-free -clear-ast-before-backend -main-file-name main.cpp -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -fdebug-compilation-dir=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/clang/tools/extra/clangd/test -fcoverage-compilation-dir=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/clang/tools/extra/clangd/test -resource-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/x86_64-linux-gnu/c++/13 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/backward -internal-isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/13/../../../../x86_64-linux-gnu/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdeprecated-macro -ferror-limit 19 -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fcxx-exceptions -fexceptions -no-round-trip-args -faddrsig -fdwarf2-cfi-asm -x c++ /clangd-test/main.cpp
# | V[11:42:35.673] Building first preamble for /clangd-test/main.cpp version 1
# | E[11:42:35.673] VFS: failed to set CWD to /clangd-test: No such file or directory
# | I[11:42:35.817] Built preamble of size 248776 for file /clangd-test/main.cpp version 1 in 0.14 seconds
# | V[11:42:35.817] indexed preamble AST for /clangd-test/main.cpp version 1:
# |   symbol slab: 0 symbols, 120 bytes
# |   ref slab: 0 symbols, 0 refs, 128 bytes
# |   relations slab: 0 relations, 24 bytes
# | E[11:42:35.818] VFS: failed to set CWD to /clangd-test: No such file or directory
# | V[11:42:35.828] indexed file AST for /clangd-test/main.cpp version 1:
# |   symbol slab: 2 symbols, 4680 bytes
# |   ref slab: 2 symbols, 2 refs, 4272 bytes
# |   relations slab: 0 relations, 24 bytes
# | V[11:42:35.828] Build dynamic index for main-file symbols with estimated memory usage of 12040 bytes
# | I[11:42:35.828] --> textDocument/publishDiagnostics
# | V[11:42:35.828] >>> {
# |   "jsonrpc": "2.0",
# |   "method": "textDocument/publishDiagnostics",
# |   "params": {
# |     "diagnostics": [],
# |     "uri": "file:///clangd-test/main.cpp",
# |     "version": 1
# |   }
# | }
# | 
# | V[11:42:35.828] <<< {
# |   "id": 2,
# |   "jsonrpc": "2.0",
# |   "method": "textDocument/documentSymbol",
# |   "params": {
# |     "textDocument": {
# |       "uri": "test:///main.cpp"
# |     }
# |   }
# | }
# | 
# | I[11:42:35.828] <-- textDocument/documentSymbol(2)
# | V[11:42:35.828] ASTWorker running DocumentSymbols on version 1 of /clangd-test/main.cpp
# | I[11:42:35.828] --> reply:textDocument/documentSymbol(2) 0 ms
# | V[11:42:35.828] >>> {
# |   "id": 2,
# |   "jsonrpc": "2.0",
# |   "result": [
# |     {
# |       "children": [
# |         {
# |           "detail": "void () const",
# |           "kind": 6,
# |           "name": "f",
# |           "range": {
# |             "end": {
# |               "character": 27,
# |               "line": 1
# |             },
# |             "start": {
# |               "character": 1,
# |               "line": 1
# |             }
# |           },
# |           "selectionRange": {
# |             "end": {
# |               "character": 15,
# |               "line": 1
# |             },
# |             "start": {
# |               "character": 14,
# |               "line": 1
# |             }
# |           },
# |           "tags": [
# |             2,
# |             9,
# |             20
# |           ]
# |         }
# |       ],
# |       "detail": "class",
# |       "kind": 5,
# |       "name": "A",
# |       "range": {
# |         "end": {
# |           "character": 1,
# |           "line": 2
# |         },
# |         "start": {
# |           "character": 0,
# |           "line": 0
# |         }
# |       },
# |       "selectionRange": {
# |         "end": {
# |           "character": 7,
# |           "line": 0
# |         },
# |         "start": {
# |           "character": 6,
# |           "line": 0
# |         }
# |       },
# |       "tags": [
# |         9,
# |         18,
# |         19
# |       ]
# |     }
# |   ]
# | }
# | 
# | V[11:42:35.828] <<< {
# |   "id": 3,
# |   "jsonrpc": "2.0",
# |   "method": "shutdown"
# | }
# | 
# | I[11:42:35.828] <-- shutdown(3)
# | I[11:42:35.828] --> reply:shutdown(3) 0 ms
# | V[11:42:35.828] >>> {
# |   "id": 3,
# |   "jsonrpc": "2.0",
# |   "result": null
# | }
# | 
# | V[11:42:35.828] <<< {
# |   "jsonrpc": "2.0",
# |   "method": "exit"
# | }
# | 
# | I[11:42:35.828] <-- exit
# | I[11:42:35.828] LSP finished, exiting with status 0
# `-----------------------------
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clangd/test/symbol-tags.test
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clangd/test/symbol-tags.test:44:10: error: CHECK: expected string not found in input
# | # CHECK: 15,
# |          ^
# | <stdin>:183:4: note: scanning from here
# |  9,
# |    ^
# | <stdin>:189:10: note: possible intended match here
# |  "kind": 5,
# |          ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/clang-tools-extra/clangd/test/symbol-tags.test
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |           178:  "line": 1 
# |           179:  } 
# |           180:  }, 
# |           181:  "tags": [ 
# |           182:  2, 
# |           183:  9, 
# | check:44'0        X error: no match found
# |           184:  20 
# | check:44'0     ~~~~
# |           185:  ] 
# | check:44'0     ~~~
# |           186:  } 
# | check:44'0     ~~~
# |           187:  ], 
# | check:44'0     ~~~~
# |           188:  "detail": "class", 
# | check:44'0     ~~~~~~~~~~~~~~~~~~~~
# |           189:  "kind": 5, 
# | check:44'0     ~~~~~~~~~~~~
# | check:44'1              ?   possible intended match
# |           190:  "name": "A", 
# | check:44'0     ~~~~~~~~~~~~~~
# |           191:  "range": { 
# | check:44'0     ~~~~~~~~~~~~
# |           192:  "end": { 
# | check:44'0     ~~~~~~~~~~
# |           193:  "character": 1, 
# | check:44'0     ~~~~~~~~~~~~~~~~~
# |           194:  "line": 2 
# | check:44'0     ~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/181997


More information about the cfe-commits mailing list